-
Notifications
You must be signed in to change notification settings - Fork 35
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
Use the ruff formatter, add more ruff linter rules #99
Conversation
0170559
to
9163e67
Compare
576a4a9
to
b4fe3e3
Compare
astral-sh/ruff#8822 adds the We just need to wait for a formal ruff release with this new feature. |
I have based this commit on: - ruff-pre-commit README.md | Using Ruff with pre-commit https://github.com/astral-sh/ruff-pre-commit/blob/main/README.md - The Ruff Formatter | Conflicting lint rules https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules Support for the ruff formatter was added to pytest-ruff by commits from October 2023, released the same day as versions 0.2 and 0.2.1. Hence, it makes sense to require pytest-ruff ≥ 0.2.1 now that we use the ruff formatter. Support for `quote-style = "preserve"` was added to ruff in the last couple of weeks, therefore we require the latest version, ruff ≥ 0.1.8. This option is equivalent to `skip-string-normalization` in black.
b4fe3e3
to
b79c52d
Compare
I've pushed the PR without the last two commits, and saved those commits instead in another branch |
* Use the ruff formatter, instead of black Based on: - ruff-pre-commit README.md | Using Ruff with pre-commit https://github.com/astral-sh/ruff-pre-commit/blob/main/README.md - The Ruff Formatter | Conflicting lint rules https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules Support for the ruff formatter was added to pytest-ruff by commits from October 2023, released the same day as versions 0.2 and 0.2.1. Hence, it makes sense to require pytest-ruff ≥ 0.2.1 now. Support for `quote-style = "preserve"` was added to ruff in the last couple of weeks, therefore require the latest version, ruff ≥ 0.1.8. This option is equivalent to `skip-string-normalization` in black. Closes #101. --------- Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
@jaraco Thank you for looking into this PR. What about the pyupgrade-and-isort branch? Would you prefer to add it later, once ruff formatting has been merged into pypa projects, or perhaps not add it in the foreseeable future? |
I plan to add those later, after things have stabilized around ruff formatting, maybe as early as next week. |
|
||
[format] | ||
# https://docs.astral.sh/ruff/settings/#format-quote-style | ||
quote-style = "preserve" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This requires the preview
flag (which you can turn on in configs, otherwise it just forces typing an extra flag to run ruff in CLI, and extra editor configs to run in IDE). https://docs.astral.sh/ruff/preview/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, got bitten by that in other projects meanwhile. I see no alternative to preview
apart from choosing a different quote-style
setting. So I suggest #108.
…to version 3.3.1 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (24): Remove TOX_WORK_DIR workaround, no longer necessary with tox 4. Ref tox-dev/tox#3050. Pin against sphinx 7.2.5 as workaround for sphinx/sphinx-doc#11662. Closes jaraco/skeleton#88. Allow GITHUB_* settings to pass through to tests. Remove spinner disablement. If it's not already fixed upstream, that's where it should be fixed. Clean up 'color' environment variables. Add diff-cover check to Github Actions CI. Closes jaraco/skeleton#90. Add descriptions to the tox environments. Closes jaraco/skeleton#91. Add FORCE_COLOR to the TOX_OVERRIDE for GHA. Requires tox 4.11.1. Closes jaraco/skeleton#89. Prefer ``pass_env`` in tox config. Preferred failure mode for tox-dev/tox#3127 and closes jaraco/skeleton#92. Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. 👹 Feed the hobgoblins (delint). Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93) bswck (15): Add type hints to `jaraco.classes.meta` Add type hints to `jaraco.classes.ancestry` Add type hints to `jaraco.classes.properties` Add `py.typed` marker Use single-quote strings for consistency Move `Callable` import into type-checking block Make `classproperty.__get__()` return `Any` Tweak coverage configuration for type checking In TODO, link an issue, not a person Use `None` return type for setters, rename type aliases Nitpick ignore `TYPE_CHECKING` block types Use `Protocol[_T]` as `_ClassPropertyAttribute` base PEP 252 compatibility Remove `_GetterStaticMethod` type Prefer single quotes
…version 69.1.0 Anderson Bravalheri (19): Add regression test for pkg_resources._mac_vers Remove pytest marks no longer necessary in regression test Update README removing broken link to PyPUG page Ensure test does not fail due to functools.lru_cache Use functools.lru_cache for 3.8 compatibility Remove unecessary unpacking of iterator into list Hide unecessary parent exception Promote a cleaner error message if a function was never patched Ignore path that are automatically generated Remove unecessary 'getattr' for tokenize.open Move tomllib import to py311compat Ignore side-warning in test Fix warning message matching Refactor pytest.mark to be more specific Improve formatting for consistency Remove trailling spaces Update pyproject_config.rst Expand on warning note for data_files Grammar fixes Avasam (14): Remove possibly redundant importlib_machinery code Fix Ruff test Update Python < 3.8 (3.2 to 3.7) obsolete code and comments Restore better config examples Add newsfragment Fix accidental indentation change Fix RuffError post-merge Fix import error post-merge Update newsfragments/4097.feature.rst Update missed redundant code. Mark interfaces as Protocols and add missing `self` argument post-merge fix Fix "type information included by default"'s added version Create 4182.doc.rst Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Dimitri Papadopoulos (27): `plistlib.readPlist()` is missing from Python ≥ 3.9 Fix flake8-bugbear warning Fix flake8-bugbear warning Fix flake8-bugbear warning Fix flake8-bugbear warning Fix flake8-bugbear warning Fix flake8-bugbear warning Proper fix for flake8-bugbear warning B006 Fix refurb warning Fix refurb warning Add pyupgrade rules to ruff config "yield from", instead of "yield" in a loop io.open() → open() Simplify super() calls Don't cast string literals with str() os.error → OSError Use `capture_output` Remove extraneous pair of prentheses Get rid of one last `coding: utf-8` Use byte literals instead of .encode() Use generator instead of list ruff: extend-exclude → exclude Fix a couple typos found by codespell Fix flake8-return warning Fix flake8-return warning Fix flake8-return warning Fix flake8-return warning Dimitri Papadopoulos Orfanos (5): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Update setuptools/monkey.py Better error message in setuptools/command/egg_info.py Update setuptools/config/_validate_pyproject/error_reporting.py Eli Schwartz (1): Use the stdlib toml library on sufficiently new python Jason R. Coombs (28): Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Exclude ruff on vendored directories. Exclude distutils from ruff formatting/linting. Rebuild the project using ruff style. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Rely on pytest-home for the alternate home directory. Rely on pytest-home for the alternate home directory. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. 👹 Feed the hobgoblins (delint). 👹 Feed the hobgoblins (delint). 👹 Feed the hobgoblins (delint). Create compat module. Move Python 3.10 compatibility into compat module. Move Python 3.11 compatibility into compat module. Restore exclusion of docs from the build. Closes #4213. Restore expectation that egg-link files will be named with dashes and not underscores for compatibility with older pips. Replace the incorrect phrase about 'unescaping' and instead clarify that the transformations are irreversible. Rearrange escaping functions to describe them in the order they should be used. Document the incorrect behavior revealed by #4167. Add a test capturing the desired expectation, marked as xfail for now. Add news fragment. Bump version: 69.0.3 → 69.1.0 Karolina Surma (1): Point to a live documentation Matthias Koeppe (2): CI: Update ci-sage.yml after move of Sage development to GitHub .github/workflows/ci-sage.yml: Update for changed spkg source type Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93) Thomas Grainger (2): expand on what data_files' directory and files do update data_files docs from PR suggestion Tim Paine (1): Default optional-dependencies to dict if missing in pyproject, fixes #3801 Vladimir Fokow (17): [Docs] #4198 acknowledged the side effects of running said commands add a news fragment update the note update the section with the current info fix link add a new fragment fix link syntax some fixes after seeing the Preview finally fix link reorder: pyproject.toml first, setup.cfg second remove the last sentence (it wasn't good) add a comma replace "usually" with "for example" setup.cfg make links easier to click - by placing them farther apart implement suggestions from code review reword the note implement suggested changes graingert-coef (4): fix data_files kwarg documentation remove claim that data_files does not work with wheels fix typo in interpreted text role "docs" -> doc fix path to document userguide/datafiles -> /userguide/datafiles
…ion 5.5.1 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (35): Sort imports and remove redundant import. Clean up docstring on Stopwatch Prefer 3.x for Python version (latest stable). Collapse skeleton history. Workaround for jaraco/skeleton#87. Add links to project home page and pypi. Fixes jaraco/skeleton#77. Replace redundant step names with simple 'Run'. Increase visibility of security policy. (#4) Remove TOX_WORK_DIR workaround, no longer necessary with tox 4. Ref tox-dev/tox#3050. Pin against sphinx 7.2.5 as workaround for sphinx/sphinx-doc#11662. Closes jaraco/skeleton#88. Allow GITHUB_* settings to pass through to tests. Remove spinner disablement. If it's not already fixed upstream, that's where it should be fixed. Clean up 'color' environment variables. Add diff-cover check to Github Actions CI. Closes jaraco/skeleton#90. Add descriptions to the tox environments. Closes jaraco/skeleton#91. Add FORCE_COLOR to the TOX_OVERRIDE for GHA. Requires tox 4.11.1. Closes jaraco/skeleton#89. Prefer ``pass_env`` in tox config. Preferred failure mode for tox-dev/tox#3127 and closes jaraco/skeleton#92. Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in freezegun. Workaround for spulec/freezegun#508 Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. 👹 Feed the hobgoblins (delint). Remove test dependency on backports.unittest_mock. Closes #26. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
….1.1 to version 6.1.2 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (32): Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Update test_custom_loader to correctly return a Traversable (pathlib.Path) and adjust the assertions to only expect a Traversable. Remove skip as typing now has runtime_checkable unconditionally. Add note about when to drop compatibility. Replace compatibility code. Make the assertion explicit. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. 👹 Feed the hobgoblins (delint). Move '_ensure_traversable' to the readers module, as it's needed downstream. Move compatibility and future behaviors into separate packages. Consolidate more shared behavior across TraversableResourceLoaders. Update comments to reflect refreshed purpose. Move reader constructors into methods. Use a SimpleNamespace to pass the path needed by the FileReader. Extract method for the standard readers. Remove flake8 exclusion and remove unused imports. 👹 Feed the hobgoblins (delint). Change the assertions for test_join_path to assert that the subdirectory is a multiplexed path to avoid touching implementation details. Updated the contents of the binary files in the subdirectories so there's less chance of accidentally matching one for the other. Added changelog Use bytes ranges instead of bytes literals. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93) Weicheng Zhao (1): Fix NotADirectory error when calling files on a submodule of a zipped namespace package
… version 6.0.1 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (28): Remove TOX_WORK_DIR workaround, no longer necessary with tox 4. Ref tox-dev/tox#3050. Pin against sphinx 7.2.5 as workaround for sphinx/sphinx-doc#11662. Closes jaraco/skeleton#88. Allow GITHUB_* settings to pass through to tests. Remove spinner disablement. If it's not already fixed upstream, that's where it should be fixed. Clean up 'color' environment variables. Add diff-cover check to Github Actions CI. Closes jaraco/skeleton#90. Add descriptions to the tox environments. Closes jaraco/skeleton#91. Add FORCE_COLOR to the TOX_OVERRIDE for GHA. Requires tox 4.11.1. Closes jaraco/skeleton#89. Prefer ``pass_env`` in tox config. Preferred failure mode for tox-dev/tox#3127 and closes jaraco/skeleton#92. Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Registering project with tea. Restore find_namespace since this project exposes both 'backports' and 'configparser'. 👹 Feed the hobgoblins (delint). Remove inadvertent reliance on config data from CPython. Closes #70. Add news fragment. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…sion 24.3.1 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) David Hotham (3): simplify and fix typing of priority() ruff formatting appease mypy Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (25): Move keyring_jeepney to the bottom of the list and mention limitation. Closes #646. Fix implementation of strip_last_newline and added test. Add test for do_set called_once_with is not valid Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Registering project with tea. Correct the name of tea.yaml. 👹 Feed the hobgoblins (delint). Fix EncodingWarnings 🧎♀️ Genuflect to the types. Replace the type returned by priority to be a 'Number'. 🧎♀️ Genuflect to the types. Add news fragment. Finalize Marcel Telka (1): Remove useless shebang from cli.py Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…0.1 to version 7.0.2 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Danyal-Faheem (2): refactor: add return type for select method refactor: add return type for load method Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (22): Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Remove string types now that future annotations are in place. Expand docstrings to elaborate on the purpose and details of the interfaces. Bump year on badge Add an example of how a custom provider might leverage the DistributionFinder.Context. Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. 👹 Feed the hobgoblins (delint). Moved example sources to the tests/data directory, avoiding build issues. Fix docs error due to duplicate explicit target name. Re-order imports for consistency. 🧎♀️ Genuflect to the types. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…n 3.18.1 Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (36): Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Revert "Disable tests on Windows due to numpy doesn't install. Ref numpy/numpy#23808" Revert "Grab later build of numpy; workaround for numpy/numpy#23808." Add support for newlines and fullmatch in glob.translate to match behavior in fnmatch.translate. Add support for arbitrary separators in glob.Translator, defaulting to os.sep + os.altsep. Prevent ** from appearing as anything but a full path segment for alignment with glob. Prevent * from matching an empty segment Fix initializer so it actually honors the parameter. Add tests for invalid separators. Update changelog. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Moved compatibility module to compat package. Fix name generator for width=1 Add another test at another magnitude. Add special accounting for pypy when computing the stack level for text encoding warnings. Bypass ZipFile.namelist in glob. Closes #106. Add news fragment. Finalize Move changelog entry, saved to the wrong location :( Merge changelog into last release. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…ion 7.2.0 Anderson Bravalheri (7): Replace pydantic...validate_call with typeguard.typecheck Use a metaclass for Word Replace same_method with regular comparisson Fix black error Remove pydantic imports Remove pydantic compatibility modules Remove dependency on pydantic Avasam (1): Allow mypy on PyPy (jaraco/skeleton#111) Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) James Addison (1): Revert "Remove copyright - copyright is automatic and based on history in version control." Jason R. Coombs (57): Prefer 3.x for Python version (latest stable). Collapse skeleton history. Workaround for jaraco/skeleton#87. Limit the workaround to the Pydantic 2.0.0.0 release. Add links to project home page and pypi. Fixes jaraco/skeleton#77. Replace redundant step names with simple 'Run'. Increase visibility of security policy. (#4) Remove TOX_WORK_DIR workaround, no longer necessary with tox 4. Ref tox-dev/tox#3050. Add changelog Finalize 🧎♀️ Genuflect to the types. Refactor to have a single return expression. Remove check on word length (unused). Use windowed_complete to iterate over the windowed words. Rename 'function' to 'inflection' for precision. Remove noqa C901 now that the function is simpler. Pin against sphinx 7.2.5 as workaround for sphinx/sphinx-doc#11662. Closes jaraco/skeleton#88. Allow GITHUB_* settings to pass through to tests. Remove spinner disablement. If it's not already fixed upstream, that's where it should be fixed. Clean up 'color' environment variables. Add diff-cover check to Github Actions CI. Closes jaraco/skeleton#90. Add descriptions to the tox environments. Closes jaraco/skeleton#91. Add FORCE_COLOR to the TOX_OVERRIDE for GHA. Requires tox 4.11.1. Closes jaraco/skeleton#89. Prefer ``pass_env`` in tox config. Preferred failure mode for tox-dev/tox#3127 and closes jaraco/skeleton#92. Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Registering project with tea. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Re-enable ignoring of temporary merge queue branches. Closes jaraco/skeleton#103. Fetch unshallow clones in readthedocs. Closes jaraco/skeleton#114. Move Python 3.11 out of the test matrix. 👹 Feed the hobgoblins (delint). One more level deep, pydantic now inflects the error message. 👹 Feed the hobgoblins (delint). Prefer f-strings 👹 Feed the hobgoblins (delint). Catch more specific exception (B017). 👹 Feed the hobgoblins (delint). Fix pointless comparison (B015). 👹 Feed the hobgoblins (delint). 👹 Feed the hobgoblins (delint). Add news fragment. Mark type checking block as uncovered. Finalize Paul (7): Handle "pair of ..." when word in `pl_sb_uninflected_complete` "octopi" as plural form for "octopus" Reverted "octopi" Reverted "syringe" test Created function Added examples to `_handle_long_compounds` Use `noqa: C901` Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…to version 5.1.0 Avasam (1): Allow mypy on PyPy (jaraco/skeleton#111) Bartosz Sławecki (1): Tweak coverage configuration for type checking (jaraco/skeleton#97) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (71): ALLOW_UNICODE no longer needed on Python 3. As a result, ELLIPSES is also now enabled by default. Enable default encoding warning where available. See PEP 597. Suppress EncodingWarning in pytest_black. Workaround for shopkeep/pytest-black#67. Exempt warning. Workaround for realpython/pytest-mypy#152 Add #upstream markers for filtered warnings. Add filter for platform module (ref python/cpython#100750). Remove reference to EncodingWarning as it doesn't exist on some Pythons. Revert "exclude build env from cov reporting (jaraco/skeleton#60)" Disable couldnt-parse warnings. Prescribed workaround for nedbat/coveragepy#1392. Fixes python/importlib_resources#279 and fixes jaraco/skeleton#56. Remove unnecessary and incorrect copyright notice. Fixes jaraco/skeleton#78. Replace flake8 with ruff. Fixes jaraco/skeleton#79 and sheds debt. Make substitution fields more prominent and distinct from true 'skeleton' references. (#71) Suppress EncodingWarning in build.env. Ref pypa/build#615. Remove reference to EncodingWarning as it doesn't exist on some Pythons. Update RTD boilerplate to new issue. Ref readthedocs/readthedocs.org#10401. Add badge for Ruff. Remove inclusion of python version for docs Adopt towncrier for managing changelog. Fixes jaraco/skeleton#83. Replace workaround for actions/setup-python#508 with 'allow-prereleases' Remove tox boilerplate, no longer necessary with later versions of tox. Require Python 3.8 or later. Expand 'finalize' to commit and tag the change. Leverage pytest-enabler 2.2 for the default config. Prefer 3.x for Python version (latest stable). Collapse skeleton history. Workaround for jaraco/skeleton#87. Add links to project home page and pypi. Fixes jaraco/skeleton#77. Replace redundant step names with simple 'Run'. Increase visibility of security policy. (#4) Remove TOX_WORK_DIR workaround, no longer necessary with tox 4. Ref tox-dev/tox#3050. Pin against sphinx 7.2.5 as workaround for sphinx/sphinx-doc#11662. Closes jaraco/skeleton#88. Allow GITHUB_* settings to pass through to tests. Remove spinner disablement. If it's not already fixed upstream, that's where it should be fixed. Clean up 'color' environment variables. Add diff-cover check to Github Actions CI. Closes jaraco/skeleton#90. Add descriptions to the tox environments. Closes jaraco/skeleton#91. Add FORCE_COLOR to the TOX_OVERRIDE for GHA. Requires tox 4.11.1. Closes jaraco/skeleton#89. Prefer ``pass_env`` in tox config. Preferred failure mode for tox-dev/tox#3127 and closes jaraco/skeleton#92. Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Re-enable ignoring of temporary merge queue branches. Closes jaraco/skeleton#103. Fetch unshallow clones in readthedocs. Closes jaraco/skeleton#114. Move Python 3.11 out of the test matrix. Configure pytest to support namespace packages. Ref pytest-dev/pytest#12112. Update readme and docs. 👹 Feed the hobgoblins (delint). 👹 Feed the hobgoblins (delint). Removed deprecated 'runner' parameter to tarball_context. Renamed tarball_context to tarball and deprecated tarball_context compatibility shim. Disentangle pushd from tarball. Add a few type hints. Ref #2 Finalize 👹 Feed the hobgoblins (delint). Implement compose for composing context managers. Make the function private for now, available experimentally until there's feedback (or not) on the approach. Deprecate null context. Rely on Python 3.8 syntax. Finalize Joyce (1): Feat: initial permissions to main.yml (jaraco/skeleton#76) Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…0.0 to version 5.0.1 Avasam (1): Allow mypy on PyPy (jaraco/skeleton#111) Bartosz Sławecki (2): Tweak coverage configuration for type checking (jaraco/skeleton#97) Add link to blog entry from jaraco/skeleton#115 above CI build matrix. Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (24): Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Re-enable ignoring of temporary merge queue branches. Closes jaraco/skeleton#103. Fetch unshallow clones in readthedocs. Closes jaraco/skeleton#114. Move Python 3.11 out of the test matrix. Configure pytest to support namespace packages. Ref pytest-dev/pytest#12112. Declare sort_params as an immutable Mapping. Fixes B006. 👹 Feed the hobgoblins (delint). 👹 Feed the hobgoblins (delint). Ran ruff --select UP Add news fragment. Finalize Restore Python 3.8 compatibility. Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
…0 to version 4.0.1 Avasam (1): Allow mypy on PyPy (jaraco/skeleton#111) Bartosz Sławecki (3): Tweak coverage configuration for type checking (jaraco/skeleton#97) Add link to blog entry from jaraco/skeleton#115 above CI build matrix. Move project metadata to `pyproject.toml` (jaraco/skeleton#122) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (24): Limit sphinxlint jobs to 1. Workaround for sphinx-contrib/sphinx-lint#83. Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Re-enable ignoring of temporary merge queue branches. Closes jaraco/skeleton#103. Fetch unshallow clones in readthedocs. Closes jaraco/skeleton#114. Move Python 3.11 out of the test matrix. Configure pytest to support namespace packages. Ref pytest-dev/pytest#12112. Pin against pytest 8.1.x due to pytest-dev/pytest#12194. Migrated config to pyproject.toml using jaraco.develop.migrate-config and ini2toml. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93) bswck (1): Remove deprecated `call_aside` from __init__.pyi
… version 3.12.1 Avasam (1): Allow mypy on PyPy (jaraco/skeleton#111) Bartosz Sławecki (3): Tweak coverage configuration for type checking (jaraco/skeleton#97) Add link to blog entry from jaraco/skeleton#115 above CI build matrix. Move project metadata to `pyproject.toml` (jaraco/skeleton#122) Christian Clauss (2): Upgrade GitHub Actions checkout (jaraco/skeleton#94) GitHub Actions: Combine tox jobs diffcov and docs (jaraco/skeleton#95) Dimitri Papadopoulos Orfanos (2): Use the ruff formatter (jaraco/skeleton#99) ruff: extended-ignore → ignore (jaraco/skeleton#105) Jason R. Coombs (27): Remove news fragment after allowing time to be processed downstream. Suppress deprecation warning in dateutil. Workaround for dateutil/dateutil#1284. Update Github Actions badge per actions/starter-workflows#1525. Separate collateral jobs on different lines for easier override/extension. Drop minimum requirement on pytest-mypy as most environments are already running much later. Closes jaraco/skeleton#96. Remove sole entry for branches-ignore. Workaround for and closes jaraco/skeleton#103. Bump year on badge Remove build and dist from excludes. It appears they are not needed and their presence blocks the names of packages like 'builder' and 'distutils'. Ref pypa/distutils#224. Exclude docs and tests directories properly per Setuptools behavior. Rely on default discovery for good heuristics for finding packages. Enable preview to enable preserving quotes. Use latest versions in RTD boilerplate. Remove Sphinx pin. Ref sphinx-doc/sphinx#11662. Include deps from the base config in diffcov. Enable complexity check and pycodestyle warnings. Closes jaraco/skeleton#110. Use 'extend-select' to avoid disabling the default config. Ref jaraco/skeleton#110. Re-enable ignoring of temporary merge queue branches. Closes jaraco/skeleton#103. Fetch unshallow clones in readthedocs. Closes jaraco/skeleton#114. Move Python 3.11 out of the test matrix. Configure pytest to support namespace packages. Ref pytest-dev/pytest#12112. Pin against pytest 8.1.x due to pytest-dev/pytest#12194. Migrated config to pyproject.toml using jaraco.develop.migrate-config and ini2toml. Allow macos on Python 3.8 to fail as GitHub CI has dropped support. Move project.urls to appear in the order that ini2toml generates it. Remove project.scripts. Revert "Allow macos on Python 3.8 to fail as GitHub CI has dropped support." Rename extras to align with core metadata spec. Finalize Sviatoslav Sydorenko (1): Enable testing merge queues @ GitHub Actions CI/CD (jaraco/skeleton#93)
Implement pypa/setuptools#4125 (comment).