-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding ISA-JSON support as input file. #88
Conversation
- Initiate IsaStudy directly from isa JSON file - Add typing system - Add Dict validation before creating the IsaStudy object
…ject and Ena study
- Add study alias - Add std module for common functions - Add docstrings
- Add runs and experiments to Study object
* start with nan fix * instrument_model * update templates * updating xml templates * version bump * not everything mandatory * some improvements * unicode problem * encode with utf-8 * add updated templates * update minimal example * update templates * update readme * move structure * update more paths * start with integration * get example working
…a with paired library layout
@bgruening hey! This feature would allow the tool to parse ISA-JSON making a connection between FAIRDOM-SEEK and ENA. (also possible other platform that export ISA-JSON). The parser creates datatables that can be used by the existing parts of the ENA upload tool. This is a BETA feature though... maybe it will disappear when repositories will except ISA-JSON themselves. Any opinions? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing work!
ena_upload/_version.py
Outdated
@@ -1 +1 @@ | |||
__version__ = "0.6.3" | |||
__version__ = "0.6.4" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That probably justifies a larger version bump.
ena_upload/ena_upload.py
Outdated
@@ -857,6 +876,24 @@ def main(): | |||
schema_dataframe[schema] = xl_sheet | |||
path = os.path.dirname(os.path.abspath(xlsx)) | |||
schema_tables[schema] = f"{path}/ENA_template_{schema}.tsv" | |||
elif isa_json_file: | |||
# Read json file | |||
isa_json = json.load(open(isa_json_file)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the file handle is here kept open, maybe use a with open
statement?
@bgruening thanks for spotting! Yes quite a big one @kdp-cloud wrote a nice piece of code, and now all the rest looks very janky 😄 |
This pull request will add ISA JSON support as input file. This JSON file is generated from FAIRDOM-SEEK. Since an ISA JSON can hold many assay streams, we introduce a new parameter,
isa_assay_stream
together with theisa_json
parameter.