Skip to content
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

Support metadata merging/joining #140

Closed
thermokarst opened this issue May 30, 2017 · 1 comment
Closed

Support metadata merging/joining #140

thermokarst opened this issue May 30, 2017 · 1 comment
Assignees

Comments

@thermokarst
Copy link
Contributor

Related to qiime2/qiime2#269

@jairideout
Copy link
Member

Deferring until #143 is resolved.

jairideout added a commit to jairideout/q2cli that referenced this issue Jun 14, 2017
Adds support for supplying multiple `--m-metadata-file` options. If multiple metadata files are provided they are merged.

This does not add support for multiple metadata files combined with a metadata category (coming soon!).

Addresses part of qiime2#140.
ChrisKeefe pushed a commit to ChrisKeefe/q2cli that referenced this issue Jan 10, 2019
qiime2#142)

* ENH: Archive version 0.3.0: use archive UUID as zipfile root directory

Archive version 0.3.0 is not backward-compatible with older versions. The new format uses the archive's UUID as the root directory in the zipfile. Thus, extracting an archive will create a single directory with the archive's UUID as its name.

Previous archive formats determined the root directory name from the filepath the archive was being loaded from or saved to. This was fragile for two reasons: 1) if the file is renamed after saving, it became unloadable (!!!), and 2) if the file was extracted (e.g. using `unzip`), it could potentially mangle an existing directory that happened to have the same name. Now that a UUID is used for the extracted directory, collisions like this should never happen in practice.

Many thanks to @thermokarst for having the idea to use the archive's UUID as its root directory!

Other changes/notes:

- When loading an archive, dotfiles/dirs are ignored so that accidental addition of these files (e.g. user unzips, creates a .DS_Store, and rezips) won't make the archive unloadable.

- Archiver now manages UUID parsing, formatting, validation, and generation. UUID concerns were previously shared between Archiver, Artifact, and Visualization. UUIDs are now assured to be valid version 4 UUIDs, where other types of UUIDs were inadverently allowed before.  These changes to Archiver actually simplified code by removing constructor parameter `archive_filepath`, which was mutually exclusive with `data_initializer`. Now, Archiver requires a `data_initializer`.  If a UUID is provided to the constructor, it will be used (e.g. when loading an archive), otherwise a random version 4 UUID is generated by Archiver. These changes required modifications to Archiver's constructor signature (it's a private class though so shouldn't impact users).

Fixes qiime2#140.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants