Hello community,

here is the log from the commit of package python-nox for openSUSE:Factory 
checked in at 2020-03-30 23:04:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nox (Old)
 and      /work/SRC/openSUSE:Factory/.python-nox.new.3160 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-nox"

Mon Mar 30 23:04:47 2020 rev:3 rq:789709 version:2019.11.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nox/python-nox.changes    2019-10-17 
12:21:44.895253731 +0200
+++ /work/SRC/openSUSE:Factory/.python-nox.new.3160/python-nox.changes  
2020-03-30 23:04:54.388227892 +0200
@@ -1,0 +2,17 @@
+Mon Mar 30 10:05:56 UTC 2020 - [email protected]
+
+- version update to 2019.11.9
+  - Fix example installation call for pip. (#259)
+  - Allow colorlog 4. (#257)
+  - Order Pythons in descending version in `appveyor.yml`. (#258)
+  - Add link to GitHub Action for Nox. (#255)
+  - Use double "\`" for inline code. (#254)
+  - Add types to `_option_set.py`. (#249)
+  - Add type hints to `tasks.py`. (#241)
+  - Fix typo (virtulenvs). (#247)
+  - Replace flake8 sorter with isort. (#242)
+  - Pass `VIRTUAL_ENV` environment variable to commands executed in a 
virtualenv. (#245)
+  - Fix docs to show correct list for parametrize. (#244)
+  - Add argcomplete dependency to conda test session. (#240)
+
+-------------------------------------------------------------------

Old:
----
  nox-2019.8.20.tar.gz

New:
----
  nox-2019.11.9.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-nox.spec ++++++
--- /var/tmp/diff_new_pack.Pi2jfk/_old  2020-03-30 23:04:56.128228883 +0200
+++ /var/tmp/diff_new_pack.Pi2jfk/_new  2020-03-30 23:04:56.132228886 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-nox
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 %define skip_python2 1
 Name:           python-nox
-Version:        2019.8.20
+Version:        2019.11.9
 Release:        0
 Summary:        Flexible test automation
 License:        Apache-2.0
@@ -33,6 +33,7 @@
 Requires:       python-argcomplete >= 1.9.4
 Requires:       python-colorlog >= 2.6.1
 Requires:       python-py >= 1.4.0
+Requires:       python-setuptools
 Requires:       python-virtualenv >= 14.0.0
 Suggests:       python-Jinja2
 Suggests:       python-tox

++++++ nox-2019.8.20.tar.gz -> nox-2019.11.9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/CHANGELOG.md 
new/nox-2019.11.9/CHANGELOG.md
--- old/nox-2019.8.20/CHANGELOG.md      2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/CHANGELOG.md      2019-11-10 06:36:06.000000000 +0100
@@ -1,5 +1,20 @@
 # Changelog
 
+## 2019.11.4
+
+- Fix example installation call for pip. (#259)
+- Allow colorlog 4. (#257)
+- Order Pythons in descending version in `appveyor.yml`. (#258)
+- Add link to GitHub Action for Nox. (#255)
+- Use double "\`" for inline code. (#254)
+- Add types to `_option_set.py`. (#249)
+- Add type hints to `tasks.py`. (#241)
+- Fix typo (virtulenvs). (#247)
+- Replace flake8 sorter with isort. (#242)
+- Pass `VIRTUAL_ENV` environment variable to commands executed in a 
virtualenv. (#245)
+- Fix docs to show correct list for parametrize. (#244)
+- Add argcomplete dependency to conda test session. (#240)
+
 ## 2019.8.20
 
 - Add `--verbose` for showing the output from all commands. (#174)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/appveyor.yml 
new/nox-2019.11.9/appveyor.yml
--- old/nox-2019.8.20/appveyor.yml      2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/appveyor.yml      2019-11-10 06:36:06.000000000 +0100
@@ -10,22 +10,6 @@
     # a later point release.
     # See: http://www.appveyor.com/docs/installed-software#python
 
-    - PYTHON: "C:\\Python35"
-      CONDA: "C:\\Miniconda35"
-      NOX_SESSION: "tests-3.5"
-
-    - PYTHON: "C:\\Python35-x64"
-      CONDA: "C:\\Miniconda35-x64"
-      NOX_SESSION: "tests-3.5"
-
-    - PYTHON: "C:\\Python36"
-      CONDA: "C:\\Miniconda36"
-      NOX_SESSION: "tests-3.6"
-
-    - PYTHON: "C:\\Python36-x64"
-      CONDA: "C:\\Miniconda36-x64"
-      NOX_SESSION: "tests-3.6"
-
     - PYTHON: "C:\\Python37"
       # Python 3.7 conda installation appears to be broken on Appveyor:
       # TypeError: LoadLibrary() argument 1 must be str, not None
@@ -38,6 +22,22 @@
       CONDA: "C:\\Miniconda36-x64"
       NOX_SESSION: "tests-3.7"
 
+    - PYTHON: "C:\\Python36"
+      CONDA: "C:\\Miniconda36"
+      NOX_SESSION: "tests-3.6"
+
+    - PYTHON: "C:\\Python36-x64"
+      CONDA: "C:\\Miniconda36-x64"
+      NOX_SESSION: "tests-3.6"
+
+    - PYTHON: "C:\\Python35"
+      CONDA: "C:\\Miniconda35"
+      NOX_SESSION: "tests-3.5"
+
+    - PYTHON: "C:\\Python35-x64"
+      CONDA: "C:\\Miniconda35-x64"
+      NOX_SESSION: "tests-3.5"
+
 install:
   # Add conda command to path.
   # 
https://www.tjelvarolsson.com/blog/how-to-continuously-test-your-python-code-on-windows-using-appveyor/
@@ -65,7 +65,7 @@
   # compiled extensions and are not provided as pre-built wheel packages,
   # pip will build them from source using the MSVC compiler matching the
   # target Python version and architecture
-  - "pip install wheel"
+  - "python -m pip install wheel"
 
 # init:
 #   - ps: iex ((new-object 
net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
@@ -74,7 +74,7 @@
 #   - ps: $blockRdp = $true; iex ((new-object 
net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
 
 build_script:
-  - "pip install ."
+  - "python -m pip install ."
 
 test_script:
   # Run the project tests
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/docs/config.rst 
new/nox-2019.11.9/docs/config.rst
--- old/nox-2019.8.20/docs/config.rst   2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/docs/config.rst   2019-11-10 06:36:06.000000000 +0100
@@ -4,7 +4,7 @@
 Noxfile
 -------
 
-Nox looks for configuration in a file named `noxfile.py` by default. You can 
specify
+Nox looks for configuration in a file named ``noxfile.py`` by default. You can 
specify
 a different file using the ``--noxfile`` argument when running ``nox``.
 
 
@@ -245,10 +245,10 @@
 
 .. code-block:: console
 
-    * tests(django='1.9', database='postgres')
-    * tests(django='2.0', database='mysql')
-    * tests(django='1.9', database='postgres')
-    * tests(django='2.0', database='mysql')
+    * tests(database='postgres', django='1.9')
+    * tests(database='mysql', django='1.9')
+    * tests(database='postgres', django='2.0')
+    * tests(database='mysql', django='2.0')
 
 
 If you only want to run one of the parametrized sessions, see 
:ref:`running_paramed_sessions`.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/docs/tutorial.rst 
new/nox-2019.11.9/docs/tutorial.rst
--- old/nox-2019.8.20/docs/tutorial.rst 2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/docs/tutorial.rst 2019-11-10 06:36:06.000000000 +0100
@@ -11,7 +11,7 @@
 
 .. code-block:: console
 
-    python3 -m install nox
+    python3 -m pip install nox
 
 You may want to use the `user site`_ to avoid messing with your global Python 
install:
 
@@ -29,12 +29,15 @@
 
 If you're interested in running ``nox`` within `docker`_, you can use the 
`thekevjames/nox images`_ on DockerHub which contain builds for all ``nox`` 
versions and all supported ``python`` versions.
 
+If you want to run ``nox`` within `GitHub Actions`_, you can use the 
`excitedleigh/setup-nox action`_, which installs the latest ``nox`` and makes 
available all Python versions provided by the GitHub Actions environment.
+
 .. _pip: https://pip.readthedocs.org
 .. _user site: 
https://packaging.python.org/tutorials/installing-packages/#installing-to-the-user-site
 .. _pipx: 
https://packaging.python.org/guides/installing-stand-alone-command-line-tools/
 .. _docker: https://www.docker.com/
 .. _thekevjames/nox images: https://hub.docker.com/r/thekevjames/nox
-
+.. _GitHub Actions: https://github.com/features/actions
+.. _excitedleigh/setup-nox action: 
https://github.com/marketplace/actions/setup-nox
 
 Writing the configuration file
 ------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/docs/usage.rst 
new/nox-2019.11.9/docs/usage.rst
--- old/nox-2019.8.20/docs/usage.rst    2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/docs/usage.rst    2019-11-10 06:36:06.000000000 +0100
@@ -36,7 +36,7 @@
 Running all sessions
 --------------------
 
-You can run every session by just executing `nox` without any arguments:
+You can run every session by just executing ``nox`` without any arguments:
 
 .. code-block:: console
 
@@ -177,7 +177,7 @@
 Skipping everything but install commands
 ----------------------------------------
 
-There are a couple of cases where it makes sense to have Nox only run 
``install`` commands, such as preparing an environment for offline testing or 
re-creating the same virtulenvs used for testing. You can use 
``--install-only`` to skip ``run`` commands.
+There are a couple of cases where it makes sense to have Nox only run 
``install`` commands, such as preparing an environment for offline testing or 
re-creating the same virtualenvs used for testing. You can use 
``--install-only`` to skip ``run`` commands.
 
 For example, given this Noxfile:
 
@@ -264,8 +264,8 @@
 Controling commands verbosity
 -----------------------------
 
-By default, Nox will only show output of commands that fail, or, when the 
commands get passed `silent=False`.
-By passing `--verbose` to Nox, all output of all commands run is shown, 
regardless of the silent argument.
+By default, Nox will only show output of commands that fail, or, when the 
commands get passed ``silent=False``.
+By passing ``--verbose`` to Nox, all output of all commands run is shown, 
regardless of the silent argument.
 
 
 Outputting a machine-readable report
@@ -356,4 +356,4 @@
 
 .. code-block:: console
 
-    register-python-argcomplete --shell fish nox | .
\ No newline at end of file
+    register-python-argcomplete --shell fish nox | .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/__main__.py 
new/nox-2019.11.9/nox/__main__.py
--- old/nox-2019.8.20/nox/__main__.py   2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/__main__.py   2019-11-10 06:36:06.000000000 +0100
@@ -23,9 +23,7 @@
 
 import pkg_resources
 
-from nox import _options
-from nox import tasks
-from nox import workflow
+from nox import _options, tasks, workflow
 from nox.logger import setup_logging
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/_option_set.py 
new/nox-2019.11.9/nox/_option_set.py
--- old/nox-2019.8.20/nox/_option_set.py        2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/nox/_option_set.py        2019-11-10 06:36:06.000000000 
+0100
@@ -20,12 +20,11 @@
 import argparse
 import collections
 import functools
+from argparse import ArgumentError, ArgumentParser, Namespace, _ArgumentGroup
+from typing import Any, Callable, Dict, List, Optional, Sequence, Tuple, Union
 
 import argcomplete  # type: ignore
 
-Namespace = argparse.Namespace
-ArgumentError = argparse.ArgumentError
-
 
 class Option:
     """A single option that can be specified via command-line or configuration
@@ -60,20 +59,20 @@
 
     def __init__(
         self,
-        name,
+        name: str,
         *flags,
-        help=None,
-        group=None,
-        noxfile=False,
-        merge_func=None,
-        finalizer_func=None,
-        default=None,
-        hidden=False,
-        completer=None,
+        help: str = None,
+        group: str = None,
+        noxfile: bool = False,
+        merge_func: Callable[[Namespace, Namespace], Any] = None,
+        finalizer_func: Callable[[Any, Namespace], Any] = None,
+        default: Union[Any, Callable[[], Any]] = None,
+        hidden: bool = False,
+        completer: Callable[..., List[str]] = None,
         **kwargs
-    ):
+    ) -> None:
         self.name = name
-        self.flags = flags
+        self.flags = flags  # type: Sequence[str]
         self.help = help
         self.group = group
         self.noxfile = noxfile
@@ -81,17 +80,22 @@
         self.finalizer_func = finalizer_func
         self.hidden = hidden
         self.completer = completer
-        self.kwargs = kwargs
+        self.kwargs = kwargs  # type: Dict[str, Any]
         self._default = default
 
     @property
-    def default(self):
+    def default(self) -> Optional[Union[bool, str]]:
         if callable(self._default):
             return self._default()
         return self._default
 
 
-def flag_pair_merge_func(enable_name, disable_name, command_args, 
noxfile_args):
+def flag_pair_merge_func(
+    enable_name: str,
+    disable_name: str,
+    command_args: Namespace,
+    noxfile_args: Namespace,
+) -> bool:
     """Merge function for flag pairs. If the flag is set in the noxfile or
     the command line params, return ``True`` *unless* the disable flag has been
     specified on the command-line.
@@ -132,7 +136,12 @@
     return (command_value or noxfile_value) and not disable_value
 
 
-def make_flag_pair(name, enable_flags, disable_flags, **kwargs):
+def make_flag_pair(
+    name: str,
+    enable_flags: Union[Tuple[str, str], Tuple[str]],
+    disable_flags: Tuple[str],
+    **kwargs
+) -> Tuple[Option, Option]:
     """Returns two options - one to enable a behavior and another to disable 
it.
 
     The positive option is considered to be available to the noxfile, as
@@ -165,13 +174,15 @@
     finalization, callable defaults, and strongly typed namespaces for tests.
     """
 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, *args, **kwargs) -> None:
         self.parser_args = args
         self.parser_kwargs = kwargs
-        self.options = collections.OrderedDict()
-        self.groups = collections.OrderedDict()
+        self.options = collections.OrderedDict()  # type: Dict[str, Option]
+        self.groups = (
+            collections.OrderedDict()
+        )  # type: Dict[str, Tuple[Tuple[Any, ...], Dict[str, Any]]]
 
-    def add_options(self, *args):
+    def add_options(self, *args) -> None:
         """Adds a sequence of Options to the OptionSet.
 
         Args:
@@ -180,7 +191,7 @@
         for option in args:
             self.options[option.name] = option
 
-    def add_group(self, name, *args, **kwargs):
+    def add_group(self, name: str, *args, **kwargs) -> None:
         """Adds a new argument group.
 
         When :func:`parser` is invoked, the OptionSet will turn all distinct
@@ -189,14 +200,16 @@
         """
         self.groups[name] = (args, kwargs)
 
-    def _add_to_parser(self, parser, option):
+    def _add_to_parser(
+        self, parser: Union[_ArgumentGroup, ArgumentParser], option: Option
+    ) -> None:
         argument = parser.add_argument(
             *option.flags, help=option.help, default=option.default, 
**option.kwargs
         )
-        if option.completer:
-            argument.completer = option.completer
+        if getattr(option, "completer"):
+            setattr(argument, "completer", option.completer)
 
-    def parser(self):
+    def parser(self) -> ArgumentParser:
         """Returns an ``ArgumentParser`` for this option set.
 
         Generally, you won't use this directly. Instead, use
@@ -223,7 +236,7 @@
     def print_help(self):
         return self.parser().print_help()
 
-    def _finalize_args(self, args):
+    def _finalize_args(self, args: Namespace) -> None:
         """Does any necessary post-processing on arguments."""
         for option in self.options.values():
             # Handle hidden items.
@@ -236,7 +249,7 @@
             if option.finalizer_func:
                 setattr(args, option.name, option.finalizer_func(value, args))
 
-    def parse_args(self):
+    def parse_args(self) -> Namespace:
         parser = self.parser()
         argcomplete.autocomplete(parser)
         args = parser.parse_args()
@@ -267,7 +280,7 @@
 
         return argparse.Namespace(**args)
 
-    def noxfile_namespace(self):
+    def noxfile_namespace(self) -> Namespace:
         """Returns a namespace of options that can be set in the configuration
         file."""
         return argparse.Namespace(
@@ -278,7 +291,9 @@
             }
         )
 
-    def merge_namespaces(self, command_args, noxfile_args):
+    def merge_namespaces(
+        self, command_args: Namespace, noxfile_args: Namespace
+    ) -> None:
         """Merges the command-line options with the noxfile options."""
         for name, option in self.options.items():
             if option.merge_func:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/_options.py 
new/nox-2019.11.9/nox/_options.py
--- old/nox-2019.8.20/nox/_options.py   2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/_options.py   2019-11-10 06:36:06.000000000 +0100
@@ -16,6 +16,7 @@
 import functools
 import os
 import sys
+from typing import List
 
 from nox import _option_set
 from nox.tasks import discover_manifest, filter_manifest, load_nox_module
@@ -122,11 +123,15 @@
     return posargs[dash_index + 1 :]
 
 
-def _session_completer(prefix, parsed_args, **kwargs):
+def _session_completer(
+    prefix: str, parsed_args: argparse.Namespace, **kwargs
+) -> List[str]:
     global_config = parsed_args
     module = load_nox_module(global_config)
     manifest = discover_manifest(module, global_config)
     filtered_manifest = filter_manifest(manifest, global_config)
+    if isinstance(filtered_manifest, int):
+        return []
     return [
         session.friendly_name for session, _ in 
filtered_manifest.list_all_sessions()
     ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/command.py 
new/nox-2019.11.9/nox/command.py
--- old/nox-2019.8.20/nox/command.py    2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/command.py    2019-11-10 06:36:06.000000000 +0100
@@ -16,7 +16,6 @@
 import sys
 
 import py  # type: ignore
-
 from nox.logger import logger
 from nox.popen import popen
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/sessions.py 
new/nox-2019.11.9/nox/sessions.py
--- old/nox-2019.8.20/nox/sessions.py   2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/sessions.py   2019-11-10 06:36:06.000000000 +0100
@@ -19,9 +19,8 @@
 import sys
 import unicodedata
 
-import py  # type: ignore
-
 import nox.command
+import py  # type: ignore
 from nox.logger import logger
 from nox.virtualenv import CondaEnv, ProcessEnv, VirtualEnv
 
@@ -232,7 +231,7 @@
             session.conda_install('numpy', 'scipy')
             session.conda_install('--channel=conda-forge', 'dask==2.1.0')
 
-        To install packages from a `requirements.txt` file::
+        To install packages from a ``requirements.txt`` file::
 
             session.conda_install('--file', 'requirements.txt')
             session.conda_install('--file', 'requirements-dev.txt')
@@ -279,7 +278,7 @@
             session.install('requests', 'mock')
             session.install('requests[security]==2.9.1')
 
-        To install packages from a `requirements.txt` file::
+        To install packages from a ``requirements.txt`` file::
 
             session.install('-r', 'requirements.txt')
             session.install('-r', 'requirements-dev.txt')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/tasks.py 
new/nox-2019.11.9/nox/tasks.py
--- old/nox-2019.8.20/nox/tasks.py      2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/tasks.py      2019-11-10 06:36:06.000000000 +0100
@@ -16,14 +16,15 @@
 import io
 import json
 import os
-
-from colorlog.escape_codes import parse_colors  # type: ignore
+from argparse import Namespace
+from typing import List, Union
 
 import nox
-from nox import _options
-from nox import registry
+from colorlog.escape_codes import parse_colors  # type: ignore
+from nox import _options, registry
 from nox.logger import logger
 from nox.manifest import Manifest
+from nox.sessions import Result
 
 
 def load_nox_module(global_config):
@@ -94,7 +95,9 @@
     return Manifest(functions, global_config)
 
 
-def filter_manifest(manifest, global_config):
+def filter_manifest(
+    manifest: Manifest, global_config: Namespace
+) -> Union[Manifest, int]:
     """Filter the manifest according to the provided configuration.
 
     Args:
@@ -127,7 +130,9 @@
     return manifest
 
 
-def honor_list_request(manifest, global_config):
+def honor_list_request(
+    manifest: Manifest, global_config: Namespace
+) -> Union[Manifest, int]:
     """If --list was passed, simply list the manifest and exit cleanly.
 
     Args:
@@ -181,7 +186,9 @@
     return 0
 
 
-def verify_manifest_nonempty(manifest, global_config):
+def verify_manifest_nonempty(
+    manifest: Manifest, global_config: Namespace
+) -> Union[Manifest, int]:
     """Abort with an error code if the manifest is empty.
 
     Args:
@@ -197,7 +204,7 @@
     return manifest
 
 
-def run_manifest(manifest, global_config):
+def run_manifest(manifest: Manifest, global_config: Namespace) -> List[Result]:
     """Run the full manifest of sessions.
 
     Args:
@@ -232,7 +239,7 @@
     return results
 
 
-def print_summary(results, global_config):
+def print_summary(results: List[Result], global_config: Namespace) -> 
List[Result]:
     """Print a summary of the results.
 
     Args:
@@ -261,7 +268,7 @@
     return results
 
 
-def create_report(results, global_config):
+def create_report(results: List[Result], global_config: Namespace) -> 
List[Result]:
     """Write a report to the location designated in the config, if any.
 
     Args:
@@ -291,7 +298,7 @@
     return results
 
 
-def final_reduce(results, global_config):
+def final_reduce(results: List[Result], global_config: Namespace) -> int:
     """Reduce the results to a final exit code.
 
     Args:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/nox/virtualenv.py 
new/nox-2019.11.9/nox/virtualenv.py
--- old/nox-2019.8.20/nox/virtualenv.py 2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/nox/virtualenv.py 2019-11-10 06:36:06.000000000 +0100
@@ -18,9 +18,8 @@
 import shutil
 import sys
 
-import py  # type: ignore
-
 import nox.command
+import py  # type: ignore
 from nox.logger import logger
 
 # Problematic environment variables that are stripped from all commands inside
@@ -236,7 +235,7 @@
         self._resolved = None
         self.reuse_existing = reuse_existing
         self.venv_or_virtualenv = "venv" if venv else "virtualenv"
-        super(VirtualEnv, self).__init__()
+        super(VirtualEnv, self).__init__(env={"VIRTUAL_ENV": self.location})
 
     _clean_location = _clean_location
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/noxfile.py new/nox-2019.11.9/noxfile.py
--- old/nox-2019.8.20/noxfile.py        2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/noxfile.py        2019-11-10 06:36:06.000000000 +0100
@@ -16,7 +16,6 @@
 
 import nox
 
-
 ON_APPVEYOR = os.environ.get("APPVEYOR") == "True"
 
 
@@ -35,7 +34,9 @@
 @nox.session(python=["3.5", "3.6", "3.7"], venv_backend="conda")
 def conda_tests(session):
     """Run test suite with pytest."""
-    session.conda_install("--file", "requirements-conda-test.txt")
+    session.conda_install(
+        "--file", "requirements-conda-test.txt", "--channel", "conda-forge"
+    )
     session.install("contexter", "--no-deps")
     session.install("-e", ".", "--no-deps")
     tests = session.posargs or ["tests/"]
@@ -57,16 +58,19 @@
 @nox.session(python="3.7")
 def blacken(session):
     """Run black code formater."""
-    session.install("black")
-    session.run("black", "nox", "tests", "noxfile.py", "setup.py")
+    session.install("black==19.3b0", "isort==4.3.21")
+    files = ["nox", "tests", "noxfile.py", "setup.py"]
+    session.run("black", *files)
+    session.run("isort", "--recursive", *files)
 
 
 @nox.session(python="3.7")
 def lint(session):
-    session.install("flake8", "flake8-import-order", "black", "mypy")
+    session.install("flake8==3.7.8", "black==19.3b0", "mypy==0.720")
     session.run("mypy", "nox")
-    session.run("black", "--check", "nox", "tests", "noxfile.py", "setup.py")
-    session.run("flake8", "nox", "tests")
+    files = ["nox", "tests", "noxfile.py", "setup.py"]
+    session.run("black", "--check", *files)
+    session.run("flake8", "nox", *files)
 
 
 @nox.session(python="3.7")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/requirements-conda-test.txt 
new/nox-2019.11.9/requirements-conda-test.txt
--- old/nox-2019.8.20/requirements-conda-test.txt       2019-08-20 
22:38:21.000000000 +0200
+++ new/nox-2019.11.9/requirements-conda-test.txt       2019-11-10 
06:36:06.000000000 +0100
@@ -1,3 +1,4 @@
+argcomplete >=1.9.4,<2.0
 colorlog >=2.6.1,<4.0.0
 py >=1.4.0,<2.0.0
 virtualenv >=14.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/setup.py new/nox-2019.11.9/setup.py
--- old/nox-2019.8.20/setup.py  2019-08-20 22:38:21.000000000 +0200
+++ new/nox-2019.11.9/setup.py  2019-11-10 06:36:06.000000000 +0100
@@ -16,13 +16,12 @@
 
 from setuptools import setup
 
-
 long_description = open("README.rst", "r", encoding="utf-8").read()
 
 
 setup(
     name="nox",
-    version="2019.8.20",
+    version="2019.11.9",
     description="Flexible test automation.",
     long_description=long_description,
     url="https://nox.thea.codes";,
@@ -49,8 +48,8 @@
     packages=["nox"],
     include_package_data=True,
     install_requires=[
-        "argcomplete>=1.9.4, <2.0",
-        "colorlog>=2.6.1,<4.0.0",
+        "argcomplete>=1.9.4,<2.0",
+        "colorlog>=2.6.1,<5.0.0",
         "py>=1.4.0,<2.0.0",
         "virtualenv>=14.0.0",
     ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test__option_set.py 
new/nox-2019.11.9/tests/test__option_set.py
--- old/nox-2019.8.20/tests/test__option_set.py 2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test__option_set.py 2019-11-10 06:36:06.000000000 
+0100
@@ -12,14 +12,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-import sys
-from unittest import mock
-
 import pytest
-
-from nox import _option_set
-from nox import _options
-
+from nox import _option_set, _options
 
 # The vast majority of _option_set is tested by test_main, but the test helper
 # :func:`OptionSet.namespace` needs a bit of help to get to full coverage.
@@ -51,12 +45,18 @@
             optionset.namespace(non_existant_option="meep")
 
     def test_session_completer(self):
-        with mock.patch("sys.argv", [sys.executable]):
-            parsed_args = _options.options.parse_args()
-            all_nox_sessions = _options._session_completer(
-                prefix=None, parsed_args=parsed_args
-            )
-            # if noxfile.py changes, this will have to change as well since 
these are
-            # some of the actual sessions found in noxfile.py
-            some_expected_sessions = ["cover", "blacken", "lint", "docs"]
-            assert len(set(some_expected_sessions) - set(all_nox_sessions)) == 0
+        parsed_args = _options.options.namespace(sessions=(), keywords=())
+        all_nox_sessions = _options._session_completer(
+            prefix=None, parsed_args=parsed_args
+        )
+        # if noxfile.py changes, this will have to change as well since these 
are
+        # some of the actual sessions found in noxfile.py
+        some_expected_sessions = ["cover", "blacken", "lint", "docs"]
+        assert len(set(some_expected_sessions) - set(all_nox_sessions)) == 0
+
+    def test_session_completer_invalid_sessions(self):
+        parsed_args = _options.options.namespace(sessions=("baz",), 
keywords=())
+        all_nox_sessions = _options._session_completer(
+            prefix=None, parsed_args=parsed_args
+        )
+        assert len(all_nox_sessions) == 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test__parametrize.py 
new/nox-2019.11.9/tests/test__parametrize.py
--- old/nox-2019.8.20/tests/test__parametrize.py        2019-08-20 
22:38:21.000000000 +0200
+++ new/nox-2019.11.9/tests/test__parametrize.py        2019-11-10 
06:36:06.000000000 +0100
@@ -15,7 +15,6 @@
 from unittest import mock
 
 import pytest
-
 from nox import _parametrize
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_command.py 
new/nox-2019.11.9/tests/test_command.py
--- old/nox-2019.8.20/tests/test_command.py     2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_command.py     2019-11-10 06:36:06.000000000 
+0100
@@ -17,9 +17,8 @@
 import sys
 from unittest import mock
 
-import pytest
-
 import nox.command
+import pytest
 
 PYTHON = sys.executable
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_main.py 
new/nox-2019.11.9/tests/test_main.py
--- old/nox-2019.8.20/tests/test_main.py        2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_main.py        2019-11-10 06:36:06.000000000 
+0100
@@ -16,16 +16,15 @@
 import sys
 from unittest import mock
 
-import contexter
 import pkg_resources
-import pytest
 
+import contexter
 import nox
 import nox.__main__
 import nox._options
 import nox.registry
 import nox.sessions
-
+import pytest
 
 RESOURCES = os.path.join(os.path.dirname(__file__), "resources")
 VERSION = pkg_resources.get_distribution("nox").version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_manifest.py 
new/nox-2019.11.9/tests/test_manifest.py
--- old/nox-2019.8.20/tests/test_manifest.py    2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_manifest.py    2019-11-10 06:36:06.000000000 
+0100
@@ -15,11 +15,9 @@
 import collections
 from unittest import mock
 
-import pytest
-
 import nox
-from nox.manifest import _null_session_func
-from nox.manifest import Manifest
+import pytest
+from nox.manifest import Manifest, _null_session_func
 
 
 def create_mock_sessions():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_registry.py 
new/nox-2019.11.9/tests/test_registry.py
--- old/nox-2019.8.20/tests/test_registry.py    2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_registry.py    2019-11-10 06:36:06.000000000 
+0100
@@ -13,7 +13,6 @@
 # limitations under the License.
 
 import pytest
-
 from nox import registry
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_sessions.py 
new/nox-2019.11.9/tests/test_sessions.py
--- old/nox-2019.8.20/tests/test_sessions.py    2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_sessions.py    2019-11-10 06:36:06.000000000 
+0100
@@ -18,15 +18,14 @@
 import sys
 from unittest import mock
 
-import pytest
-
-from nox import _options
 import nox.command
-from nox.logger import logger
 import nox.manifest
 import nox.registry
 import nox.sessions
 import nox.virtualenv
+import pytest
+from nox import _options
+from nox.logger import logger
 
 
 def test__normalize_path():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_tasks.py 
new/nox-2019.11.9/tests/test_tasks.py
--- old/nox-2019.8.20/tests/test_tasks.py       2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_tasks.py       2019-11-10 06:36:06.000000000 
+0100
@@ -20,15 +20,11 @@
 import platform
 from unittest import mock
 
-import pytest
-
 import nox
-from nox import _options
-from nox import sessions
-from nox import tasks
+import pytest
+from nox import _options, sessions, tasks
 from nox.manifest import Manifest
 
-
 RESOURCES = os.path.join(os.path.dirname(__file__), "resources")
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_tox_to_nox.py 
new/nox-2019.11.9/tests/test_tox_to_nox.py
--- old/nox-2019.8.20/tests/test_tox_to_nox.py  2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_tox_to_nox.py  2019-11-10 06:36:06.000000000 
+0100
@@ -16,7 +16,6 @@
 import textwrap
 
 import pytest
-
 from nox import tox_to_nox
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nox-2019.8.20/tests/test_virtualenv.py 
new/nox-2019.11.9/tests/test_virtualenv.py
--- old/nox-2019.8.20/tests/test_virtualenv.py  2019-08-20 22:38:21.000000000 
+0200
+++ new/nox-2019.11.9/tests/test_virtualenv.py  2019-11-10 06:36:06.000000000 
+0100
@@ -17,12 +17,10 @@
 import sys
 from unittest import mock
 
+import nox.virtualenv
 import py
 import pytest
 
-import nox.virtualenv
-
-
 IS_WINDOWS = nox.virtualenv._SYSTEM == "Windows"
 HAS_CONDA = shutil.which("conda") is not None
 RAISE_ERROR = "RAISE_ERROR"


Reply via email to