Skip to content

Commit

Permalink
updated changelong
Browse files Browse the repository at this point in the history
  • Loading branch information
sbooeshaghi committed Oct 8, 2024
1 parent be14ae9 commit 164d9d2
Showing 1 changed file with 66 additions and 28 deletions.
94 changes: 66 additions & 28 deletions docs/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,65 @@
---
title: Changelog
date: 2024-06-25
date: 2024-10-08
authors:
- name: A. Sina Booeshaghi
---

# Changelog

## [0.2.x] - XXXX-XX-XX
## [0.3.0] - XXXX-XX-XX (Unreleased)

### Added

- Added typing hints to many `Assay` and `Region` functions
- Added `'k key` to `seqspec info` to display one of `meta` for metadata, `sequence_spec` for sequence spec, and `library_spec` for library spec
- Added `-f format` to `seqspec info` to enable multiple formats for displaying info
- Added support for 0 length regions in the specification
- Added ability to modify reads using `seqspec modify`
- `seqspec init` now accepts read information
- Added templates and updated documentation to myst, website
- Added new examples (e.g., dogmaseq-dig)
- Added File object to Read
- Added SeqKit, SeqProtocol, LibKit, and LibProtocol attributes
- Added option to specify multiple SeqKit, SeqProtocol, LibKit, LibProtocol for each modality
- Added name validation against known list of SeqKit, SeqProtocol, LibKit, LibProtocol
- Added new attributes to Onlist object (Onlist now contains a File object):
- filetype
- filesize
- url
- Added "file_id" to the File object
- Added `seqspec file` command to return the list of files in the spec as paired across reads or interleaved
- Added `seqspec upgrade` hidden feature to upgrade v0.2.x seqspec files to v0.3.0.

### Changed

- Updated `seqspec index` to read strands for chromap
- Updated `seqspec split` to correctly split sequence_spec
- Modified `seqspec` string to use min_len instead of max_len to accommodate nanopore reads
- Updated documentation on how to propose new vocabulary
- Modified the internals of `seqspec onlist` to manage saving the joined onlist to the `-o` location when specified (otherwise saves to path where spec lives).
- Renamed "location" to "urltype" in Onlist object
- Replaced `-r` with `-i` id type for all functions (deprecated `-r`)
- Multiple seqspec commands now require the addition of a `-s selector [read, region, file]`
- `seqspec index` can now take in reads, regions, or files and index
- `seqspec modify` can now add files to the template
- Updated splitseq template

### Added
### Fixed

- Add typing hints to many `Assay` and `Region` functions
- Add `'k key` to `seqspec info` to display one of `meta` for metadata, `sequence_spec` for sequence spec, and `library_spec` for library spec
- Add `-f format` to `seqspec info` to enable multiple formats for displaying info
- Fixed `seqspec onlist` functionality
- Fixed error enumeration in seqspec check

### Removed

### Fixed
TODO:

- Remove `lib_struct`
- Remove `parent_id`

### Breaking Changes

- File elements are now required in Read objects and Onlist objects in version 0.3.0

## [0.2.0] - 2024-04-17

Expand All @@ -47,22 +85,22 @@ authors:
- Update `seqspec print` command to use the replacement `assay_id` attribute instead of `assay`
- Implement downloading onlists via URLs and transparently decompress gzip files
- Change `read_list` function to take the `onlist` object for handling local and remote files
- Add `onlist` argument to specify combined barcode list file format (kallisto's multi-file format and default cartesian product format)
- Added `onlist` argument to specify combined barcode list file format (kallisto's multi-file format and default cartesian product format)

### Added

- Add `sequence_spec` in the `Assay` object
- Add `Read` object in the `sequence_spec` object
- Add `sequence_spec` to the seqspec json schema
- Add `Read` object to specification document
- Add `Read` generator to website GUI
- Add pattern matching to `date` in `Assay` (expected date format: DAY MONTH YEAR, where day is one or two numbers, month is the full named month starting with a Capital letter and year is the full year)
- Add `library_kit` to `Assay` object (kit that adds seq adapters)
- Add `library_protocol` to `Assay` object (library that generates insert)
- Add `sequence_kit` to `Assay` object
- Add website to view example `seqspec` objects
- Add `get_seqspec` to assay returns sequence structure for a given modality
- Add multiple checks to `seqspec check`
- Added `sequence_spec` in the `Assay` object
- Added `Read` object in the `sequence_spec` object
- Added `sequence_spec` to the seqspec json schema
- Added `Read` object to specification document
- Added `Read` generator to website GUI
- Added pattern matching to `date` in `Assay` (expected date format: DAY MONTH YEAR, where day is one or two numbers, month is the full named month starting with a Capital letter and year is the full year)
- Added `library_kit` to `Assay` object (kit that adds seq adapters)
- Added `library_protocol` to `Assay` object (library that generates insert)
- Added `sequence_kit` to `Assay` object
- Added website to view example `seqspec` objects
- Added `get_seqspec` to assay returns sequence structure for a given modality
- Added multiple checks to `seqspec check`
- check read modalities exist in assay modalities
- check primer ids from seqspec are unique and exists as region ids in libspec
- check that the primer id exists as an atomic region (currently a strong assumption that may be relaxed in the future)
Expand All @@ -75,14 +113,14 @@ authors:
- check that the min len is less than or equal to the max len
- check that the length of the sequence is between min and max len
- Note a strong assumption in `seqspec print` is that the sequence have a length equal to the `max_len` for visualization purposes
- Add `RegionCoordinate` object that maps `Region` min/max lengths to 0-indexed positions
- Added `RegionCoordinate` object that maps `Region` min/max lengths to 0-indexed positions
- `seqspec onlist` searches for onlists in a `Region` based on `--region` flag
- Add type annotations for `join_onlists` to clarify it needs a list of `Onlist` objects
- Add minimal tests for `RegionCoordinate`, `project_regions_to_coordinates`, `run_onlist_region`, `run_onlist_read`, and seqspec print functions
- Add list of options to CLI for `-f FORMAT` within `seqspec onlist` and `seqspec print`
- Add `-s SEQTYPE` to `seqspec print` to disambiguate printing `sequence`, `library`, or `libseq` objects. TODO wrap `seqspec info` into `seqspec print -f info`.
- Add `-s SPECOBJECT` to `seqspec onlist`. Specify specific object `read`, `region`, or `region-type` for finding the `onlist`.
- Add fetching ability for seqspec onlist from remote with IGVF credentials (credit to @detrout)
- Added type annotations for `join_onlists` to clarify it needs a list of `Onlist` objects
- Added minimal tests for `RegionCoordinate`, `project_regions_to_coordinates`, `run_onlist_region`, `run_onlist_read`, and seqspec print functions
- Added list of options to CLI for `-f FORMAT` within `seqspec onlist` and `seqspec print`
- Added `-s SEQTYPE` to `seqspec print` to disambiguate printing `sequence`, `library`, or `libseq` objects. TODO wrap `seqspec info` into `seqspec print -f info`.
- Added `-s SPECOBJECT` to `seqspec onlist`. Specify specific object `read`, `region`, or `region-type` for finding the `onlist`.
- Added fetching ability for seqspec onlist from remote with IGVF credentials (credit to @detrout)

### Removed

Expand All @@ -95,6 +133,6 @@ TODO:

- Sequencing overlapping pairs now supported
- `seqspec check` correctly handles sequences lengths longer than the stated min/max range
- Fix test for `project_regions_to_coordinates`
- Fixed test for `project_regions_to_coordinates`
- Get the test of seqspec check working again by updating the schema for the refactored example specification YAML files and mocking fastq and barcode files
- Only return the onlist filename if it's a local file, downloading remote lists when needed

0 comments on commit 164d9d2

Please sign in to comment.