Skip to content

Commit

Permalink
Version 6.2.1 bump
Browse files Browse the repository at this point in the history
  • Loading branch information
minknowbot committed Dec 11, 2024
1 parent 1195766 commit d6ce6bb
Show file tree
Hide file tree
Showing 97 changed files with 7,340 additions and 4,257 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/pypi-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ jobs:
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
password: ${{ secrets.PYPI_API_TOKEN }}
24 changes: 12 additions & 12 deletions BREAKING_CHANGES_IN_5.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ The 5.0 release of MinKNOW API, describing the API for MinKNOW Core 5.0, has sev
changes from earlier 4.x versions, and code using the API will need to be updated to suit.

The breaking changes are documented below. There also some changes to the API that do not
break compatibility with older versions, such as the addition of new RPC's; these are not
break compatibility with older versions, such as the addition of new RPC's; these are not
documented here.


Expand All @@ -18,43 +18,43 @@ No RPCs have been removed from the MinKNOW API since MinKNOW Core 4.0.
Note that some messages have had their fields renumbered. The wire format of these messages will
not be compatible with earlier 4.x versions.

Some messages have had fields renamed, but using the same number as in 4.x. These messages will
Some messages have had fields renamed, but using the same number as in 4.x. These messages will
be wire compatible with 4.x, although the interpretation of these fields may have changed. Code
which uses these renamed fields will not be compatible.

The following messages have had their fields changed:

### `analysis_configuration.proto`

* `ReportConfiguration.ReportConfiguration`: The `markdown_report_file_pattern` field has been
* `ReportConfiguration.ReportConfiguration`: The `markdown_report_file_pattern` field has been
renumbered to 8. Field number 2 is now `json_report_file_pattern`

### `instance.proto`

* `GetVersionInfoResponse`: The `protocols` field has been renamed to `bream`, and the
* `GetVersionInfoResponse`: The `protocols` field has been renamed to `bream`, and the
`configuration` field renamed to `protocol_configuration`, to more accurately reflect
the contents of the packages these fields relate to.

### `keystore.proto`

* `StoreRequest`: When using the `lifetime` field to store a value in the manager, the only valid
values are `UNTIL_INSTANCE_END` and `PERSIST_ACROSS_RESTARTS`. Using any other value will cause
the call to fail with `INVALID_ARGUMENT`
the call to fail with `INVALID_ARGUMENT`

### `manager.proto`

* `FlowCellPosition.RpcPorts`: The fields `insecure` and `insecure_grpc_web` have been removed,
* `FlowCellPosition.RpcPorts`: The fields `insecure` and `insecure_grpc_web` have been removed,
as it is no longer possible to use the gRPC protocols without TLS.

### `statistics.proto`

* `AcquisitionOutputBucket` has been renamed to `AcquisitionOutputSnapshot`, as this message
* `AcquisitionOutputBucket` has been renamed to `AcquisitionOutputSnapshot`, as this message
really reflects a snapshot of data at a given time point. The field `bucket` has been renamed
to `seconds`, as it indicates the time point.
to `seconds`, as it indicates the time point.
* `StreamAcquisitionOutputResponse`: The submessage `FilteredBuckets` has been
renamed to `FilteredSnapshots`. The `buckets` field in both messages has been renamed
to `snapshots`.
* `WriterOutputBucket` has been renamed to `WriterOutputSnapshot`, as this message
* `WriterOutputBucket` has been renamed to `WriterOutputSnapshot`, as this message
really reflects a snapshot of data at a given time point. The field `bucket` has been renamed
to `seconds`, as it indicates the time point.
to `seconds`, as it indicates the time point.
* `StreamWriterOutputResponse`: The `buckets` field has been renamed to `snapshots`.
4 changes: 2 additions & 2 deletions BUILD.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
Building the python client
==========================

The Python code has already been pre-generated from the .proto files, so to install it
The Python code has already been pre-generated from the .proto files, so to install it
just run:

```bash
cd python
python -m pip install .
```
```
1 change: 0 additions & 1 deletion LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -360,4 +360,3 @@ You may add additional accurate notices of copyright ownership.

This Source Code Form is "Incompatible With Secondary Licenses", as
defined by the Mozilla Public License, v. 2.0.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ including gathering information about running or finished experiments, starting
experiments, and even exerting more fine-grained control. Anything that can be done via MinKNOW's
user interface (and more) can be done using the APIs in this project.

This project is targetted at LIMS developers or developers of other tools that have a need to
This project is targeted at LIMS developers or developers of other tools that have a need to
integrate with MinKNOW. Some familiarity with Python is expected (although the APIs can be used from
other languages), as the examples are written in Python. If you are not familiar with [gRPC][grpc],
it is worth reading through some of the [gRPC documentation][grpc-docs] to get a feel for it.
Expand Down
6 changes: 3 additions & 3 deletions dev-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cryptography~=39.0
grpcio==1.60.0
grpcio-tools==1.60.0
cryptography~=42.0
grpcio==1.60.1
grpcio-tools==1.60.1
minknow-api-service-plugin
pre-commit
pytest
38 changes: 33 additions & 5 deletions proto/minknow_api/acquisition.proto
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,13 @@ service AcquisitionService {
option idempotency_level = IDEMPOTENT;
}

// Find the signal reader in use. This may have been configured by MinKNOW prior to a protocol being begun.
//
// Since 6.2
rpc get_signal_reader (GetSignalReaderRequest) returns (GetSignalReaderResponse) {
option idempotency_level = IDEMPOTENT;
}

// Set the bream information for the current acquisition.
//
// This should only be called by the protocol. It will only affect the last acquisition that was
Expand Down Expand Up @@ -401,6 +408,10 @@ enum AcquisitionState {
// The acquisition period finished on its own and
// did not report an error.
ACQUISITION_COMPLETED = 3;

// The acquisition period is paused.
// that is, no data transfer occurring.
ACQUISITION_PAUSED = 4;
}

enum AcquisitionStopReason {
Expand Down Expand Up @@ -452,10 +463,10 @@ enum StartupState {
// Setting up data writers for outputting reads/files.
STARTUP_INITIALISING_DATA_WRITERS = 5;

// Initialsing storage for in flight reads.
// Initialising storage for in flight reads.
STARTUP_INITIALISING_INTERMEDIATE_DATA_STORAGE = 6;

// Initialsing storage for run statistics.
// Initialising storage for run statistics.
STARTUP_INITIALISING_STATISTICS = 7;
}

Expand Down Expand Up @@ -530,7 +541,7 @@ message AcquisitionYieldSummary
// As above, but counted in bases rather than basecalls.
TotalsPerDuplexCategory basecalled_pass_bases_split = 24;
TotalsPerDuplexCategory basecalled_fail_bases_split = 25;

// Number of raw samples which have been called.
int64 basecalled_samples = 6;

Expand Down Expand Up @@ -709,7 +720,7 @@ message AcquisitionConfigSummary {
bool fastq_reads_enabled = 5;
// Determine if pod5 reads were enabled for the run.
bool pod5_reads_enabled = 22;

// This field has been removed
// Since 5.8
reserved 6;
Expand Down Expand Up @@ -929,7 +940,7 @@ message AcquisitionRunInfo {
// Set information provided by the Bream toolkit.
BreamInfo bream_info = 15;

// Target Run-Until Critiera, used to determine when the acquisition should be paused
// Target Run-Until Criteria, used to determine when the acquisition should be paused
// or stopped.
//
// Since 5.3
Expand All @@ -954,7 +965,10 @@ message SetSignalReaderRequest {

// Available signal reader types
enum SignalReaderType {
option allow_alias = true;

HDF5 = 0; // Default value
PLAYBACK = 0; // Renamed default value - playback can handle non-hdf file formats too.
DEVICE = 1;
}

Expand All @@ -977,6 +991,20 @@ message SetSignalReaderRequest {

message SetSignalReaderResponse {}

message GetSignalReaderRequest {}
message GetSignalReaderResponse {
// The type of signal reader to use
SetSignalReaderRequest.SignalReaderType reader = 1 [(rpc_required) = true];

// The following is only set if the signal reader is a playback source.
string playback_source = 2;

SetSignalReaderRequest.SourceFileMode playback_mode = 3;

float sample_rate_scale_factor = 4;
}


message SetBreamInfoRequest {
// The information to set.
//
Expand Down
Loading

0 comments on commit d6ce6bb

Please sign in to comment.