Comments (1)
Choose versioning scheme
My proposal, as loosely inspired by how I've seen many Rust crates organized (like noodles):
- Repo version + tool versions
- Version each file (tool) individually (DO NOT make GitHub releases for each of these updates)
- scheme: same as ourdocker
tagging system. i.e. we track both the "base tool version" (like STARv2.7.11b
) AND we append our own revision number to it (like-0
or-1
). Final product:v2.7.11b-1
- Make repo-wide tagged releases ad hoc
- We start withv1.0.0
to indicate we're "production ready" and most of our updates will either be a "patch" or "bug fix" release that increments the patch num, OR a minor release. I think "breaking changes" would only be defined by some major architectural change and I can't think of an example. But they'd be very rare.
- Version each file (tool) individually (DO NOT make GitHub releases for each of these updates)
How a user interacts with this: If they are only using a single tool, they could import that specific file, with that <tool version>-<revision number> tag. This is kind of a "mouthful" of a version. I view this as being for advanced users.
If they are using a whole bunch of different tools/files, they would specify a "repo version" which would obfuscate the file-level versions.
How we interact with this: Since we won't be pinging users for every tool revision, we can feel free to update these as often and as trivially as we want. We only ping users when we've made enough changes that we want to notify them. And then we make a repo-wide release.
If a user wants to be on the bleeding edge, they can import everything at the latest file/tool level. However we would recommend most users to use the "convenience" version that packages everything together as a v1.x.x
.
from workflows.
Related Issues (20)
- our WDL files are too long
- Style Guide rules under review
- NGSderive step assumes plain text HOT 1
- Picard sort task fails for non-coordinate sorts
- support Single-Ended data
- Better document where GZIP input is required and where it's optional (but recommended)
- Expose more parameters of tools HOT 1
- FastQC `prefix` convention is fragile
- Tasks that take both pos/name sorted probably need different resources
- more dynamically allocated mem
- Fragility in workflows around malformed/missing RG records
- Add intentional pre and post checks for file emptiness
- tools/htseq: Add override or fix htseq-count max-reads-in-buffer option HOT 3
- workflows/rnaseq: 2.1.0 is not backward compatible with 2.0.0 HOT 3
- PAPIv2 Key [disk] not supported by GCP backend HOT 5
- Add CI for checking all tasks pull current docker images
- Modularize QC HOT 2
- investigate appropriate `disk_size`s HOT 1
- WDL/1.1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from workflows.