зеркало из
1
0
Форкнуть 0
azure-sdk-for-python/scripts/release_sdk_status
kdestin 982234bf05
[engsys] Migrate to tox4 (#30159)
* Remove references to {envbindir}

    tox prepends the {env_bin_dir} to $PATH, so commands
    will default to using the virtual environment first.

    See: https://tox.wiki/en/4.4.11/config.html#commands

    One of tox's core maintainers also discourages its use:
      https://github.com/tox-dev/tox/issues/2909#issuecomment-1409806654

* refactor: Write paths relative to git root, instead of package dir

    Uses an inline plugin (toxfile.py) to make a computed config
    value avaiable to tox environments.

* refactor: Rename {toxinidir} to {tox_root}

    {toxinidir} is an alias for {tox_root}, but {tox_root} is:
      * More clear: {tox_root} isn't necessarily where the ini file is
      * Shorter

* refactor: Flatten some commands that are no longer super long

* refactor: Make a pytest section

* refactor: Remove `changedir = {tox_root}`

    This is the default behavior, see:

    https://tox.wiki/en/4.4.11/config.html#change_dir-external

* fix: {distdir} is deprecated

    See: https://tox.wiki/en/latest/upgrading.html#removed-tox-ini-keys

* fix: Remove --ignore-installed from pip command

    --ignore-installed can break a python installation if multiple
    conflicting versions of a package are installed

* refactor: Add descriptions to all tox environments

* fix: Remove ineffective platform config

    platform = linux: linux
               macos: darwin
               windows: win32

    Setting the above in the base environment has no effect:
        * None of the environments have {linux,macos,windows} in the
          name, so the platform config is always empty.

* chore: Bump `tox` to `>4.4.11` and no longer install `tox-monorepo`

    tox4 natively solves what `tox-monorepo` was written to solve:
    `--root` lets you set `toxinidir` independently of the config
    file in use.

    4.4.11 was chosen as the cutoff since it was the first release to
    include a fix to `--root` that prevented `{work_dir}` from being
    changed when `{toxinidir}` was changed by `--root`.

    `tox-monorepo` should no longer be needed

* docs: Update CONTRIBUTING.md to use tox 4 commands

    * References to tox-monorepo were removed
    * Replaced discussion of `tox -l` with tox4's `tox list`
    * Updated examples to use `--root`

* docs: Make `azure-media-{videoanalyzer,analytics}-edge`'s DevTips.md point to CONTRIBUTING.md for tox

* docs: Remove remaining references to tox-monorepo

* doc: Use `--root` throughout documentation

* engsys: Make tox_harness set `{toxinidir}` when invoking tox

* engsys: Set required tox version in config

* docs: Use the new url for tox docs

* docs: Add a callout that TOX_* environment variables control defaults

    * TOX_CONFIG_DIR can be used to permanently set --conf
    * TOX_ROOT_DIR can be used to permanently set --root

* update packaging requirement everywhere it is used.

* fix cspell

* docs: Use `tox run` syntax throughout documentation

* engsys: Use `tox run` syntax in tox_harness.py

* docs: Replace – (U+2013 : EN DASH) with - (ASCII code 45)

* update pytest requirements + coverage.

* update virtualenv

* more conflicts resolved

* bringing in urllib3 restriction, aligning ci_tools.txt with test_tools.txt

* check_call requires a list of type string. if we append ['blah', 'blah'] we are actually inserting another array. just use regular array concatenation

* engsys: Tox uses `run` for serial execution and `run-parallel` for parallel`

* azure-core: Use `@pytest_asyncio.fixture` to mark an asyncio fixture

    See https://pytest-asyncio.readthedocs.io/en/latest/concepts.html#strict-mode

* pin coverage to newer version with no conflicts

* identify issue with missing code coverage being caused by wrongly named namespace (#30344)

* remove fix of dotfile!

* apply black formatting to resolve failing analyze step

* tox installing tox. probably not a good thing :)

* engsys: Remove `tox` from `azure-media-analytics-edge` dev_requirements

* align regression version of ci/test_tools.txt

* new coverage format requires that the package sources be present when combining .coverage files. amend our tox tree cleanup to exclude the whl directory when running coverage.

* ensure that missing hidden folder can't break cleanup operation

* ensure coverage isn't generated on whl_no_aio

* ensure that coverage is generated without wonky package paths

---------

Co-authored-by: scbedd <45376673+scbedd@users.noreply.github.com>
2023-05-23 10:11:23 -07:00
..
main.py [pipeline] optimize the way to set cert for test-proxy (#28596) 2023-02-02 14:25:13 +08:00
release_sdk_status.yml update all usages of pip to python -m pip (#29396) 2023-03-16 18:33:56 +00:00
requirement.txt [engsys] Migrate to tox4 (#30159) 2023-05-23 10:11:23 -07:00
util.py [pipeline] optimize the way to set cert for test-proxy (#28596) 2023-02-02 14:25:13 +08:00