Skip to content

Releases: umccr/htsget-rs

htsget-actix-v0.4.1

02 Jun 08:22
c801726
Compare
Choose a tag to compare

Fixed

  • (actix) incorrect feature flags

Other

  • add debug line for config when starting server

htsget-test-v0.4.0

30 May 23:05
f38ce77
Compare
Choose a tag to compare

Added

  • (config) add url-storage feature flag
  • add option to format logs in different styles
  • add error type to config
  • [breaking] add tls config to ticket server, rearrange some fields
  • (test) add multiple resolvers for server tests and test resolution
  • use serve_at in data server rather than a constant
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • [breaking] headers should allow multiple values for the same key
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • update for UrlStorage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • remove s3-storage as default
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • bump crate versions to 0.1.3 manually
  • allow htsget-test to be published and bump deps
  • (test) remove htsget-test dependence on htsget-search and htsget-http.
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • (fix) Remove version from htsget-test and mark it for publish=false to avoid circular dependency as recommended by @Marcoleni in release-plz/release-plz#452 (comment)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)

htsget-search-v0.4.0

30 May 23:07
f38ce77
Compare
Choose a tag to compare

Added

  • implement url formatting for url storage
  • (search) [breaking] implement get request and streamable type for url storage
  • (search) implement head request for url storage
  • (search) get url from key
  • (search) add url storage struct
  • (config) use proper url parsing in config
  • (search) include request headers to storage options
  • (search) re-export some config types
  • (config) add url-storage feature flag
  • add error type to config
  • (search) add pub rustls server config function
  • (test) add multiple resolvers for server tests and test resolution
  • use serve_at in data server rather than a constant
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • local storage on windows no longer returns urls with incorrect paths
  • (search) use url directly instead of converting to string first
  • use correct help context for a crate using htsget-config
  • (search) return error instead of panicking when a TLS key is not found
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)
  • fixes for byte range ends
  • fix IOError name
  • fixes & model improvements & bam search progress
  • fixes & model improvements & bam search progress
  • fix docs

Other

  • update for UrlStorage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • (search) add authorization header check to test server
  • (search) fix head content-length behaviour and add remaining storage tests
  • (search) add mock server and request tests
  • (search) add url format tests
  • (search) add get url from key test
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • (config) rename ResolveResponse functions
  • (config) add logic for url storage in resolvers
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • (search) return plain ServerConfig from rustls load function rather than Arc
  • (search) convert match to if let
  • (search) add warning when a non-valid PL read group header is found
  • (search) add additional tests for searching resolvers and from storage
  • (search) implement ResolveResponse on HtsGetFromStorage
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • make htsget-test a regular dependency
  • bump crate versions to 0.1.3 manually
  • allow htsget-test to be published and bump deps
  • specify htsget-test version
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • (search) apply rustfmt
  • Merge pull request #154 from umccr/release-plz/2023-02-07T21-45-42Z
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • Remove s3-server and dependencies (#150)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • (fix) Remove version from htsget-test and mark it for publish=false to avoid circular dependency as recommended by @Marcoleni in release-plz/release-plz#452 (comment)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into more-flexible-config-rename
  • add test for long resolvers from environment variable config
  • clippy and fmt
  • allow specifying tags, reference names, fields with an 'All' value
  • reduce some options for cors, remove repeated code when configuring cors
  • fix tests affected by config, change some default values and move around config options
  • apply changes to other crates from reworked config
  • deserialize empty string as None value
  • move cors config to separate file
  • fix errors relating to new config
  • add tests for checking for contained value in interval
  • add safe cast for conversion between i64 and u64
  • move fields, tags, no tags, query, and interval to config
  • Make search structs public
  • Remove ReferenceSequenceInfo
  • Remove unused code and logic
  • Add tests for no end position
  • Remove requirement for default end position when converting to noodles interval
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into exports
  • Export some functions for use as a dependency
  • Re-export htsget-config as a dependency from other crates
  • Update non-noodles dependencies
  • Http and tls server test uses test utils
  • Convert preflight server test to test utils
  • Convert data server test to use test utils
  • Implement http test traits for data server
  • Add CorsLayer responses to htsget-http-lambda
  • Move configure_cors to module file
  • Bump deps for noodles and simplify logic around maximum reference sequence length using new noodles types
  • List out allowed methods rather than sending wildcard
  • Add ticket server cors tests
  • Add cors options request test
  • Fix tests implementation
  • Can't use base directory function in test
  • Implement additional cors test
  • Add base path only function in tests for code reuse
  • Add cors tests
  • Layer should go after merge
  • Implement cors for data server
  • Rename ticket server to data server
  • Move data server config to separate struct
  • Implement cors for htsget-http-actix.
  • Changes to deployment (#116)
  • Remove some trace log details to avoid making them overly long.
  • Add more detail to gzi traces.
  • Add more spans and tracing calls.
  • Add buffered reading to bai and gzi.
  • Add buffered reading to cram search.
  • Remove logging chunks as it is too noisy.
  • Emit trace logs from functions.
  • Add some more instrument targets, use span in_scope.
  • Remove sleep call.
  • Add a few more tracing span targets.
  • Add span tracing to test timings.
  • Small changes related to indices (#114)
  • Bump dependencies, fix clippy warnings.
  • Avoid reading index unless it is required.
  • Remove some unnecessary unwraps.
  • Improve errors so that they are more informative.
  • Remove RangeBounds on BytesPosition as its use is less readable with classes.
  • Fix tests related to response class.
  • Remove headers from response if empty.
  • Simplify JsonUrl logic.
  • Responses should contain a class for all ranges, or no ranges.
  • Fix tests.
  • Implement RangeBounds for BytesPosition.
  • Perform byte position merging when creating data blocks.
  • Byte position records class, Header for only header bytes, Body for only body bytes, and None if there is a mix of bytes.
  • Allow BytesPosition to record its own class.
  • Fix unneseccary storage queries (#107)
  • Simplify querying for all records by determining file size.
  • Server benchmarks should use non-tls ticket server as this is a fairer comparison to the htsget-refserver.
  • Clean up code, format, update dependencies.
  • Tests run independently by using dynamic port allocation.
  • The GC info field should have a Float type rather than an Integer type.
  • Implement non-tls ticket server alongside tls ticket server.
  • Rename some traits and structs to clarify their purpose.
  • Bump many deps (except querymap) and avoid pulling full tokio in, we just need macros and rt-multi-thread (#96)
  • Out of order urls (#95)
  • Pinning to noodles-tabix =0.9.0 as suggested in zaeleus/noodles#90 (comment) as a result of getting CI errors on https://github.com/umccr/htsget-rs/runs/6803593182?check_suite_focus=true#step:6:90
  • Fix eof errors (#87)
  • Add benchmarks (#59)
  • Fix localstorage path (#86)
  • Fix tests and errors (#83)
  • Deploy htsget-http-lambda. (#81)
  • Enable choosing between storage types. (#80)
  • Remove file from localstorage (#79)
  • Spawn s3-server once so that tests don't have to be run on one thread. (#78)
  • Remove blocking (#77)
  • Htsget http lambda (#76)
  • Storage class for s3 (#74)
  • Decouple File struct from Search trait. (#70)
  • Fix runtime panics from curl (#69)
  • Bump all tokio versions and stay on track with Noodles versioning instead of working from its git /cc @andrewpatto
  • Implement id resolver (#60)
  • Convert Storage and HtsGet traits to use async/await (#56)
  • Bump up noodles across crates, otherwise several versions get mixed up
  • Add the service info endpoints (#54)
  • Add the htsget-http-core and htsget-http-actix crates (#45)
  • Track crates.io version of noodles ([#5...
Read more

htsget-lambda-v0.4.0

30 May 23:14
f38ce77
Compare
Choose a tag to compare

Added

  • format parsing is now case-insensitive when validating query parameters
  • [breaking] add request header information to post handlers
  • [breaking] add request header information to get handlers
  • (config) add url-storage feature flag
  • add option to format logs in different styles
  • add error type to config
  • [breaking] add tls config to ticket server, rearrange some fields
  • (test) add multiple resolvers for server tests and test resolution
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

Other

  • update for UrlStorage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • make htsget-test a regular dependency
  • bump crate versions to 0.1.3 manually
  • specify htsget-test version
  • (test) remove htsget-test dependence on htsget-search and htsget-http.
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • Merge pull request #133 from umccr/deploy-htsget-rs
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • Remove s3-server and dependencies (#150)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)

htsget-http-v0.4.0

30 May 23:09
f38ce77
Compare
Choose a tag to compare

Added

  • format parsing is now case-insensitive when validating query parameters
  • [breaking] add request header information to post handlers
  • [breaking] add request header information to get handlers
  • (config) add url-storage feature flag
  • add error type to config
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • [breaking] headers should allow multiple values for the same key
  • (http) return InvalidInput when query parameters are present for a post request
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • update for UrlStorage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • make htsget-test a regular dependency
  • bump crate versions to 0.1.3 manually
  • specify htsget-test version
  • (http) make naming of service info fields consistent
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)

htsget-config-v0.4.0

30 May 23:04
f38ce77
Compare
Choose a tag to compare

Added

  • implement url formatting for url storage
  • (config) use proper url parsing in config
  • add option to format logs in different styles
  • add error type to config
  • [breaking] add tls config to ticket server, rearrange some fields
  • use serve_at in data server rather than a constant
  • (config) set Local resolvers from data server config after parsing the Config
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • local storage on windows no longer returns urls with incorrect paths
  • (config) use set to avoid duplicate key-value pairs in headers
  • [breaking] headers should allow multiple values for the same key
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • (config) clarify which HTTP requests UrlStorage will make
  • (config) update docs for more clarity
  • update for UrlStorage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • (config) rename ResolveResponse functions
  • (config) add logic for url storage in resolvers
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • (config) add documentation for endpoint when using S3 storage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • (config) fix typo
  • (config) rename test
  • (config) add tests for resolving responses
  • (config) fix incorrectly using resolved id when searching for regex capture groups
  • a few style changes, changed default resolver
  • (config) add tests for default tagged storage type
  • (config) document new features and how to use them
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • (config) leverage tagged enum types to allow selecting storage type without manually specifying config values
  • manually bump crate versions to 0.1.4
  • bump crate versions to 0.1.3 manually
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)
  • add missing environment variable options
  • remove unnecessary default column for environment variables, surround environment variables in backticks.
  • reword resolvers description
  • clarify how the resolvers work
  • reword usage string
  • remove duplicate config module
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into more-flexible-config-rename
  • fix feature flag compile errors
  • add test for long resolvers from environment variable config
  • fix broken data server optional by introducing boolean flag to enable data server
  • add documentation for reworked config
  • flatten data server config
  • clippy and fmt
  • update config file with default values, add option to print a default config
  • allow specifying tags, reference names, fields with an 'All' value
  • remove setters, add constructors, add documentation.
  • reduce some options for cors, remove repeated code when configuring cors
  • fix tests affected by config, change some default values and move around config options
  • remove custom deserializer for None option and instead use custom enum
  • fix logic involving allowed attributes
  • apply changes to other crates from reworked config
  • update getter return types
  • deserialize empty string as None value
  • add cors tests and environment variable tests
  • remove public fields, add public getters
  • allow configuring multiple data servers
  • add expose headers cors option
  • move cors config to separate file
  • add case insensitive aliases to enum variants
  • add allow origins, and separate out tagged and untagged enum variants
  • add generic allow type configuration option for allow headers and allow methods
  • add cors max age option
  • add cors allow header types for cors config
  • add CorsConfig shared struct
  • add UrlResolver, separate data server config from resolver
  • fix errors relating to new config
  • use figment instead of config because it is simpler to set defaults
  • move config into separate module
  • add tests for checking for contained value in interval
  • implement query matcher logic
  • move fields, tags, no tags, query, and interval to config
  • add separate config for local server and s3 storage
  • add config file from command line or env option
  • swap out envy for config dependency
  • Add documentation for cors
  • Implement configurable origin for cors
  • Add cors allow credentials option to data server config
  • Move data server config to separate struct
  • Move server config into separate struct
  • Implement cors for htsget-http-actix.
  • Add more spans and tracing calls.
  • Move tracing setup to config.
  • Bump dependencies, fix clippy warnings.
  • Improve errors so that they are more informative.
  • Update README instructions.
  • Add ticker server addr test.
  • Clean up code, format, update dependencies.
  • Implement non-tls ticket server alongside tls ticket server.
  • Fix localstorage path (#86)
  • Fix tests and errors (#83)
  • Deploy htsget-http-lambda. (#81)
  • Enable choosing between storage types. (#80)
  • Remove file from localstorage (#79)
  • Htsget http lambda (#76)

htsget-actix-v0.4.0

30 May 23:12
f38ce77
Compare
Choose a tag to compare

Added

  • format parsing is now case-insensitive when validating query parameters
  • [breaking] add request header information to post handlers
  • [breaking] add request header information to get handlers
  • (config) add url-storage feature flag
  • add option to format logs in different styles
  • add error type to config
  • (actix) TLS on ticket server
  • [breaking] add tls config to ticket server, rearrange some fields
  • (test) add multiple resolvers for server tests and test resolution
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • (config) use set to avoid duplicate key-value pairs in headers
  • [breaking] headers should allow multiple values for the same key
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • update for UrlStorage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • a few style changes, changed default resolver
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • make htsget-test a regular dependency
  • bump crate versions to 0.1.3 manually
  • specify htsget-test version
  • (test) remove htsget-test dependence on htsget-search and htsget-http.
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)

htsget-test-v0.3.0

29 May 06:07
07cd99f
Compare
Choose a tag to compare

Added

  • (config) add url-storage feature flag
  • add option to format logs in different styles
  • add error type to config
  • [breaking] add tls config to ticket server, rearrange some fields
  • (test) add multiple resolvers for server tests and test resolution
  • use serve_at in data server rather than a constant
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • [breaking] headers should allow multiple values for the same key
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • update for UrlStorage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • remove s3-storage as default
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • bump crate versions to 0.1.3 manually
  • allow htsget-test to be published and bump deps
  • (test) remove htsget-test dependence on htsget-search and htsget-http.
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • (fix) Remove version from htsget-test and mark it for publish=false to avoid circular dependency as recommended by @Marcoleni in release-plz/release-plz#452 (comment)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)

htsget-search-v0.3.0

29 May 06:09
07cd99f
Compare
Choose a tag to compare

Added

  • implement url formatting for url storage
  • (search) [breaking] implement get request and streamable type for url storage
  • (search) implement head request for url storage
  • (search) get url from key
  • (search) add url storage struct
  • (config) use proper url parsing in config
  • (search) include request headers to storage options
  • (search) re-export some config types
  • (config) add url-storage feature flag
  • add error type to config
  • (search) add pub rustls server config function
  • (test) add multiple resolvers for server tests and test resolution
  • use serve_at in data server rather than a constant
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • local storage on windows no longer returns urls with incorrect paths
  • (search) use url directly instead of converting to string first
  • use correct help context for a crate using htsget-config
  • (search) return error instead of panicking when a TLS key is not found
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)
  • fixes for byte range ends
  • fix IOError name
  • fixes & model improvements & bam search progress
  • fixes & model improvements & bam search progress
  • fix docs

Other

  • update for UrlStorage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • (search) add authorization header check to test server
  • (search) fix head content-length behaviour and add remaining storage tests
  • (search) add mock server and request tests
  • (search) add url format tests
  • (search) add get url from key test
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • (config) rename ResolveResponse functions
  • (config) add logic for url storage in resolvers
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • (search) return plain ServerConfig from rustls load function rather than Arc
  • (search) convert match to if let
  • (search) add warning when a non-valid PL read group header is found
  • (search) add additional tests for searching resolvers and from storage
  • (search) implement ResolveResponse on HtsGetFromStorage
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • manually bump crate versions to 0.1.4
  • make htsget-test a regular dependency
  • bump crate versions to 0.1.3 manually
  • allow htsget-test to be published and bump deps
  • specify htsget-test version
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • (search) apply rustfmt
  • Merge pull request #154 from umccr/release-plz/2023-02-07T21-45-42Z
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • Remove s3-server and dependencies (#150)
  • (deps) bump tokio from 1.24.0 to 1.24.2 (#151)
  • (fix) Remove version from htsget-test and mark it for publish=false to avoid circular dependency as recommended by @Marcoleni in release-plz/release-plz#452 (comment)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into more-flexible-config-rename
  • add test for long resolvers from environment variable config
  • clippy and fmt
  • allow specifying tags, reference names, fields with an 'All' value
  • reduce some options for cors, remove repeated code when configuring cors
  • fix tests affected by config, change some default values and move around config options
  • apply changes to other crates from reworked config
  • deserialize empty string as None value
  • move cors config to separate file
  • fix errors relating to new config
  • add tests for checking for contained value in interval
  • add safe cast for conversion between i64 and u64
  • move fields, tags, no tags, query, and interval to config
  • Make search structs public
  • Remove ReferenceSequenceInfo
  • Remove unused code and logic
  • Add tests for no end position
  • Remove requirement for default end position when converting to noodles interval
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into exports
  • Export some functions for use as a dependency
  • Re-export htsget-config as a dependency from other crates
  • Update non-noodles dependencies
  • Http and tls server test uses test utils
  • Convert preflight server test to test utils
  • Convert data server test to use test utils
  • Implement http test traits for data server
  • Add CorsLayer responses to htsget-http-lambda
  • Move configure_cors to module file
  • Bump deps for noodles and simplify logic around maximum reference sequence length using new noodles types
  • List out allowed methods rather than sending wildcard
  • Add ticket server cors tests
  • Add cors options request test
  • Fix tests implementation
  • Can't use base directory function in test
  • Implement additional cors test
  • Add base path only function in tests for code reuse
  • Add cors tests
  • Layer should go after merge
  • Implement cors for data server
  • Rename ticket server to data server
  • Move data server config to separate struct
  • Implement cors for htsget-http-actix.
  • Changes to deployment (#116)
  • Remove some trace log details to avoid making them overly long.
  • Add more detail to gzi traces.
  • Add more spans and tracing calls.
  • Add buffered reading to bai and gzi.
  • Add buffered reading to cram search.
  • Remove logging chunks as it is too noisy.
  • Emit trace logs from functions.
  • Add some more instrument targets, use span in_scope.
  • Remove sleep call.
  • Add a few more tracing span targets.
  • Add span tracing to test timings.
  • Small changes related to indices (#114)
  • Bump dependencies, fix clippy warnings.
  • Avoid reading index unless it is required.
  • Remove some unnecessary unwraps.
  • Improve errors so that they are more informative.
  • Remove RangeBounds on BytesPosition as its use is less readable with classes.
  • Fix tests related to response class.
  • Remove headers from response if empty.
  • Simplify JsonUrl logic.
  • Responses should contain a class for all ranges, or no ranges.
  • Fix tests.
  • Implement RangeBounds for BytesPosition.
  • Perform byte position merging when creating data blocks.
  • Byte position records class, Header for only header bytes, Body for only body bytes, and None if there is a mix of bytes.
  • Allow BytesPosition to record its own class.
  • Fix unneseccary storage queries (#107)
  • Simplify querying for all records by determining file size.
  • Server benchmarks should use non-tls ticket server as this is a fairer comparison to the htsget-refserver.
  • Clean up code, format, update dependencies.
  • Tests run independently by using dynamic port allocation.
  • The GC info field should have a Float type rather than an Integer type.
  • Implement non-tls ticket server alongside tls ticket server.
  • Rename some traits and structs to clarify their purpose.
  • Bump many deps (except querymap) and avoid pulling full tokio in, we just need macros and rt-multi-thread (#96)
  • Out of order urls (#95)
  • Pinning to noodles-tabix =0.9.0 as suggested in zaeleus/noodles#90 (comment) as a result of getting CI errors on https://github.com/umccr/htsget-rs/runs/6803593182?check_suite_focus=true#step:6:90
  • Fix eof errors (#87)
  • Add benchmarks (#59)
  • Fix localstorage path (#86)
  • Fix tests and errors (#83)
  • Deploy htsget-http-lambda. (#81)
  • Enable choosing between storage types. (#80)
  • Remove file from localstorage (#79)
  • Spawn s3-server once so that tests don't have to be run on one thread. (#78)
  • Remove blocking (#77)
  • Htsget http lambda (#76)
  • Storage class for s3 (#74)
  • Decouple File struct from Search trait. (#70)
  • Fix runtime panics from curl (#69)
  • Bump all tokio versions and stay on track with Noodles versioning instead of working from its git /cc @andrewpatto
  • Implement id resolver (#60)
  • Convert Storage and HtsGet traits to use async/await (#56)
  • Bump up noodles across crates, otherwise several versions get mixed up
  • Add the service info endpoints (#54)
  • Add the htsget-http-core and htsget-http-actix crates (#45)
  • Track crates.io version of noodles ([#5...
Read more

htsget-config-v0.3.0

29 May 06:06
07cd99f
Compare
Choose a tag to compare

Added

  • implement url formatting for url storage
  • (config) use proper url parsing in config
  • add option to format logs in different styles
  • add error type to config
  • [breaking] add tls config to ticket server, rearrange some fields
  • use serve_at in data server rather than a constant
  • (config) set Local resolvers from data server config after parsing the Config
  • (config) add automatic config inference for local and s3 storage, and rearrange modules
  • [breaking] simplify storage config by allowing untagged enum representation

Fixed

  • inserting keys with the same name multiple times into headers serializes correctly
  • local storage on windows no longer returns urls with incorrect paths
  • (config) use set to avoid duplicate key-value pairs in headers
  • [breaking] headers should allow multiple values for the same key
  • use correct help context for a crate using htsget-config
  • (release) Bump all crates to 0.1.2 as explored in release-plz/release-plz#507 (comment)

Other

  • (config) clarify which HTTP requests UrlStorage will make
  • (config) update docs for more clarity
  • update for UrlStorage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • [breaking] rename AwsS3Storage to S3Storage in search
  • [breaking] http refactor, pass request with query
  • remove s3-storage as default
  • (config) rename ResolveResponse functions
  • (config) add logic for url storage in resolvers
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/url_storage
  • (config) add documentation for endpoint when using S3 storage
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into feat/actix-tls
  • (config) fix typo
  • (config) rename test
  • (config) add tests for resolving responses
  • (config) fix incorrectly using resolved id when searching for regex capture groups
  • a few style changes, changed default resolver
  • (config) add tests for default tagged storage type
  • (config) document new features and how to use them
  • [breaking] rename HttpTicketFormatter and remove UrlFormatter implementation for it
  • [breaking] move htsget structs to config, and resolve storage type in config
  • (config) leverage tagged enum types to allow selecting storage type without manually specifying config values
  • manually bump crate versions to 0.1.4
  • bump crate versions to 0.1.3 manually
  • [breaking] move CertificateKeyPair to config to simplify data server logic
  • release
  • Downgrade release after fixing cargo publish circular dep issues as discussed in release-plz/release-plz#507 (comment)
  • Update cargo files (#152)
  • release (#148)
  • Set MSRV on all sub-crates (#146)
  • Better CI (#98)
  • add missing environment variable options
  • remove unnecessary default column for environment variables, surround environment variables in backticks.
  • reword resolvers description
  • clarify how the resolvers work
  • reword usage string
  • remove duplicate config module
  • Merge branch 'main' of https://github.com/umccr/htsget-rs into more-flexible-config-rename
  • fix feature flag compile errors
  • add test for long resolvers from environment variable config
  • fix broken data server optional by introducing boolean flag to enable data server
  • add documentation for reworked config
  • flatten data server config
  • clippy and fmt
  • update config file with default values, add option to print a default config
  • allow specifying tags, reference names, fields with an 'All' value
  • remove setters, add constructors, add documentation.
  • reduce some options for cors, remove repeated code when configuring cors
  • fix tests affected by config, change some default values and move around config options
  • remove custom deserializer for None option and instead use custom enum
  • fix logic involving allowed attributes
  • apply changes to other crates from reworked config
  • update getter return types
  • deserialize empty string as None value
  • add cors tests and environment variable tests
  • remove public fields, add public getters
  • allow configuring multiple data servers
  • add expose headers cors option
  • move cors config to separate file
  • add case insensitive aliases to enum variants
  • add allow origins, and separate out tagged and untagged enum variants
  • add generic allow type configuration option for allow headers and allow methods
  • add cors max age option
  • add cors allow header types for cors config
  • add CorsConfig shared struct
  • add UrlResolver, separate data server config from resolver
  • fix errors relating to new config
  • use figment instead of config because it is simpler to set defaults
  • move config into separate module
  • add tests for checking for contained value in interval
  • implement query matcher logic
  • move fields, tags, no tags, query, and interval to config
  • add separate config for local server and s3 storage
  • add config file from command line or env option
  • swap out envy for config dependency
  • Add documentation for cors
  • Implement configurable origin for cors
  • Add cors allow credentials option to data server config
  • Move data server config to separate struct
  • Move server config into separate struct
  • Implement cors for htsget-http-actix.
  • Add more spans and tracing calls.
  • Move tracing setup to config.
  • Bump dependencies, fix clippy warnings.
  • Improve errors so that they are more informative.
  • Update README instructions.
  • Add ticker server addr test.
  • Clean up code, format, update dependencies.
  • Implement non-tls ticket server alongside tls ticket server.
  • Fix localstorage path (#86)
  • Fix tests and errors (#83)
  • Deploy htsget-http-lambda. (#81)
  • Enable choosing between storage types. (#80)
  • Remove file from localstorage (#79)
  • Htsget http lambda (#76)