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

CI/BUG: NCBI API rate limit exceeded #74

Open
thermokarst opened this issue Sep 17, 2020 · 0 comments
Open

CI/BUG: NCBI API rate limit exceeded #74

thermokarst opened this issue Sep 17, 2020 · 0 comments

Comments

@thermokarst
Copy link
Contributor

thermokarst commented Sep 17, 2020

Logs:

https://github.com/bokulich-lab/RESCRIPt/runs/1127331123

Relevant subsection:

2020-09-17T07:55:26.0796330Z [command]/bin/bash /tmp/2020817-2640-717k0p.u5tdk.sh
2020-09-17T07:55:28.7487757Z ============================= test session starts ==============================
2020-09-17T07:55:28.7489124Z platform linux -- Python 3.6.11, pytest-6.0.2, py-1.9.0, pluggy-0.13.1
2020-09-17T07:55:28.7489901Z rootdir: /home/runner/work/RESCRIPt/RESCRIPt
2020-09-17T07:55:28.7490429Z collected 143 items
2020-09-17T07:55:28.7490917Z 
2020-09-17T07:55:30.7171971Z tests/test_cross_validate.py ..............                              [  9%]
2020-09-17T07:55:30.7323262Z tests/test_degap.py ..                                                   [ 11%]
2020-09-17T07:55:32.7420963Z tests/test_derep.py .............                                        [ 20%]
2020-09-17T07:55:34.1696564Z tests/test_evaluate.py .............                                     [ 29%]
2020-09-17T07:55:35.1489782Z tests/test_filter_length.py .............................                [ 49%]
2020-09-17T07:56:11.6230159Z tests/test_get_data.py ...                                               [ 51%]
2020-09-17T07:56:12.9456416Z tests/test_merge.py .............                                        [ 60%]
2020-09-17T07:56:49.8844414Z tests/test_ncbi.py .....F.                                               [ 65%]
2020-09-17T07:56:50.1811833Z tests/test_orient.py ...                                                 [ 67%]
2020-09-17T07:56:51.4930550Z tests/test_parse_silva_taxonomy.py ..............                        [ 77%]
2020-09-17T07:56:51.5290260Z tests/test_screenseq.py .....                                            [ 81%]
2020-09-17T07:56:51.5817501Z types/tests/test_methods.py .                                            [ 81%]
2020-09-17T07:56:51.6674875Z types/tests/test_types_formats_transformers.py ......................... [ 99%]
2020-09-17T07:56:51.6843012Z .                                                                        [100%]
2020-09-17T07:56:51.6843455Z 
2020-09-17T07:56:51.6843863Z =================================== FAILURES ===================================
2020-09-17T07:56:51.6844375Z ________________ TestNCBI.test_get_ncbi_data_query_mushroom_two ________________
2020-09-17T07:56:51.6844784Z 
2020-09-17T07:56:51.6845375Z self = <rescript.tests.test_ncbi.TestNCBI testMethod=test_get_ncbi_data_query_mushroom_two>
2020-09-17T07:56:51.6845931Z 
2020-09-17T07:56:51.6846357Z     def test_get_ncbi_data_query_mushroom_two(self):
2020-09-17T07:56:51.6846844Z         seq, tax = self.get_ncbi_data(
2020-09-17T07:56:51.6847986Z             query='MT345279.1',
2020-09-17T07:56:51.6848792Z             ranks=['domain', 'phylum', 'subphylum', 'superfamily', 'family',
2020-09-17T07:56:51.6852430Z >                  'subfamily', 'genus', 'species', 'subspecies']
2020-09-17T07:56:51.6852704Z         )
2020-09-17T07:56:51.6852817Z 
2020-09-17T07:56:51.6853338Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/rescript/tests/test_ncbi.py:105: 
2020-09-17T07:56:51.6853727Z _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
2020-09-17T07:56:51.6854120Z <decorator-gen-179>:2: in get_ncbi_data
2020-09-17T07:56:51.6854379Z     ???
2020-09-17T07:56:51.6854926Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/qiime2/sdk/action.py:245: in bound_callable
2020-09-17T07:56:51.6855406Z     output_types, provenance)
2020-09-17T07:56:51.6856050Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/qiime2/sdk/action.py:390: in _callable_executor_
2020-09-17T07:56:51.6856557Z     output_views = self._callable(**view_args)
2020-09-17T07:56:51.6857168Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/rescript/ncbi.py:82: in get_ncbi_data
2020-09-17T07:56:51.6857665Z     taxids, ranks, rank_propagation, entrez_delay)
2020-09-17T07:56:51.6858318Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/rescript/ncbi.py:198: in get_taxonomies
2020-09-17T07:56:51.6858795Z     records = _get(params, ids, entrez_delay)
2020-09-17T07:56:51.6859373Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/rescript/ncbi.py:132: in _get
2020-09-17T07:56:51.6859775Z     content = parse(r.content)
2020-09-17T07:56:51.6860013Z _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
2020-09-17T07:56:51.6860159Z 
2020-09-17T07:56:51.6860617Z xml_input = b'{"error":"API rate limit exceeded","api-key":"40.79.21.212","count":"4","limit":"3"}\n'
2020-09-17T07:56:51.6860959Z encoding = None
2020-09-17T07:56:51.6861596Z expat = <module 'xml.parsers.expat' from '/home/runner/miniconda/envs/testing/lib/python3.6/xml/parsers/expat.py'>
2020-09-17T07:56:51.6862233Z process_namespaces = False, namespace_separator = None, disable_entities = True
2020-09-17T07:56:51.6862777Z kwargs = {}, handler = <xmltodict._DictSAXHandler object at 0x7efeb3173f28>
2020-09-17T07:56:51.6863276Z parser = <pyexpat.xmlparser object at 0x7efeb3148b88>
2020-09-17T07:56:51.6863950Z feature = 'http://apache.org/xml/features/disallow-doctype-decl'
2020-09-17T07:56:51.6864296Z 
2020-09-17T07:56:51.6864631Z     def parse(xml_input, encoding=None, expat=expat, process_namespaces=False,
2020-09-17T07:56:51.6865240Z               namespace_separator=':', disable_entities=True, **kwargs):
2020-09-17T07:56:51.6865673Z         """Parse the given XML input and convert it into a dictionary.
2020-09-17T07:56:51.6866133Z     
2020-09-17T07:56:51.6866570Z         `xml_input` can either be a `string` or a file-like object.
2020-09-17T07:56:51.6866846Z     
2020-09-17T07:56:51.6867242Z         If `xml_attribs` is `True`, element attributes are put in the dictionary
2020-09-17T07:56:51.6867926Z         among regular child elements, using `@` as a prefix to avoid collisions. If
2020-09-17T07:56:51.6868352Z         set to `False`, they are just ignored.
2020-09-17T07:56:51.6868575Z     
2020-09-17T07:56:51.6868800Z         Simple example::
2020-09-17T07:56:51.6869006Z     
2020-09-17T07:56:51.6869218Z             >>> import xmltodict
2020-09-17T07:56:51.6869509Z             >>> doc = xmltodict.parse(\"\"\"
2020-09-17T07:56:51.6869771Z             ... <a prop="x">
2020-09-17T07:56:51.6869963Z             ...   <b>1</b>
2020-09-17T07:56:51.6870144Z             ...   <b>2</b>
2020-09-17T07:56:51.6870327Z             ... </a>
2020-09-17T07:56:51.6870500Z             ... \"\"\")
2020-09-17T07:56:51.6870996Z             >>> doc['a']['@prop']
2020-09-17T07:56:51.6871283Z             u'x'
2020-09-17T07:56:51.6871559Z             >>> doc['a']['b']
2020-09-17T07:56:51.6871818Z             [u'1', u'2']
2020-09-17T07:56:51.6871988Z     
2020-09-17T07:56:51.6872287Z         If `item_depth` is `0`, the function returns a dictionary for the root
2020-09-17T07:56:51.6872759Z         element (default behavior). Otherwise, it calls `item_callback` every time
2020-09-17T07:56:51.6873223Z         an item at the specified depth is found and returns `None` in the end
2020-09-17T07:56:51.6873557Z         (streaming mode).
2020-09-17T07:56:51.6873757Z     
2020-09-17T07:56:51.6874091Z         The callback function receives two parameters: the `path` from the document
2020-09-17T07:56:51.6874698Z         root to the item (name-attribs pairs), and the `item` (dict). If the
2020-09-17T07:56:51.6875447Z         callback's return value is false-ish, parsing will be stopped with the
2020-09-17T07:56:51.6875913Z         :class:`ParsingInterrupted` exception.
2020-09-17T07:56:51.6876212Z     
2020-09-17T07:56:51.6876427Z         Streaming example::
2020-09-17T07:56:51.6876636Z     
2020-09-17T07:56:51.6876842Z             >>> def handle(path, item):
2020-09-17T07:56:51.6877260Z             ...     print('path:%s item:%s' % (path, item))
2020-09-17T07:56:51.6877512Z             ...     return True
2020-09-17T07:56:51.6877699Z             ...
2020-09-17T07:56:51.6877926Z             >>> xmltodict.parse(\"\"\"
2020-09-17T07:56:51.6878167Z             ... <a prop="x">
2020-09-17T07:56:51.6878351Z             ...   <b>1</b>
2020-09-17T07:56:51.6878525Z             ...   <b>2</b>
2020-09-17T07:56:51.6878779Z             ... </a>\"\"\", item_depth=2, item_callback=handle)
2020-09-17T07:56:51.6879217Z             path:[(u'a', {u'prop': u'x'}), (u'b', None)] item:1
2020-09-17T07:56:51.6879618Z             path:[(u'a', {u'prop': u'x'}), (u'b', None)] item:2
2020-09-17T07:56:51.6879835Z     
2020-09-17T07:56:51.6880162Z         The optional argument `postprocessor` is a function that takes `path`,
2020-09-17T07:56:51.6880649Z         `key` and `value` as positional arguments and returns a new `(key, value)`
2020-09-17T07:56:51.6881108Z         pair where both `key` and `value` may have changed. Usage example::
2020-09-17T07:56:51.6881398Z     
2020-09-17T07:56:51.6881649Z             >>> def postprocessor(path, key, value):
2020-09-17T07:56:51.6881895Z             ...     try:
2020-09-17T07:56:51.6882250Z             ...         return key + ':int', int(value)
2020-09-17T07:56:51.6882558Z             ...     except (ValueError, TypeError):
2020-09-17T07:56:51.6882847Z             ...         return key, value
2020-09-17T07:56:51.6883455Z             >>> xmltodict.parse('<a><b>1</b><b>2</b><b>x</b></a>',
2020-09-17T07:56:51.6883836Z             ...                 postprocessor=postprocessor)
2020-09-17T07:56:51.6884387Z             OrderedDict([(u'a', OrderedDict([(u'b:int', [1, 2]), (u'b', u'x')]))])
2020-09-17T07:56:51.6884676Z     
2020-09-17T07:56:51.6885010Z         You can pass an alternate version of `expat` (such as `defusedexpat`) by
2020-09-17T07:56:51.6885537Z         using the `expat` parameter. E.g:
2020-09-17T07:56:51.6885779Z     
2020-09-17T07:56:51.6886059Z             >>> import defusedexpat
2020-09-17T07:56:51.6886676Z             >>> xmltodict.parse('<a>hello</a>', expat=defusedexpat.pyexpat)
2020-09-17T07:56:51.6887238Z             OrderedDict([(u'a', u'hello')])
2020-09-17T07:56:51.6887475Z     
2020-09-17T07:56:51.6887788Z         You can use the force_list argument to force lists to be created even
2020-09-17T07:56:51.6888238Z         when there is only a single child of a given level of hierarchy. The
2020-09-17T07:56:51.6888693Z         force_list argument is a tuple of keys. If the key for a given level
2020-09-17T07:56:51.6889158Z         of hierarchy is in the force_list argument, that level of hierarchy
2020-09-17T07:56:51.6889769Z         will have a list as a child (even if there is only one sub-element).
2020-09-17T07:56:51.6890252Z         The index_keys operation takes precendence over this. This is applied
2020-09-17T07:56:51.6890888Z         after any user-supplied postprocessor has already run.
2020-09-17T07:56:51.6891217Z     
2020-09-17T07:56:51.6891453Z             For example, given this input:
2020-09-17T07:56:51.6891712Z             <servers>
2020-09-17T07:56:51.6891921Z               <server>
2020-09-17T07:56:51.6892145Z                 <name>host1</name>
2020-09-17T07:56:51.6892375Z                 <os>Linux</os>
2020-09-17T07:56:51.6892607Z                 <interfaces>
2020-09-17T07:56:51.6892847Z                   <interface>
2020-09-17T07:56:51.6893079Z                     <name>em0</name>
2020-09-17T07:56:51.6893339Z                     <ip_address>10.0.0.1</ip_address>
2020-09-17T07:56:51.6893582Z                   </interface>
2020-09-17T07:56:51.6893822Z                 </interfaces>
2020-09-17T07:56:51.6894047Z               </server>
2020-09-17T07:56:51.6894253Z             </servers>
2020-09-17T07:56:51.6894444Z     
2020-09-17T07:56:51.6894882Z             If called with force_list=('interface',), it will produce
2020-09-17T07:56:51.6895222Z             this dictionary:
2020-09-17T07:56:51.6895569Z             {'servers':
2020-09-17T07:56:51.6895884Z               {'server':
2020-09-17T07:56:51.6896210Z                 {'name': 'host1',
2020-09-17T07:56:51.6896530Z                  'os': 'Linux'},
2020-09-17T07:56:51.6896867Z                  'interfaces':
2020-09-17T07:56:51.6897215Z                   {'interface':
2020-09-17T07:56:51.6897599Z                     [ {'name': 'em0', 'ip_address': '10.0.0.1' } ] } } }
2020-09-17T07:56:51.6897825Z     
2020-09-17T07:56:51.6898306Z             `force_list` can also be a callable that receives `path`, `key` and
2020-09-17T07:56:51.6898774Z             `value`. This is helpful in cases where the logic that decides whether
2020-09-17T07:56:51.6899195Z             a list should be forced is more complex.
2020-09-17T07:56:51.6899454Z         """
2020-09-17T07:56:51.6899846Z         handler = _DictSAXHandler(namespace_separator=namespace_separator,
2020-09-17T07:56:51.6900270Z                                   **kwargs)
2020-09-17T07:56:51.6900562Z         if isinstance(xml_input, _unicode):
2020-09-17T07:56:51.6900862Z             if not encoding:
2020-09-17T07:56:51.6901416Z                 encoding = 'utf-8'
2020-09-17T07:56:51.6901730Z             xml_input = xml_input.encode(encoding)
2020-09-17T07:56:51.6902067Z         if not process_namespaces:
2020-09-17T07:56:51.6902375Z             namespace_separator = None
2020-09-17T07:56:51.6902724Z         parser = expat.ParserCreate(
2020-09-17T07:56:51.6903031Z             encoding,
2020-09-17T07:56:51.6903269Z             namespace_separator
2020-09-17T07:56:51.6903494Z         )
2020-09-17T07:56:51.6903666Z         try:
2020-09-17T07:56:51.6903943Z             parser.ordered_attributes = True
2020-09-17T07:56:51.6904292Z         except AttributeError:
2020-09-17T07:56:51.6904811Z             # Jython's expat does not support ordered_attributes
2020-09-17T07:56:51.6905201Z             pass
2020-09-17T07:56:51.6905783Z         parser.StartNamespaceDeclHandler = handler.startNamespaceDecl
2020-09-17T07:56:51.6906678Z         parser.StartElementHandler = handler.startElement
2020-09-17T07:56:51.6907352Z         parser.EndElementHandler = handler.endElement
2020-09-17T07:56:51.6908016Z         parser.CharacterDataHandler = handler.characters
2020-09-17T07:56:51.6908516Z         parser.buffer_text = True
2020-09-17T07:56:51.6908805Z         if disable_entities:
2020-09-17T07:56:51.6909033Z             try:
2020-09-17T07:56:51.6909503Z                 # Attempt to disable DTD in Jython's expat parser (Xerces-J).
2020-09-17T07:56:51.6910204Z                 feature = "http://apache.org/xml/features/disallow-doctype-decl"
2020-09-17T07:56:51.6910761Z                 parser._reader.setFeature(feature, True)
2020-09-17T07:56:51.6911150Z             except AttributeError:
2020-09-17T07:56:51.6911467Z                 # For CPython / expat parser.
2020-09-17T07:56:51.6912006Z                 # Anything not handled ends up here and entities aren't expanded.
2020-09-17T07:56:51.6912484Z                 parser.DefaultHandler = lambda x: None
2020-09-17T07:56:51.6913134Z                 # Expects an integer return; zero means failure -> expat.ExpatError.
2020-09-17T07:56:51.6913755Z                 parser.ExternalEntityRefHandler = lambda *x: 1
2020-09-17T07:56:51.6914349Z         if hasattr(xml_input, 'read'):
2020-09-17T07:56:51.6914674Z             parser.ParseFile(xml_input)
2020-09-17T07:56:51.6914947Z         else:
2020-09-17T07:56:51.6920272Z >           parser.Parse(xml_input, True)
2020-09-17T07:56:51.6921390Z E           xml.parsers.expat.ExpatError: not well-formed (invalid token): line 1, column 0
2020-09-17T07:56:51.6921830Z 
2020-09-17T07:56:51.6922368Z ../../../miniconda/envs/testing/lib/python3.6/site-packages/xmltodict.py:327: ExpatError
2020-09-17T07:56:51.6922837Z =============================== warnings summary ===============================
2020-09-17T07:56:51.6923186Z tests/test_cross_validate.py: 210 warnings
2020-09-17T07:56:51.6923530Z tests/test_degap.py: 24 warnings
2020-09-17T07:56:51.6923841Z tests/test_derep.py: 45 warnings
2020-09-17T07:56:51.6924163Z tests/test_evaluate.py: 32 warnings
2020-09-17T07:56:51.6924509Z tests/test_filter_length.py: 64 warnings
2020-09-17T07:56:51.6924835Z tests/test_ncbi.py: 20 warnings
2020-09-17T07:56:51.6925146Z tests/test_orient.py: 76 warnings
2020-09-17T07:56:51.6925480Z tests/test_screenseq.py: 44 warnings
2020-09-17T07:56:51.6925837Z types/tests/test_methods.py: 64 warnings
2020-09-17T07:56:51.6926261Z types/tests/test_types_formats_transformers.py: 128 warnings
2020-09-17T07:56:51.6927297Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/sequence/_sequence.py:427: DeprecationWarning: tostring() is deprecated. Use tobytes() instead.
2020-09-17T07:56:51.6928213Z     return self._bytes.tostring()
2020-09-17T07:56:51.6928427Z 
2020-09-17T07:56:51.6928846Z tests/test_cross_validate.py::TestPipelines::test_evaluate_classifications
2020-09-17T07:56:51.6929578Z tests/test_cross_validate.py::TestPipelines::test_evaluate_classifications_expected_id_superset_valid
2020-09-17T07:56:51.6930391Z tests/test_cross_validate.py::TestPipelines::test_evaluate_classifications_observed_id_superset_invalid
2020-09-17T07:56:51.6931278Z tests/test_cross_validate.py::TestPipelines::test_evaluate_cross_validate_k3
2020-09-17T07:56:51.6931867Z tests/test_cross_validate.py::TestPipelines::test_evaluate_fit_classifier
2020-09-17T07:56:51.6932491Z tests/test_evaluate.py::TestEvaluateUtilities::test_process_labels_empty
2020-09-17T07:56:51.6934217Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/rescript/evaluate.py:76: UserWarning: The lists of input taxonomies and labels are different lengths. Additional taxonomies will be labeled numerically by their order in the inputs. Note that if these numbers match existing labels, those data will be grouped in the visualization.
2020-09-17T07:56:51.6935544Z     warnings.warn(msg, UserWarning)
2020-09-17T07:56:51.6935784Z 
2020-09-17T07:56:51.6936169Z tests/test_cross_validate.py::TestPipelines::test_evaluate_fit_classifier
2020-09-17T07:56:51.6938183Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/q2_feature_classifier/classifier.py:102: UserWarning: The TaxonomicClassifier artifact that results from this method was trained using scikit-learn version 0.23.1. It cannot be used with other versions of scikit-learn. (While the classifier may complete successfully, the results will be unreliable.)
2020-09-17T07:56:51.6939533Z     warnings.warn(warning, UserWarning)
2020-09-17T07:56:51.6939798Z 
2020-09-17T07:56:51.6940130Z tests/test_derep.py::TestDerep::test_dereplicate_numericIDs
2020-09-17T07:56:51.6940622Z tests/test_derep.py::TestDerep::test_dereplicate_uniq
2020-09-17T07:56:51.6941254Z tests/test_derep.py::TestDerep::test_dereplicate_uniq
2020-09-17T07:56:51.6941710Z tests/test_derep.py::TestDerep::test_dereplicate_uniq_99_perc
2020-09-17T07:56:51.6942183Z tests/test_derep.py::TestDerep::test_dereplicate_uniq_99_perc
2020-09-17T07:56:51.6943111Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/rescript/dereplicate.py:116: SettingWithCopyWarning: 
2020-09-17T07:56:51.6943817Z   A value is trying to be set on a copy of a slice from a DataFrame.
2020-09-17T07:56:51.6944252Z   Try using .loc[row_indexer,col_indexer] = value instead
2020-09-17T07:56:51.6944547Z   
2020-09-17T07:56:51.6945482Z   See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
2020-09-17T07:56:51.6947562Z     uc['Taxon'] = uc['seqID'].apply(lambda x: taxa.loc[x])
2020-09-17T07:56:51.6947872Z 
2020-09-17T07:56:51.6948315Z tests/test_derep.py::TestDerep::test_dereplicate_numericIDs
2020-09-17T07:56:51.6948936Z tests/test_derep.py::TestDerep::test_dereplicate_uniq
2020-09-17T07:56:51.6949821Z tests/test_derep.py::TestDerep::test_dereplicate_uniq
2020-09-17T07:56:51.6950254Z tests/test_derep.py::TestDerep::test_dereplicate_uniq_99_perc
2020-09-17T07:56:51.6950711Z tests/test_derep.py::TestDerep::test_dereplicate_uniq_99_perc
2020-09-17T07:56:51.6951574Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/rescript/dereplicate.py:117: SettingWithCopyWarning: 
2020-09-17T07:56:51.6952243Z   A value is trying to be set on a copy of a slice from a DataFrame.
2020-09-17T07:56:51.6952653Z   Try using .loc[row_indexer,col_indexer] = value instead
2020-09-17T07:56:51.6952930Z   
2020-09-17T07:56:51.6953796Z   See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
2020-09-17T07:56:51.6954767Z     uc['centroidtaxa'] = uc['centroidID'].apply(lambda x: taxa.loc[x])
2020-09-17T07:56:51.6955045Z 
2020-09-17T07:56:51.6955549Z tests/test_evaluate.py::TestEvaluateSeqs::test_evaluate_seqs_visualizer
2020-09-17T07:56:51.6957106Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/rescript/evaluate.py:76: UserWarning: The lists of input sequences and labels are different lengths. Additional sequences will be labeled numerically by their order in the inputs. Note that if these numbers match existing labels, those data will be grouped in the visualization.
2020-09-17T07:56:51.6958213Z     warnings.warn(msg, UserWarning)
2020-09-17T07:56:51.6958426Z 
2020-09-17T07:56:51.6958857Z tests/test_filter_length.py::TestFilterByTaxonomy::test_filter_seqs_length_by_taxon_no_failures
2020-09-17T07:56:51.6960446Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/qiime2-archive-q2bek65f/6a14d996-19a1-45fb-8b7a-737c73685ce6/data/dna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6961674Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6961999Z 
2020-09-17T07:56:51.6962439Z tests/test_filter_length.py::TestFilterByTaxonomy::test_filter_seqs_length_by_taxon_no_seqs_pass_filter
2020-09-17T07:56:51.6964279Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/qiime2-archive-dw02fz5f/5fca65f3-674d-4a5f-b175-8d33a894a62c/data/dna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6965536Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6965844Z 
2020-09-17T07:56:51.6966254Z tests/test_filter_length.py::TestFilterGlobally::test_filter_seqs_length_all_filtered_out
2020-09-17T07:56:51.6967862Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/qiime2-archive-5054xhrm/eca0544b-b263-4cce-804f-c98c10ea635b/data/dna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6969347Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6969690Z 
2020-09-17T07:56:51.6970106Z tests/test_filter_length.py::TestFilterGlobally::test_filter_seqs_length_no_failures
2020-09-17T07:56:51.6971892Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/qiime2-archive-zh0holl6/4403e41a-2a07-4155-b62e-0b88be2bdaef/data/dna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6973101Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6973410Z 
2020-09-17T07:56:51.6973706Z tests/test_get_data.py::TestGetSILVA::test_get_silva_data
2020-09-17T07:56:51.6974927Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/q2-RNAFASTAFormat-db5v51nj'> does not look like a fasta file
2020-09-17T07:56:51.6975979Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6976304Z 
2020-09-17T07:56:51.6976596Z tests/test_get_data.py::TestGetSILVA::test_get_silva_data
2020-09-17T07:56:51.6978025Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/q2-RNASequencesDirectoryFormat-usr_jxwf/rna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6979471Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6979794Z 
2020-09-17T07:56:51.6980104Z tests/test_get_data.py::TestGetSILVA::test_get_silva_data
2020-09-17T07:56:51.6981356Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/q2-RNAFASTAFormat-zj32_lqa'> does not look like a fasta file
2020-09-17T07:56:51.6982595Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6982919Z 
2020-09-17T07:56:51.6983212Z tests/test_get_data.py::TestGetSILVA::test_get_silva_data
2020-09-17T07:56:51.6984704Z   /home/runner/miniconda/envs/testing/lib/python3.6/site-packages/skbio/io/registry.py:548: FormatIdentificationWarning: <_io.BufferedReader name='/tmp/q2-RNASequencesDirectoryFormat-4hihakeb/rna-sequences.fasta'> does not look like a fasta file
2020-09-17T07:56:51.6986017Z     % (file, fmt), FormatIdentificationWarning)
2020-09-17T07:56:51.6986330Z 
2020-09-17T07:56:51.6986814Z -- Docs: https://docs.pytest.org/en/stable/warnings.html
2020-09-17T07:56:51.6987239Z =========================== short test summary info ============================
2020-09-17T07:56:51.6987925Z FAILED tests/test_ncbi.py::TestNCBI::test_get_ncbi_data_query_mushroom_two - ...
2020-09-17T07:56:51.6988335Z ============ 1 failed, 142 passed, 733 warnings in 85.28s (0:01:25) ============
2020-09-17T07:56:51.9957401Z ##[error]The process '/bin/bash' failed with exit code 1

additional tests failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant