[med-svn] [Git][med-team/q2cli][master] 8 commits: Revert "Do not fail in case of build time errors as we do for other qiime2 packages as well"
Nilesh Patra (@nilesh)
gitlab at salsa.debian.org
Mon Sep 5 15:24:01 BST 2022
Nilesh Patra pushed to branch master at Debian Med / q2cli
Commits:
01f47d3b by Nilesh Patra at 2022-09-05T19:15:12+05:30
Revert "Do not fail in case of build time errors as we do for other qiime2 packages as well"
This reverts commit a6611302a0cf1a50269275eb0b4498cb65d0f892.
- - - - -
84a48c97 by Nilesh Patra at 2022-09-05T19:15:12+05:30
New upstream version 2022.8.0
- - - - -
82b47809 by Nilesh Patra at 2022-09-05T19:19:26+05:30
Drop d/p/fix-click8.patch
- - - - -
c0e6c8d1 by Nilesh Patra at 2022-09-05T19:21:31+05:30
Versioned B-D on qiime
- - - - -
bf2b8e84 by Nilesh Patra at 2022-09-05T14:07:40+00:00
Ignore test_usage.py during build time tests as the package cannot be checked for usability w/o installing. Usage is being properly validated in autopkgtests
- - - - -
2c94a058 by Nilesh Patra at 2022-09-05T14:07:40+00:00
Drop B-D on python3-nose
- - - - -
5ea0e29b by Nilesh Patra at 2022-09-05T19:48:10+05:30
Update config file as per new q2cli
- - - - -
f7facc8e by Nilesh Patra at 2022-09-05T19:48:10+05:30
Upload to unstable
- - - - -
21 changed files:
- − .github/CONTRIBUTING.md
- − .github/ISSUE_TEMPLATE/1-user-need-help.md
- − .github/ISSUE_TEMPLATE/2-dev-need-help.md
- − .github/ISSUE_TEMPLATE/3-found-bug.md
- − .github/ISSUE_TEMPLATE/4-make-better.md
- − .github/ISSUE_TEMPLATE/5-make-new.md
- − .github/ISSUE_TEMPLATE/6-where-to-go.md
- − .github/SUPPORT.md
- − .github/pull_request_template.md
- − .github/rubric.png
- − .github/workflows/ci.yml
- ci/recipe/meta.yaml
- debian/changelog
- debian/control
- − debian/patches/fix-click8.patch
- debian/patches/series
- debian/rules
- debian/tests/run-unit-test
- q2cli/_version.py
- q2cli/click/option.py
- q2cli/click/parser.py
Changes:
=====================================
.github/CONTRIBUTING.md deleted
=====================================
@@ -1,23 +0,0 @@
-# Contributing to this project
-
-Thanks for thinking of us :heart: :tada: - we would love a helping hand!
-
-## I just have a question
-
-> Note: Please don't file an issue to ask a question. You'll get faster results
-> by using the resources below.
-
-### QIIME 2 Users
-
-Check out the [User Docs](https://docs.qiime2.org) - there are many tutorials,
-walkthroughs, and guides available. If you still need help, please visit us at
-the [QIIME 2 Forum](https://forum.qiime2.org/c/user-support).
-
-### QIIME 2 Developers
-
-Check out the [Developer Docs](https://dev.qiime2.org) - there are many
-tutorials, walkthroughs, and guides available. If you still need help, please
-visit us at the [QIIME 2 Forum](https://forum.qiime2.org/c/dev-discussion).
-
-This document is based heavily on the following:
-https://github.com/atom/atom/blob/master/CONTRIBUTING.md
=====================================
.github/ISSUE_TEMPLATE/1-user-need-help.md deleted
=====================================
@@ -1,14 +0,0 @@
----
-name: I am a user and I need help with QIIME 2...
-about: I am using QIIME 2 and have a question or am experiencing a problem
-
----
-
-Have you had a chance to check out the docs?
-https://docs.qiime2.org
-There are many tutorials, walkthroughs, and guides available.
-
-If you still need help, please visit:
-https://forum.qiime2.org/c/user-support
-
-Help requests filed here will not be answered.
=====================================
.github/ISSUE_TEMPLATE/2-dev-need-help.md deleted
=====================================
@@ -1,12 +0,0 @@
----
-name: I am a developer and I need help with QIIME 2...
-about: I am developing a QIIME 2 plugin or interface and have a question or a problem
-
----
-
-Have you had a chance to check out the developer docs?
-https://dev.qiime2.org
-There are many tutorials, walkthroughs, and guides available.
-
-If you still need help, please visit:
-https://forum.qiime2.org/c/dev-discussion
=====================================
.github/ISSUE_TEMPLATE/3-found-bug.md deleted
=====================================
@@ -1,36 +0,0 @@
----
-name: I am a developer and I found a bug...
-about: I am a developer and I found a bug that I can describe
-
----
-
-**Bug Description**
-A clear and concise description of what the bug is.
-
-**Steps to reproduce the behavior**
-1. Go to '...'
-2. Click on '....'
-3. Scroll down to '....'
-4. See error
-
-**Expected behavior**
-A clear and concise description of what you expected to happen.
-
-**Screenshots**
-If applicable, add screenshots to help explain your problem.
-
-**Computation Environment**
-- OS: [e.g. macOS High Sierra]
-- QIIME 2 Release [e.g. 2018.6]
-
-**Questions**
-1. An enumerated list with any questions about the problem here.
-2. If not applicable, please delete this section.
-
-**Comments**
-1. An enumerated list with any other context or comments about the problem here.
-2. If not applicable, please delete this section.
-
-**References**
-1. An enumerated list of links to relevant references, including forum posts, stack overflow, etc.
-2. If not applicable, please delete this section.
=====================================
.github/ISSUE_TEMPLATE/4-make-better.md deleted
=====================================
@@ -1,26 +0,0 @@
----
-name: I am a developer and I have an idea for an improvement...
-about: I am a developer and I have an idea for an improvement to existing functionality
-
----
-
-**Improvement Description**
-A clear and concise description of what the improvement is.
-
-**Current Behavior**
-Please provide a brief description of the current behavior.
-
-**Proposed Behavior**
-Please provide a brief description of the proposed behavior.
-
-**Questions**
-1. An enumerated list of questions related to the proposal.
-2. If not applicable, please delete this section.
-
-**Comments**
-1. An enumerated list of comments related to the proposal that don't fit anywhere else.
-2. If not applicable, please delete this section.
-
-**References**
-1. An enumerated list of links to relevant references, including forum posts, stack overflow, etc.
-2. If not applicable, please delete this section.
=====================================
.github/ISSUE_TEMPLATE/5-make-new.md deleted
=====================================
@@ -1,26 +0,0 @@
----
-name: I am a developer and I have an idea for a new feature...
-about: I am a developer and I have an idea for new functionality
-
----
-
-**Addition Description**
-A clear and concise description of what the addition is.
-
-**Current Behavior**
-Please provide a brief description of the current behavior, if applicable.
-
-**Proposed Behavior**
-Please provide a brief description of the proposed behavior.
-
-**Questions**
-1. An enumerated list of questions related to the proposal.
-2. If not applicable, please delete this section.
-
-**Comments**
-1. An enumerated list of comments related to the proposal that don't fit anywhere else.
-2. If not applicable, please delete this section.
-
-**References**
-1. An enumerated list of links to relevant references, including forum posts, stack overflow, etc.
-2. If not applicable, please delete this section.
=====================================
.github/ISSUE_TEMPLATE/6-where-to-go.md deleted
=====================================
@@ -1,147 +0,0 @@
----
-name: I don't know where to file my issue...
-about: I am a developer and I don't know which repo to file this in
-
----
-
-The repos within the QIIME 2 GitHub Organization are listed below, with a brief description about the repo.
-
-Sorted alphabetically by repo name.
-
-- The CI automation engine that builds and distributes QIIME 2
- https://github.com/qiime2/busywork/issues
-
-- A Concourse resource for working with conda
- https://github.com/qiime2/conda-channel-resource/issues
-
-- Web app for vanity URLs for QIIME 2 data assets
- https://github.com/qiime2/data.qiime2.org/issues
-
-- The Developer Documentation
- https://github.com/qiime2/dev-docs/issues
-
-- A discourse plugin for handling queued/unqueued topics
- https://github.com/qiime2/discourse-unhandled-tagger/issues
-
-- The User Documentation
- https://github.com/qiime2/docs/issues
-
-- Rendered QIIME 2 environment files for conda
- https://github.com/qiime2/environment-files/issues
-
-- Google Sheets Add-On for validating tabular data
- https://github.com/qiime2/Keemei/issues
-
-- A docker image for linux-based busywork workers
- https://github.com/qiime2/linux-worker-docker/issues
-
-- Official project logos
- https://github.com/qiime2/logos/issues
-
-- The q2-alignment plugin
- https://github.com/qiime2/q2-alignment/issues
-
-- The q2-composition plugin
- https://github.com/qiime2/q2-composition/issues
-
-- The q2-cutadapt plugin
- https://github.com/qiime2/q2-cutadapt/issues
-
-- The q2-dada2 plugin
- https://github.com/qiime2/q2-dada2/issues
-
-- The q2-deblur plugin
- https://github.com/qiime2/q2-deblur/issues
-
-- The q2-demux plugin
- https://github.com/qiime2/q2-demux/issues
-
-- The q2-diversity plugin
- https://github.com/qiime2/q2-diversity/issues
-
-- The q2-diversity-lib plugin
- https://github.com/qiime2/q2-diversity-lib/issues
-
-- The q2-emperor plugin
- https://github.com/qiime2/q2-emperor/issues
-
-- The q2-feature-classifier plugin
- https://github.com/qiime2/q2-feature-classifier/issues
-
-- The q2-feature-table plugin
- https://github.com/qiime2/q2-feature-table/issues
-
-- The q2-fragment-insertion plugin
- https://github.com/qiime2/q2-fragment-insertion/issues
-
-- The q2-gneiss plugin
- https://github.com/qiime2/q2-gneiss/issues
-
-- The q2-longitudinal plugin
- https://github.com/qiime2/q2-longitudinal/issues
-
-- The q2-metadata plugin
- https://github.com/qiime2/q2-metadata/issues
-
-- The q2-phylogeny plugin
- https://github.com/qiime2/q2-phylogeny/issues
-
-- The q2-quality-control plugin
- https://github.com/qiime2/q2-quality-control/issues
-
-- The q2-quality-filter plugin
- https://github.com/qiime2/q2-quality-filter/issues
-
-- The q2-sample-classifier plugin
- https://github.com/qiime2/q2-sample-classifier/issues
-
-- The q2-shogun plugin
- https://github.com/qiime2/q2-shogun/issues
-
-- The q2-taxa plugin
- https://github.com/qiime2/q2-taxa/issues
-
-- The q2-types plugin
- https://github.com/qiime2/q2-types/issues
-
-- The q2-vsearch plugin
- https://github.com/qiime2/q2-vsearch/issues
-
-- The CLI interface
- https://github.com/qiime2/q2cli/issues
-
-- The prototype CWL interface
- https://github.com/qiime2/q2cwl/issues
-
-- The prototype Galaxy interface
- https://github.com/qiime2/q2galaxy/issues
-
-- An internal tool for ensuring header text and copyrights are present
- https://github.com/qiime2/q2lint/issues
-
-- The prototype GUI interface
- https://github.com/qiime2/q2studio/issues
-
-- A base template for use in official QIIME 2 plugins
- https://github.com/qiime2/q2templates/issues
-
-- The read-only web interface at view.qiime2.org
- https://github.com/qiime2/q2view/issues
-
-- The QIIME 2 homepage at qiime2.org
- https://github.com/qiime2/qiime2.github.io/issues
-
-- The QIIME 2 framework
- https://github.com/qiime2/qiime2/issues
-
-- Centralized templates for repo assets
- https://github.com/qiime2/template-repo/issues
-
-- Scripts for building QIIME 2 VMs
- https://github.com/qiime2/vm-playbooks/issues
-
-- Scripts for building QIIME 2 workshop clusters
- https://github.com/qiime2/workshop-playbooks/issues
-
-- The web app that runs workshops.qiime2.org
- https://github.com/qiime2/workshops.qiime2.org/issues
=====================================
.github/SUPPORT.md deleted
=====================================
@@ -1,112 +0,0 @@
-# QIIME 2 Users
-
-Check out the [User Docs](https://docs.qiime2.org) - there are many tutorials,
-walkthroughs, and guides available. If you still need help, please visit us at
-the [QIIME 2 Forum](https://forum.qiime2.org/c/user-support).
-
-# QIIME 2 Developers
-
-Check out the [Developer Docs](https://dev.qiime2.org) - there are many
-tutorials, walkthroughs, and guides available. If you still need help, please
-visit us at the [QIIME 2 Forum](https://forum.qiime2.org/c/dev-discussion).
-
-# General Bug/Issue Triage Discussion
-
-![rubric](./rubric.png?raw=true)
-
-# Projects/Repositories in the QIIME 2 GitHub Organization
-
-Sorted alphabetically by repo name.
-
-- [busywork](https://github.com/qiime2/busywork/issues)
- | The CI automation engine that builds and distributes QIIME 2
-- [conda-channel-resource](https://github.com/qiime2/conda-channel-resource/issues)
- | A Concourse resource for working with conda
-- [data.qiime2.org](https://github.com/qiime2/data.qiime2.org/issues)
- | Web app for vanity URLs for QIIME 2 data assets
-- [dev-docs](https://github.com/qiime2/dev-docs/issues)
- | The Developer Documentation
-- [discourse-unhandled-tagger](https://github.com/qiime2/discourse-unhandled-tagger/issues)
- | A discourse plugin for handling queued/unqueued topics
-- [docs](https://github.com/qiime2/docs/issues)
- | The User Documentation
-- [environment-files](https://github.com/qiime2/environment-files/issues)
- | Rendered QIIME 2 environment files for conda
-- [Keemei](https://github.com/qiime2/Keemei/issues)
- | Google Sheets Add-On for validating tabular data
-- [linux-worker-docker](https://github.com/qiime2/linux-worker-docker/issues)
- | A docker image for linux-based busywork workers
-- [logos](https://github.com/qiime2/logos/issues)
- | Official project logos
-- [q2-alignment](https://github.com/qiime2/q2-alignment/issues)
- | The q2-alignment plugin
-- [q2-composition](https://github.com/qiime2/q2-composition/issues)
- | The q2-composition plugin
-- [q2-cutadapt](https://github.com/qiime2/q2-cutadapt/issues)
- | The q2-cutadapt plugin
-- [q2-dada2](https://github.com/qiime2/q2-dada2/issues)
- | The q2-dada2 plugin
-- [q2-deblur](https://github.com/qiime2/q2-deblur/issues)
- | The q2-deblur plugin
-- [q2-demux](https://github.com/qiime2/q2-demux/issues)
- | The q2-demux plugin
-- [q2-diversity](https://github.com/qiime2/q2-diversity/issues)
- | The q2-diversity plugin
-- [q2-diversity-lib](https://github.com/qiime2/q2-diversity-lib/issues)
- | The q2-diversity-lib plugin
-- [q2-emperor](https://github.com/qiime2/q2-emperor/issues)
- | The q2-emperor plugin
-- [q2-feature-classifier](https://github.com/qiime2/q2-feature-classifier/issues)
- | The q2-feature-classifier plugin
-- [q2-feature-table](https://github.com/qiime2/q2-feature-table/issues)
- | The q2-feature-table plugin
-- [q2-fragment-insertion](https://github.com/qiime2/q2-fragment-insertion/issues)
- | The q2-fragment-insertion plugin
-- [q2-gneiss](https://github.com/qiime2/q2-gneiss/issues)
- | The q2-gneiss plugin
-- [q2-longitudinal](https://github.com/qiime2/q2-longitudinal/issues)
- | The q2-longitudinal plugin
-- [q2-metadata](https://github.com/qiime2/q2-metadata/issues)
- | The q2-metadata plugin
-- [q2-phylogeny](https://github.com/qiime2/q2-phylogeny/issues)
- | The q2-phylogeny plugin
-- [q2-quality-control](https://github.com/qiime2/q2-quality-control/issues)
- | The q2-quality-control plugin
-- [q2-quality-filter](https://github.com/qiime2/q2-quality-filter/issues)
- | The q2-quality-filter plugin
-- [q2-sample-classifier](https://github.com/qiime2/q2-sample-classifier/issues)
- | The q2-sample-classifier plugin
-- [q2-shogun](https://github.com/qiime2/q2-shogun/issues)
- | The q2-shogun plugin
-- [q2-taxa](https://github.com/qiime2/q2-taxa/issues)
- | The q2-taxa plugin
-- [q2-types](https://github.com/qiime2/q2-types/issues)
- | The q2-types plugin
-- [q2-vsearch](https://github.com/qiime2/q2-vsearch/issues)
- | The q2-vsearch plugin
-- [q2cli](https://github.com/qiime2/q2cli/issues)
- | The CLI interface
-- [q2cwl](https://github.com/qiime2/q2cwl/issues)
- | The prototype CWL interface
-- [q2galaxy](https://github.com/qiime2/q2galaxy/issues)
- | The prototype Galaxy interface
-- [q2lint](https://github.com/qiime2/q2lint/issues)
- | An internal tool for ensuring header text and copyrights are present
-- [q2studio](https://github.com/qiime2/q2studio/issues)
- | The prototype GUI interface
-- [q2templates](https://github.com/qiime2/q2templates/issues)
- | A base template for use in official QIIME 2 plugins
-- [q2view](https://github.com/qiime2/q2view/issues)
- | The read-only web interface at view.qiime2.org
-- [qiime2.github.io](https://github.com/qiime2/qiime2.github.io/issues)
- | The QIIME 2 homepage at qiime2.org
-- [qiime2](https://github.com/qiime2/qiime2/issues)
- | The QIIME 2 framework
-- [template-repo](https://github.com/qiime2/template-repo/issues)
- | Centralized templates for repo assets
-- [vm-playbooks](https://github.com/qiime2/vm-playbooks/issues)
- | Scripts for building QIIME 2 VMs
-- [workshop-playbooks](https://github.com/qiime2/workshop-playbooks/issues)
- | Scripts for building QIIME 2 workshop clusters
-- [workshops.qiime2.org](https://github.com/qiime2/workshops.qiime2.org/issues)
- | The web app that runs workshops.qiime2.org
=====================================
.github/pull_request_template.md deleted
=====================================
@@ -1,11 +0,0 @@
-Brief summary of the Pull Request, including any issues it may fix using the GitHub closing syntax:
-
-https://help.github.com/articles/closing-issues-using-keywords/
-
-Also, include any co-authors or contributors using the GitHub coauthor tag:
-
-https://help.github.com/articles/creating-a-commit-with-multiple-authors/
-
----
-
-Include any questions for reviewers, screenshots, sample outputs, etc.
=====================================
.github/rubric.png deleted
=====================================
Binary files a/.github/rubric.png and /dev/null differ
=====================================
.github/workflows/ci.yml deleted
=====================================
@@ -1,55 +0,0 @@
-# This file is automatically generated by busywork.qiime2.org and
-# template-repos - any manual edits made to this file will be erased when
-# busywork performs maintenance updates.
-
-name: ci
-
-on:
- pull_request:
- push:
- branches:
- - master
-
-jobs:
- lint:
- runs-on: ubuntu-latest
- steps:
- - name: checkout source
- uses: actions/checkout at v2
-
- - name: set up python 3.8
- uses: actions/setup-python at v1
- with:
- python-version: 3.8
-
- - name: install dependencies
- run: python -m pip install --upgrade pip
-
- - name: lint
- run: |
- pip install -q https://github.com/qiime2/q2lint/archive/master.zip
- q2lint
- pip install -q flake8
- flake8
-
- build-and-test:
- needs: lint
- strategy:
- matrix:
- os: [ubuntu-latest, macos-latest]
- runs-on: ${{ matrix.os }}
- steps:
- - name: checkout source
- uses: actions/checkout at v2
- with:
- fetch-depth: 0
-
- - name: set up git repo for versioneer
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
-
- - uses: qiime2/action-library-packaging at alpha1
- with:
- package-name: q2cli
- build-target: dev
- additional-tests: QIIMETEST= py.test --pyargs q2cli
- library-token: ${{ secrets.LIBRARY_TOKEN }}
=====================================
ci/recipe/meta.yaml
=====================================
@@ -21,7 +21,7 @@ requirements:
run:
- python {{ python }}
- pip
- - click >=7,<8
+ - click >=8.1
- qiime2 {{ qiime2_epoch }}.*
test:
=====================================
debian/changelog
=====================================
@@ -1,12 +1,16 @@
-q2cli (2022.2.0-1) UNRELEASED; urgency=medium
+q2cli (2022.8.0-1) unstable; urgency=medium
* Team upload.
- * New upstream version
- * Bump versioned Build-Depends: qiime (>= 2022.2.0)
- * Do not fail in case of build time errors as we do for other qiime2
- packages as well
-
- -- Andreas Tille <tille at debian.org> Mon, 18 Jul 2022 13:07:21 +0200
+ * New upstream version 2022.8.0
+ * Drop d/p/fix-click8.patch: merged upstream
+ * Bump versioned Build-Depends: qiime (>= 2022.8.0)
+ * Ignore test_usage.py during build time tests as the package
+ cannot be checked for usability w/o installing. (Closes: #1015136)
+ Usage is being properly validated in autopkgtests
+ * Drop B-D on python3-nose (Closes: #1018606)
+ * d/t/run-unit-test: Update config file as per new q2cli (fixes autopkgtest)
+
+ -- Nilesh Patra <nilesh at debian.org> Mon, 05 Sep 2022 13:56:16 +0000
q2cli (2021.8.0-2) unstable; urgency=medium
=====================================
debian/control
=====================================
@@ -9,9 +9,8 @@ Build-Depends: debhelper-compat (= 13),
python3,
python3-pytest <!nocheck>,
python3-setuptools,
- qiime (>= 2022.2.0),
- python3-click,
- python3-nose
+ qiime (>= 2022.8.0),
+ python3-click
Standards-Version: 4.6.1
Vcs-Browser: https://salsa.debian.org/med-team/q2cli
Vcs-Git: https://salsa.debian.org/med-team/q2cli.git
=====================================
debian/patches/fix-click8.patch deleted
=====================================
@@ -1,96 +0,0 @@
---- a/q2cli/click/option.py
-+++ b/q2cli/click/option.py
-@@ -91,10 +91,10 @@ class GeneratedOption(click.Option):
-
- def _consume_metadata(self, ctx, opts):
- # double consume
-- md_file = super().consume_value(ctx, opts)
-+ md_file, source = super().consume_value(ctx, opts)
- # consume uses self.name, so mutate but backup for after
- backup, self.name = self.name, self.q2_extra_dest
-- md_col = super().consume_value(ctx, opts)
-+ md_col, _ = super().consume_value(ctx, opts)
- self.name = backup
-
- if (md_col is None) != (md_file is None):
-@@ -106,9 +106,9 @@ class GeneratedOption(click.Option):
- ctx=ctx, param=self)
-
- if md_col is None and md_file is None:
-- return None
-+ return (None, source)
- else:
-- return (md_file, md_col)
-+ return ((md_file, md_col), source)
-
- def get_help_record(self, ctx):
- record = super().get_help_record(ctx)
-@@ -125,7 +125,7 @@ class GeneratedOption(click.Option):
- def add_to_parser(self, parser, ctx):
- shared = dict(dest=self.name, nargs=0, obj=self)
- if self.q2_metadata == 'column':
-- parser.add_option(self.opts, action='store', dest=self.name,
-+ parser.add_option(opts=self.opts, action='store', dest=self.name,
- nargs=1, obj=self)
- parser.add_option(self.q2_extra_opts, action='store',
- dest=self.q2_extra_dest, nargs=1, obj=self)
-@@ -134,13 +134,13 @@ class GeneratedOption(click.Option):
- action = 'append_maybe'
- else:
- action = 'store_maybe'
-- parser.add_option(self.opts, action=action, const=True,
-+ parser.add_option(opts=self.opts, action=action, const=True,
- **shared)
- parser.add_option(self.secondary_opts, action=action,
- const=False, **shared)
- elif self.multiple:
- action = 'append_greedy'
-- parser.add_option(self.opts, action='append_greedy', **shared)
-+ parser.add_option(opts=self.opts, action='append_greedy', **shared)
- else:
- super().add_to_parser(parser, ctx)
-
-@@ -149,9 +149,9 @@ class GeneratedOption(click.Option):
- raise click.MissingParameter(ctx=ctx, param=self)
- return super().get_default(ctx)
-
-- def full_process_value(self, ctx, value):
-+ def process_value(self, ctx, value):
- try:
-- return super().full_process_value(ctx, value)
-+ return super().process_value(ctx, value)
- except click.MissingParameter:
- if not (self.q2_prefix == 'o'
- and ctx.params.get('output_dir', False)):
---- a/q2cli/click/parser.py
-+++ b/q2cli/click/parser.py
-@@ -95,8 +95,7 @@ class Q2Parser(parser.OptionParser):
- # < https://github.com/pallets/click/blob/
- # ic6042bf2607c5be22b1efef2e42a94ffd281434c/click/parser.py#L228 >
- # Copyright (c) 2014 by the Pallets team.
-- def add_option(self, opts, dest, action=None, nargs=1, const=None,
-- obj=None):
-+ def add_option(self, obj, opts, dest, action=None, nargs=1, const=None):
- """Adds a new option named `dest` to the parser. The destination
- is not inferred (unlike with optparse) and needs to be explicitly
- provided. Action can be any of ``store``, ``store_const``,
-@@ -104,8 +103,6 @@ class Q2Parser(parser.OptionParser):
- The `obj` can be used to identify the option in the order list
- that is returned from the parser.
- """
-- if obj is None:
-- obj = dest
- opts = [parser.normalize_opt(opt, self.ctx) for opt in opts]
-
- # BEGIN MODIFICATIONS
-@@ -122,8 +119,8 @@ class Q2Parser(parser.OptionParser):
- elif action == 'append_greedy':
- nargs = 0
-
-- option = Q2Option(opts, dest, action=action, nargs=nargs,
-- const=const, obj=obj)
-+ option = Q2Option(obj=obj, opts=opts, dest=dest, action=action, nargs=nargs,
-+ const=const)
- # END MODIFICATIONS
- self._opt_prefixes.update(option.prefixes)
- for opt in option._short_opts:
=====================================
debian/patches/series
=====================================
@@ -1,4 +1,3 @@
call_py3.patch
inform_zsh_users_howto_set_autocompletion.patch
bash-completion-with-hashbang.patch
-fix-click8.patch
=====================================
debian/rules
=====================================
@@ -5,6 +5,7 @@ export LC_ALL=C.UTF-8
export QIIMETEST=1
include /usr/share/dpkg/default.mk
+export PYBUILD_TEST_ARGS=--ignore=q2cli/tests/test_usage.py
%:
dh $@ --with python3 --buildsystem=pybuild
@@ -14,12 +15,3 @@ override_dh_install:
mkdir -p debian/$(DEB_SOURCE)/usr/share/bash-completion/completions
mv debian/$(DEB_SOURCE)/usr/bin/tab-qiime debian/$(DEB_SOURCE)/usr/share/bash-completion/completions/qiime
chmod -x debian/$(DEB_SOURCE)/usr/share/bash-completion/completions/qiime
-
-# FIXME: similarly to the qiime package, the build time testing fails, as the
-# Qiime plugin system is not fully available at this point of the package
-# construction. The test suite is only run at autopkgtest time, but this
-# is not ideal, since the only tested python version is the default one.
-override_dh_auto_test:
-ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
- dh_auto_test -- -s custom --test-args="cd {build_dir}; py.test-3 --cov=q2cli" || true
-endif
=====================================
debian/tests/run-unit-test
=====================================
@@ -87,7 +87,7 @@ set -v
qiime dev export-default-theme --output-path file.theme
diff file.theme - <<-END
[option]
- fg = blue
+ fg = bright_blue
[type]
fg = green
@@ -96,7 +96,7 @@ set -v
fg = magenta
[command]
- fg = blue
+ fg = bright_blue
[emphasis]
underline = True
=====================================
q2cli/_version.py
=====================================
@@ -23,9 +23,9 @@ def get_keywords():
# setup.py/versioneer.py will grep for the variable names, so they must
# each be defined on a line of their own. _version.py will just call
# get_keywords().
- git_refnames = " (tag: 2022.2.0)"
- git_full = "4c4b5ca74b59534771778e0f0c6f63410a9967af"
- git_date = "2022-02-18 19:48:00 +0000"
+ git_refnames = " (tag: 2022.8.0)"
+ git_full = "469e5eb69d7fe6b213f628d299fff1545cdec9f7"
+ git_date = "2022-08-22 21:21:57 +0000"
keywords = {"refnames": git_refnames, "full": git_full, "date": git_date}
return keywords
=====================================
q2cli/click/option.py
=====================================
@@ -54,7 +54,18 @@ class GeneratedOption(click.Option):
else:
attrs['type'] = None
+ # This nonsense:
+ # https://github.com/pallets/click/blob
+ # /08f71b08e2b7ee9b1ea27daf6d3040999fc68551
+ # /src/click/core.py#L2576-L2584
+ if is_bool_flag and multiple is not None:
+ to_add_multiple = attrs.pop('multiple')
+
super().__init__(**attrs)
+
+ if is_bool_flag and multiple is not None:
+ self.multiple = to_add_multiple
+
# put things back the way they _should_ be after evading __DEBUG__
self.is_bool_flag = is_bool_flag
self.type = click_type
@@ -91,10 +102,11 @@ class GeneratedOption(click.Option):
def _consume_metadata(self, ctx, opts):
# double consume
- md_file = super().consume_value(ctx, opts)
+ md_file, source = super().consume_value(ctx, opts)
# consume uses self.name, so mutate but backup for after
backup, self.name = self.name, self.q2_extra_dest
- md_col = super().consume_value(ctx, opts)
+ md_col, _ = super().consume_value(ctx, opts)
+
self.name = backup
if (md_col is None) != (md_file is None):
@@ -106,9 +118,9 @@ class GeneratedOption(click.Option):
ctx=ctx, param=self)
if md_col is None and md_file is None:
- return None
+ return (None, source)
else:
- return (md_file, md_col)
+ return ((md_file, md_col), source)
def get_help_record(self, ctx):
record = super().get_help_record(ctx)
@@ -125,33 +137,34 @@ class GeneratedOption(click.Option):
def add_to_parser(self, parser, ctx):
shared = dict(dest=self.name, nargs=0, obj=self)
if self.q2_metadata == 'column':
- parser.add_option(self.opts, action='store', dest=self.name,
+ parser.add_option(opts=self.opts, action='store', dest=self.name,
nargs=1, obj=self)
- parser.add_option(self.q2_extra_opts, action='store',
+ parser.add_option(opts=self.q2_extra_opts, action='store',
dest=self.q2_extra_dest, nargs=1, obj=self)
elif self.is_bool_flag:
if self.multiple:
action = 'append_maybe'
else:
action = 'store_maybe'
- parser.add_option(self.opts, action=action, const=True,
+ parser.add_option(opts=self.opts, action=action, const=True,
**shared)
- parser.add_option(self.secondary_opts, action=action,
+ parser.add_option(opts=self.secondary_opts, action=action,
const=False, **shared)
elif self.multiple:
action = 'append_greedy'
- parser.add_option(self.opts, action='append_greedy', **shared)
+ parser.add_option(opts=self.opts, action='append_greedy', **shared)
else:
super().add_to_parser(parser, ctx)
- def get_default(self, ctx):
- if self.required:
+ def get_default(self, ctx, call=True):
+ if self.required and not ctx.resilient_parsing and not (
+ self.q2_prefix == 'o' and ctx.params.get('output_dir', False)):
raise click.MissingParameter(ctx=ctx, param=self)
- return super().get_default(ctx)
+ return super().get_default(ctx, call=call)
- def full_process_value(self, ctx, value):
+ def process_value(self, ctx, value):
try:
- return super().full_process_value(ctx, value)
+ return super().process_value(ctx, value)
except click.MissingParameter:
if not (self.q2_prefix == 'o'
and ctx.params.get('output_dir', False)):
=====================================
q2cli/click/parser.py
=====================================
@@ -95,8 +95,7 @@ class Q2Parser(parser.OptionParser):
# < https://github.com/pallets/click/blob/
# ic6042bf2607c5be22b1efef2e42a94ffd281434c/click/parser.py#L228 >
# Copyright (c) 2014 by the Pallets team.
- def add_option(self, opts, dest, action=None, nargs=1, const=None,
- obj=None):
+ def add_option(self, obj, opts, dest, action=None, nargs=1, const=None):
"""Adds a new option named `dest` to the parser. The destination
is not inferred (unlike with optparse) and needs to be explicitly
provided. Action can be any of ``store``, ``store_const``,
@@ -104,8 +103,6 @@ class Q2Parser(parser.OptionParser):
The `obj` can be used to identify the option in the order list
that is returned from the parser.
"""
- if obj is None:
- obj = dest
opts = [parser.normalize_opt(opt, self.ctx) for opt in opts]
# BEGIN MODIFICATIONS
@@ -122,8 +119,8 @@ class Q2Parser(parser.OptionParser):
elif action == 'append_greedy':
nargs = 0
- option = Q2Option(opts, dest, action=action, nargs=nargs,
- const=const, obj=obj)
+ option = Q2Option(obj=obj, opts=opts, dest=dest, action=action,
+ nargs=nargs, const=const)
# END MODIFICATIONS
self._opt_prefixes.update(option.prefixes)
for opt in option._short_opts:
View it on GitLab: https://salsa.debian.org/med-team/q2cli/-/compare/a6611302a0cf1a50269275eb0b4498cb65d0f892...f7facc8e6c0d9d19f48c1c03fd1a7c52cb080b27
--
View it on GitLab: https://salsa.debian.org/med-team/q2cli/-/compare/a6611302a0cf1a50269275eb0b4498cb65d0f892...f7facc8e6c0d9d19f48c1c03fd1a7c52cb080b27
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20220905/87ad351e/attachment-0001.htm>
More information about the debian-med-commit
mailing list