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

Manual QA For 23.5.x release #12663

Closed
6 tasks done
Tracked by #12625
sven6002 opened this issue May 11, 2023 · 8 comments
Closed
6 tasks done
Tracked by #12625

Manual QA For 23.5.x release #12663

sven6002 opened this issue May 11, 2023 · 8 comments
Assignees
Labels
locked [bot] locked due to inactivity source::anaconda created by members of Anaconda, Inc. type::task indicates a change that doesn't pertain to the code itself, e.g. updating CI/CQ, rebuilding package
Milestone

Comments

@sven6002
Copy link
Contributor

sven6002 commented May 11, 2023

Checklist

  • I added a descriptive title
  • I searched open requests and couldn't find a duplicate

What is the idea?

This task is created to run manual QA testing on 23.5.x Release branch for conda release.. #12625 . The template will contain the following

Run Manually on (Linux & Windows) with the latest version of python

  • Pull the 23.5.x-rc into OSs
  • Manually run conda commands.
  • Run a Python file that will have import statements
  • Repeat the same process for Canary build.

Why is this needed?

This is to prepare a BlackBox testing for the releases for conda 23.5.x

What should happen?

The Docker container should start and the tests should run with no failures.. on a local machine as first pass..

Additional Context

No response

@sven6002 sven6002 added type::feature request for a new feature or capability type::task indicates a change that doesn't pertain to the code itself, e.g. updating CI/CQ, rebuilding package labels May 11, 2023
@sven6002 sven6002 added this to the 23.5.0 milestone May 11, 2023
@sven6002 sven6002 self-assigned this May 11, 2023
@sven6002 sven6002 removed the type::feature request for a new feature or capability label May 11, 2023
@sven6002 sven6002 mentioned this issue May 11, 2023
37 tasks
@travishathaway
Copy link
Contributor

@sven6002,

I'm curious. How will your docker test be any different than the test that already run on the GitHub Actions? Isn't this just duplicating work?

@travishathaway travishathaway added the source::anaconda created by members of Anaconda, Inc. label May 11, 2023
@jezdez
Copy link
Member

jezdez commented May 11, 2023

Yeah, I think we should simply update the first few steps to say "Test suite passes in release branch".

@sven6002 Please do not commit Docker files to the release branch, this is not needed, https://github.com/conda/conda/commits/23.5.x (e.g. a524a4a)

@jezdez
Copy link
Member

jezdez commented May 11, 2023

The test runs of the release branch are here: https://github.com/conda/conda/actions/workflows/tests.yml?query=branch%3A23.5.x

@sven6002
Copy link
Contributor Author

Yes.. that makes sense.. I edited the ticket to reflect the manual effort without the whole suite run (which would be redundant)

@sven6002
Copy link
Contributor Author

Yeah, I think we should simply update the first few steps to say "Test suite passes in release branch".

@sven6002 Please do not commit Docker files to the release branch, this is not needed, https://github.com/conda/conda/commits/23.5.x (e.g. a524a4a)

Yes I will not commit anyitems into the branch

@jezdez
Copy link
Member

jezdez commented May 17, 2023

@sven6002 Which versions of Linux and Windows should be tested?

@sven6002
Copy link
Contributor Author

Testing Notes from the release..

@sven6002 is in the release "jumpseat" and is working on a manual testing plan for releases. An initial issue was filed.

A pairing session occurred on Thursday, May 18th where Bianca, Ken, and Srivas manually tested all changelog items in the latest canary builds which included all of the latest work (JLAP, deprecations, etc.) on both Mac/Linux and Windows.

Mac/Linux & Windows - Manual Testing

Deprecations Warning Testing

  • Mark conda_env dependencies listed below as pending deprecation. (Deprecate unused conda_env functions #12492)

    • get_pip_version
    PYTHONWARNINGS=d python
    >>> import conda_env.pip_util
    >>> conda_env.pip_util.get_pip_version()
    >>>
    <stdin>:1: DeprecationWarning: conda_env.pip_util.get_pip_version is deprecated and will be removed in 23.9.
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/Users/svenkatesh/miniconda3/envs/scratch/lib/python3.11/site-packages/conda/deprecations.py", line 68, in inner
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
    TypeError: get_pip_version() missing 1 required positional argument: 'prefix'
    
    • pip_util.PipPackage
>>> c<stdin>:1: PendingDeprecationWarning: conda_env.pip_util.PipPackage is pending deprecation and will be removed in 24.3.
  • pip_util.installed
<stdin>:1: PendingDeprecationWarning: conda_env.pip_util.installed is pending deprecation and will be removed in 24.3.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: installed() missing 1 required positional argument: 'prefix'
  • _canonicalize_name
>>> conda_env.pip_util._canonicalize_name()
<stdin>:1: PendingDeprecationWarning: conda_env.pip_util._canonicalize_name is pending deprecation and will be removed in 24.3.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: _canonicalize_name() missing 1 required positional argument: 'name'
  • add_pip_installed
>>> conda_env.pip_util.add_pip_installed()
<stdin>:1: PendingDeprecationWarning: conda_env.pip_util.add_pip_installed is pending deprecation and will be removed in 24.3.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: add_pip_installed() missing 2 required positional arguments: 'prefix' and 'installed_pkgs'
  • env.load_from_directory
>>> conda_env.env.load_from_directory()
<stdin>:1: PendingDeprecationWarning: conda_env.env.load_from_directory is pending deprecation and will be removed in 24.3.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: load_from_directory() missing 1 required positional argument: 'directory'
>>> import conda.auxlib.packaging
/Users/svenkatesh/CondaCode/conda/conda/auxlib/packaging.py:65: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
  from distutils.command.build_py import build_py
<stdin>:1: PendingDeprecationWarning: conda.auxlib.packaging is pending deprecation and will be removed in 24.3. Use a modern build systems instead, see https://packaging.python.org/en/latest/tutorials/packaging-projects#creating-pyproject-toml for more details.
>>> conda.testing.integration.get_conda_list_tuple()
<stdin>:1: PendingDeprecationWarning: conda.testing.integration.get_conda_list_tuple is pending deprecation and will be removed in 24.3. Use __conda.core.prefix_data.PrefixData().get()__ instead.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: get_conda_list_tuple() missing 2 required positional arguments: 'prefix' and 'package_name`
  • encode_for_env_var
<stdin>:1: PendingDeprecationWarning: conda.testing.encode_for_env_var is pending deprecation and will be removed in 24.3.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
TypeError: encode_for_env_var() missing 1 required positional argument: 'value'
  • integration.temp_chdir
>>> conda.testing.integration.temp_chdir()
<stdin>:1: PendingDeprecationWarning: conda.testing.integration.temp_chdir is pending deprecation and will be removed in 24.3. Use `monkeypatch.chdir` instead.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/svenkatesh/CondaCode/conda/conda/deprecations.py", line 68, in inner
    return func(*args, **kwargs)
  File "/Users/svenkatesh/.conda/envs/conda/lib/python3.10/contextlib.py", line 281, in helper
    return _GeneratorContextManager(func, args, kwds)
  File "/Users/svenkatesh/.conda/envs/conda/lib/python3.10/contextlib.py", line 103, in __init__
    self.gen = func(*args, **kwds)
TypeError: temp_chdir() missing 1 required positional argument: 'target_dir'
/Users/svenkatesh/.conda/envs/conda/lib/python3.10/site-packages/conda/auxlib/packaging.py:68: __DeprecationWarning__: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
  from distutils.command.build_py import build_py
usage: __main__.py [-h] {create,export,list,remove,update,config} ...

positional arguments:
  {create,export,list,remove,update,config}
    create              Create an environment based on an environment definition file. If using an environment.yml file (the default), you can name the environment in the first line of the file with 'name: envname' or you can specify the environment name in the CLI command using the
                        -n/--name argument. The name specified in the CLI will override the name specified in the environment.yml file. Unless you are in the directory containing the environment definition file, use -f to specify the file path of the environment definition file you
                        want to use.
    export              Export a given environment
    list                List the Conda environments
    remove              Remove an environment
    update              Update the current environment based on environment file
    config              Configure a conda environment

options:
  -h, --help            Show this help message and exit.

conda commands available from other packages (legacy):
  env
/Users/svenkatesh/.conda/envs/conda/lib/python3.10/runpy.py:86: PendingDeprecationWarning: __main__ is pending deprecation and will be removed in 24.3. Use `conda env` instead.
  exec(code, run_globals)
usage: main.py [-h] {create,export,list,remove,update,config} ...

positional arguments:
  {create,export,list,remove,update,config}
    create              Create an environment based on an environment definition file. If using an environment.yml file (the default), you can name the environment in the first line of the file with 'name: envname' or you can specify the environment name in the CLI command using the
                        -n/--name argument. The name specified in the CLI will override the name specified in the environment.yml file. Unless you are in the directory containing the environment definition file, use -f to specify the file path of the environment definition file you
                        want to use.
    export              Export a given environment
    list                List the Conda environments
    remove              Remove an environment
    update              Update the current environment based on environment file
    config              Configure a conda environment

options:
  -h, --help            Show this help message and exit.

conda commands available from other packages:
 doctor - A subcommand that displays environment health report

conda commands available from other packages (legacy):
  env

Enhancements

(scratch) C:\Users\svenkatesh\miniconda3>conda doctor -h
C:\Users\svenkatesh\miniconda3\envs\scratch\Lib\site-packages\conda\gateways\connection\adapters\ftp.py:20: DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13
  import cgi
usage: conda doctor [-h] [-v] [-n ENVIRONMENT | -p PATH]

Display a health report for your environment.

options:
  -h, --help            show this help message and exit
  -v, --verbose         generate a detailed environment health report

Target Environment Specification:
  -n ENVIRONMENT, --name ENVIRONMENT
                        Name of environment.
  -p PATH, --prefix PATH
                        Full path to environment location (i.e. prefix).

active environment : base
   active env location : C:\Users\svenkatesh\miniconda3\envs\scratch
           shell level : 2
      user config file : C:\Users\svenkatesh\.condarc
populated config files :
         conda version : 23.5.18.0.dev53
   conda-build version : not installed
        python version : 3.11.3.final.0
      virtual packages : __archspec=1=x86_64
                         __win=0=0
      base environment : C:\Users\svenkatesh\miniconda3\envs\scratch  (writable)
     conda av data dir : C:\Users\svenkatesh\miniconda3\envs\scratch\etc\conda
 conda av metadata url : None
          channel URLs : https://repo.anaconda.com/pkgs/main/win-64
                         https://repo.anaconda.com/pkgs/main/noarch
                         https://repo.anaconda.com/pkgs/r/win-64
                         https://repo.anaconda.com/pkgs/r/noarch
                         https://repo.anaconda.com/pkgs/msys2/win-64
                         https://repo.anaconda.com/pkgs/msys2/noarch
         package cache : C:\Users\svenkatesh\miniconda3\envs\scratch\pkgs
                         C:\Users\svenkatesh\.conda\pkgs
                         C:\Users\svenkatesh\AppData\Local\conda\conda\pkgs
      envs directories : C:\Users\svenkatesh\miniconda3\envs\scratch\envs
                         C:\Users\svenkatesh\.conda\envs
                         C:\Users\svenkatesh\AppData\Local\conda\conda\envs
              platform : win-64
            user-agent : conda/23.5.18.0.dev53 requests/2.29.0 CPython/3.11.3 Windows/10 Windows/10.0.22621
         administrator : False
            netrc file : None
          offline mode : False
List installed packages in a conda environment.

Options:

positional arguments:
  regex                 List only packages matching this regular expression.

options:
  -h, --help            Show this help message and exit.
  --show-channel-urls   Show channel urls. Overrides the value given by `conda config --show show_channel_urls`.
  --reverse             List installed packages in reverse order.
  -c, --canonical       Output canonical names of packages only.
  -f, --full-name       Only search for full names, i.e., ^<regex>$. --full-name NAME is identical to regex '^NAME$'.
  --explicit            List explicitly all installed conda packages with URL (output may be used by conda create --file).
  --md5                 Add MD5 hashsum when using --explicit.
  -e, --export          Output explicit, machine-readable requirement strings instead of human-readable lists of packages. This output may be used by conda create --file.
  -r, --revisions       List the revision history.
  --no-pip              Do not include pip-only installed packages.

Target Environment Specification:
  -n ENVIRONMENT, --name ENVIRONMENT
                        Name of environment.
  -p PATH, --prefix PATH
                        Full path to environment location (i.e. prefix).

Output, Prompt, and Flow Control Options:
  --json                Report all output as json. Suitable for using conda programmatically.
  -v, --verbose         Use once for info, twice for debug, three times for trace.
  -q, --quiet           Do not display progress bar.

conda commands available from other packages:
 doctor - A subcommand that displays environment health report

Run by automation test cases on GitHub-CI

Bug fixes

Run by automation test cases on GitHub-CI

Windows Specific Testing with conda-canary

msys2-Result

Docs

PyTorch OthersFeatures

Other

PyTorch
conda config --show-sources
vi .condarc
experimental:
  - jlap

conda search -c conda-forge tensorflow

Before
after

After
before

OthersFeatures

@sven6002
Copy link
Contributor Author

@sven6002 Which versions of Linux and Windows should be tested?

IMO the automation should be one to run on the different versions OS and python versions.. The manual should generally be done on the latest..

@github-actions github-actions bot added the locked [bot] locked due to inactivity label May 26, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 26, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity source::anaconda created by members of Anaconda, Inc. type::task indicates a change that doesn't pertain to the code itself, e.g. updating CI/CQ, rebuilding package
Projects
Archived in project
Development

No branches or pull requests

4 participants