Readfish Versions Save

CLI tool for flexible and fast adaptive sampling on ONT sequencers

2024.2.0

3 weeks ago

What's new

Dorado 7.3.9 support

As discussed in #347, due to the move to ont_pybasecall_client_lib by ONT with the release of Dorado 7.3.9, readfish was unable to connect to the basecall socket, as it was using ont_pyguppy_client_lib.

This release supports both connections to dorado 7.3.9 and upwards with the dorado plugin, (which also handles the new parameter sample_rate on package_reads smartly) and dorado < 7.3.9 with the guppy plugin.

To use the new plugin, simply switch the caller_settings table in your toml from .guppy to .dorado, leaving other parameters the same, like so:

[caller_settings.dorado]

MinKNOW version checking

Readfish also now lists a tested MinKNOW version range, and will raise a warning if the MinKNOW version being connected to is outside the range for the given version of readfish. However, readfish will still attempt to run adaptive sampling, and will most likely succeed! As recommended in the logged warning, if a newer version of readfish doesn't exist, we recommend opening an issue on the github.

[!WARNING] The Guppy plugin will likely be deprecated in the next major release of readfish.

What's Changed

Full Changelog: https://github.com/LooseLab/readfish/compare/2024.1.0...2024.2.0

2024.1.0

3 weeks ago

What's new

  • Implements some basic Experimental Duplex based adaptive sampling. Currently there are two modes, "Duplex simple" and "duplex", which are accessed under the --chemistry flag under the targets sub command. They both take targets in the same way that the normal target commands do. We currently do not support mixing simplex and duplex targets. duplex_simple accepts a read if the previous read seen on the channel was stop receiving and the new read isn't, duplex checks that the previous reads alignment was on the same contig and opposite strand. NB. Only duplex_simple has been tested.
  • This pull request refactors the code that the check for reads to be over-ridden, and also adds some new reasons for read decisions:
    #: Potential second half of a duplex read
    duplex_override = "duplex_override"
    #: Read sequenced as translocated portion was of unknown length at start of readfish
    first_read_override = "first_read_override"

Bug fixes

  • Don't throw an error if there are multiple suffixes on the provided .mmi file
  • --wait-on-ready actually works, and is an int, so User can specify to wait for the Sequencing state for as long as they want (default now 120s)
  • Fixes links in documentation to bulk files and adds a promethion 4KhZ R10 bulk file
  • --unblock-duration type to float, and manually specifying it was crashing argparsing

What's Changed - Associated PRs

Full Changelog: https://github.com/LooseLab/readfish/compare/2023.1.1...2024.1.0

2023.1.1

7 months ago

A small release, with a bug fix.

For major new features introduced in refactored readfish, please see https://github.com/LooseLab/readfish/releases/tag/2023.1.0.

Bug fixes

  • Fixes a bug caught by @jamesemery in #289, where regions were required to be present in a TOML file, even when the intent was to use barcoding only.

Other changes

  • Adds a Changelog, found in the docs and at the bottom of the README.
  • Minor documentation fixes to broken links and problems installing grpcio on Apple Silicon.

2023.1.0

7 months ago

Major Changes

  1. This release is a complete overhaul of the inner workings of readfish. Fundamentally nothing has changed in the way readfish works, but we have dramatically improved the compatibility with nanopore platforms, as well as supporting more compute systems including Apple Silicon.

  2. This release is compatible with all flavours of PromethION from the lonely p2solo to the gregarious P48. To do this we include a new rust based wrapper for minimap2 which enables multi-threaded mapping. The release also supports GridION and MinION. It is untested on mk1c and we don't recommend using it.

  3. This release is compatible with both guppy and dorado via the ont-pyguppy-client-lib and so introduces native support for apple silicon.

  4. We also introduce a new readfish stats module which will summarise an experiment given the TOML configuration for readfish and the path to the FASTQs from the run.

  5. The code includes all new documentation - see https://looselab.github.io/readfish - and will prevent users from making many common mistakes.

[!NOTE] Important: The TOML file specification has been modified for this version and users should update their TOML files accordingly.

This includes a description of the new plugin framework, developed by @alexomics , which will enable users to develop their own custom mappers, squiggle analysis packages and other tools and then integrate them into a common readfish environment.

In principle readfish can be used as a library by other packages.

Full information on new features can be found in the readme and associated documentation. All issues should be reported by the GitHub issue tracker and not by email to the authors.

What's Changed

  • Add unblock all script by @alexomics
  • Add github worklflow action to close stale issues by @Adoni5
  • Move logger initialisation into check that we have arguments by @Adoni5
  • Add pre commit and make all files compliant by @Adoni5
  • validation script by @alexomics
  • Switching behaviour of validate by @mattloose
  • Add readfish identifier to appear in guppy server logs by @mattloose
  • Feature/describe plugin by @Adoni5
  • Remove --chunk-log option by @alexomics
  • Implement runsafe and additional logging. by @mattloose
  • Implementing check on basecalling model in guppy plugin. This will va… by @mattloose
  • Fixes to describe by @Adoni5
  • Update _config.py to check barcodes if regions and barcodes are present. by @Adoni5
  • Enabling changes to the log for the readuntil client by tools which u… by @mattloose
  • Add readfish[mappy,guppy] as default install target by @Adoni5
  • Split mappy plugins by @alexomics
  • Feature/summarise-entry-point by @Adoni5
  • Fix-stats-macos-aarch-test by @Adoni5
  • Adding a check for the current break_reads_seconds value and testing … by @mattloose
  • Feature/logging-stats-padding by @Adoni5

No take backsies (for real)

NBT/paper-release

7 months ago

This release archives the code used in the Nature Biotech readfish paper.

[!IMPORTANT]
The README contains instructions on running this set of code, however many of the tools at the given versions, such as ont-pyguppy-client-lib will no longer work with modern MinKNOW. We recommend you use the most up to date readfish, found here https://github.com/LooseLab/readfish/.

BossRuns/V0.0.2

1 year ago

This version of ReadFish contains the updated BossRuns code in response to reviewer comments. ReadFish BossRuns should now be compatible with minknow-core <=5.1.4 and >= 5.0.0 and Guppy >= 6.0.0. The command to run readfish bossruns remains the same, however the guppy address and port are now most likely ipc:///tmp/guppy and 5555.

BossRuns/V0.0.1

2 years ago

This release ran with MinKNOW 21.11.7 and MinKNOW Core 4.5.4 and ONT-Guppy 5.1.13.