Commit Graph

239 Commits

Author SHA1 Message Date
dependabot[bot]
e8cfa24c6e Bump ruff from 0.0.270 to 0.0.271 (#199)
Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.270 to 0.0.271.
- [Release notes](https://github.com/charliermarsh/ruff/releases)
- [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md)
- [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.270...v0.0.271)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-07 09:14:17 +00:00
dependabot[bot]
8b99ddfeb1 Bump tox from 4.5.2 to 4.6.0 (#198)
Bumps [tox](https://github.com/tox-dev/tox) from 4.5.2 to 4.6.0.
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/tox/compare/4.5.2...4.6.0)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 09:11:37 +00:00
dependabot[bot]
dfb747230c Bump fastapi from 0.95.2 to 0.96.0 (#197)
Bumps [fastapi](https://github.com/tiangolo/fastapi) from 0.95.2 to 0.96.0.
- [Release notes](https://github.com/tiangolo/fastapi/releases)
- [Commits](https://github.com/tiangolo/fastapi/compare/0.95.2...0.96.0)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 09:14:32 +00:00
dependabot[bot]
eb84b1457e Bump typing-extensions from 4.6.2 to 4.6.3 (#196)
Bumps [typing-extensions](https://github.com/python/typing_extensions) from 4.6.2 to 4.6.3.
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.6.2...4.6.3)

---
updated-dependencies:
- dependency-name: typing-extensions
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 09:12:17 +00:00
dependabot[bot]
069a112e3b Bump pyright from 1.1.308 to 1.1.311 (#195)
Bumps [pyright](https://github.com/RobertCraigie/pyright-python) from 1.1.308 to 1.1.311.
- [Release notes](https://github.com/RobertCraigie/pyright-python/releases)
- [Commits](https://github.com/RobertCraigie/pyright-python/compare/v1.1.308...v1.1.311)

---
updated-dependencies:
- dependency-name: pyright
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-31 09:12:07 +00:00
dependabot[bot]
8c67de4b44 Bump coverage from 7.2.6 to 7.2.7 (#193)
Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.2.6 to 7.2.7.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.2.6...7.2.7)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-30 09:22:23 +00:00
dependabot[bot]
f218c9deb0 Bump tox from 4.5.1 to 4.5.2 (#190)
Bumps [tox](https://github.com/tox-dev/tox) from 4.5.1 to 4.5.2.
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/tox/compare/4.5.1...4.5.2)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-29 09:17:01 +00:00
dependabot[bot]
bcbe201053 Bump typing-extensions from 4.6.1 to 4.6.2 (#187)
Bumps [typing-extensions](https://github.com/python/typing_extensions) from 4.6.1 to 4.6.2.
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.6.1...4.6.2)

---
updated-dependencies:
- dependency-name: typing-extensions
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-26 09:21:34 +00:00
dependabot[bot]
d395a16595 Bump coverage from 7.2.5 to 7.2.6 (#181)
Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.2.5 to 7.2.6.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.2.5...7.2.6)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-25 09:17:20 +00:00
dependabot[bot]
09e0da20b0 Bump ruff from 0.0.267 to 0.0.270 (#184)
Bumps [ruff](https://github.com/charliermarsh/ruff) from 0.0.267 to 0.0.270.
- [Release notes](https://github.com/charliermarsh/ruff/releases)
- [Changelog](https://github.com/charliermarsh/ruff/blob/main/BREAKING_CHANGES.md)
- [Commits](https://github.com/charliermarsh/ruff/compare/v0.0.267...v0.0.270)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-25 09:13:17 +00:00
dependabot[bot]
8945ac7a3a Bump typing-extensions from 4.5.0 to 4.6.1 (#180)
Bumps [typing-extensions](https://github.com/python/typing_extensions) from 4.5.0 to 4.6.1.
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.5.0...4.6.1)

---
updated-dependencies:
- dependency-name: typing-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 09:14:07 +00:00
dependabot[bot]
c1d2dd65fa Bump requests from 2.30.0 to 2.31.0 (#178)
Bumps [requests](https://github.com/psf/requests) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.30.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-23 09:11:18 +00:00
dependabot[bot]
0b66fd7535 Bump httpx from 0.24.0 to 0.24.1 (#174)
Bumps [httpx](https://github.com/encode/httpx) from 0.24.0 to 0.24.1.
- [Release notes](https://github.com/encode/httpx/releases)
- [Changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/encode/httpx/compare/0.24.0...0.24.1)

---
updated-dependencies:
- dependency-name: httpx
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-19 09:13:15 +00:00
Martijn Pieters
fbdaa62e24 💄 Pull version from installation metadata (#172)
The version string in the `__init__` module is needed to support
towncrier, but that does mean there are now two locations for the
project version: pyproject.toml and the `__init__.py` file. Use
`importlib.metadata` to pull the version from the installation metadata.
2023-05-17 17:09:52 +00:00
Martijn Pieters
70d8fef402 Merge pull request #171 from long2ice/towncrier
📣 Start managing the changelog with towncrier
2023-05-17 17:37:51 +01:00
Martijn Pieters
42cb99d4eb 📣 Start managing the changelog with towncrier
This PR includes a workflow that validates that future PRs include
a changelog entry (unless the `skip-changelog` label is present on the
PR, or the PR is a dependabot PR).

Use 'poetry run towncrier create` to create entries for the changelog.
2023-05-17 17:31:03 +01:00
Martijn Pieters
b287f21043 📖 Copy-edit README (#168)
- Update workflow shields to point to new CI/CD pipeline, and link
  all shields to somewhere appropriate.
- Use product names instead of code-markup names.
- Edit for English grammar and style.
- Expand decorator argument table to add defaults
- Add more meaningful `Coder` and key builder examples and expand
  on what the default key builder does.
2023-05-17 11:34:40 +00:00
Martijn Pieters
826e785522 Merge pull request #166 from long2ice/release_wf
📦 Move PyPI release workflow into the main workflow.
2023-05-17 11:38:11 +01:00
Martijn Pieters
282fcc7cea 📦 Move PyPI release workflow into the main workflow.
This ensures that any releases are fully tested before publication.

The workflow first builds the distribution files (sdist, wheel) before
using a deployment environment to publish these to PyPI, using the
GitHub actions OpenID support to authenticate with PyPI.
2023-05-17 11:33:25 +01:00
dependabot[bot]
645cd94ec1 Bump fastapi from 0.95.1 to 0.95.2 (#167)
Bumps [fastapi](https://github.com/tiangolo/fastapi) from 0.95.1 to 0.95.2.
- [Release notes](https://github.com/tiangolo/fastapi/releases)
- [Commits](https://github.com/tiangolo/fastapi/compare/0.95.1...0.95.2)

---
updated-dependencies:
- dependency-name: fastapi
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-17 09:11:54 +00:00
Martijn Pieters
4aa8060faa Merge pull request #163 from long2ice/3777dependabot/pip/main/coverage-7.2.5 2023-05-16 15:07:50 +01:00
dependabot[bot]
189f997228 Bump coverage from 6.5.0 to 7.2.5
Bumps [coverage](https://github.com/nedbat/coveragepy) from 6.5.0 to 7.2.5.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/6.5.0...7.2.5)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-16 13:46:35 +00:00
Martijn Pieters
3e7deea2ba Correct merge metadata step id, loosen version (#165) 2023-05-16 13:31:55 +00:00
Martijn Pieters
452eaedf5b 🤦 put dependabot wf in correct place (#164) 2023-05-16 13:24:45 +00:00
Martijn Pieters
24e1d8d40b Merge pull request #162 from long2ice/5db3dependabot/pip/main/aiobotocore-2.5.0
Bump aiobotocore from 1.4.2 to 2.5.0
2023-05-16 14:21:41 +01:00
dependabot[bot]
621103c2b8 Bump aiobotocore from 1.4.2 to 2.5.0
Bumps [aiobotocore](https://github.com/aio-libs/aiobotocore) from 1.4.2 to 2.5.0.
- [Release notes](https://github.com/aio-libs/aiobotocore/releases)
- [Changelog](https://github.com/aio-libs/aiobotocore/blob/master/CHANGES.rst)
- [Commits](https://github.com/aio-libs/aiobotocore/compare/1.4.2...2.5.0)

---
updated-dependencies:
- dependency-name: aiobotocore
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-16 13:17:50 +00:00
Martijn Pieters
bb12a91b58 Create codeql scanning workflow (#161)
This helps find any security issues in PRs.
2023-05-16 13:14:58 +00:00
Martijn Pieters
4236b350d9 Configure dependabot and associated workflows (#160)
The auto-merge workflow automatically approves dependabot PRs that
update dependencies or github actions where the semver difference is
at most a minor upgrade. These PRs are then auto-merged once the CI
checks have passed.

The labeller workflow adds / removes the auto-merge label to make
auto-merging more visible in issue lists and to make it possible to
filter such PRs. This workflow is unfortunately not triggered
when the auto-approve workflow enables auto-merging due to GH anti-
recursion rules, so the auto-merge workflow adds the label explicitly.
2023-05-16 13:06:11 +00:00
Martijn Pieters
23bb4e9cd4 Add pytest-style linting (#159)
This does mean we need to tell pyright that the init_cache auto-use
fixture is still being used even though it now has a leading underscore.
2023-05-16 12:45:26 +00:00
Martijn Pieters
230c24a4e0 Give tests and examples separate ruff configs (#158)
This allows more fine-grained lint rule adjustments, and allows
the examples to treat fastapi_cache as a 'third party' module, just
like users of the library would use it.
2023-05-16 12:42:12 +00:00
Martijn Pieters
d938bbe4d2 Add flake8-comprehensions linter (#157) 2023-05-16 12:18:53 +00:00
Martijn Pieters
50e3f91a87 Add flake8-bandit linting (#156)
The linter has been used in the past, so most assertions for these were
already there but needed to be updated to use `noqa: S` instead of
`nosec: B` annotations.
2023-05-16 12:11:10 +00:00
Martijn Pieters
cbad93c970 Merge pull request #155 from long2ice/pyupgrade
Add pyupgrade linter
2023-05-16 13:07:56 +01:00
Martijn Pieters
f7db5cceb1 Add pyupgrade linter
This ensures we use the best syntax for the minimal Python version used.
The linter found one issue, fixed with the auto-fixer.
2023-05-16 13:00:18 +01:00
Martijn Pieters
daad4cf9a8 Merge pull request #154 from long2ice/simplify_pyproject.toml
Clean up pyproject.toml
2023-05-16 12:59:16 +01:00
Martijn Pieters
d2947d01b5 Clean up pyproject.toml
- remove usused dependency
- use poetry syntax to specify minimal python versions
- simplify path selections in mypy and pyright
- correct pytest section name
2023-05-16 12:47:47 +01:00
Martijn Pieters
637c825dc8 Merge pull request #153 from long2ice/simplify_wf
CI: tox now takes care of extras and groups
2023-05-16 12:35:22 +01:00
Martijn Pieters
1cf352bc9c CI: tox now takes care of extras and groups
The outer Poetry installation can be simplified as long as tox is part
of the dev group.
2023-05-16 12:29:18 +01:00
Martijn Pieters
f314d84d31 Merge pull request #152 from long2ice/ruff
Switch to ruff to handle linting and formatting
2023-05-16 12:24:02 +01:00
Martijn Pieters
1d9e126037 Switch to ruff to handle linting and formatting
Ruff handles black, flake8 and isort in one package, and is way faster.
The isort rules had not been enforced, so this commit includes a lot
of import resorting changes.

I switched to flake8-bugbear and the standard black-compatible line
length of 80 + 10% (so max 88 characters), so some line reflowing is
included too.

Finally, because bugbear rightly points out that `setattr()` is less
performant, I've switched the `__signature__` assigment back to using
a direct assignment with type ignore comment.
2023-05-16 12:18:24 +01:00
Martijn Pieters
707b4aec95 Merge pull request #151 from long2ice/poetry_core
Use poetry-core as the build system
2023-05-16 11:08:03 +01:00
Martijn Pieters
293a06467a Use poetry-core as the build system
Poetry core is the lighter-weight build system for poetry; this makes
installing the project faster.
2023-05-16 11:03:53 +01:00
Martijn Pieters
7767d2460d Merge pull request #146 from long2ice/tox
Add tox configuration
2023-05-16 10:52:25 +01:00
Martijn Pieters
0e9a8baeb2 Add tox configuration
Tox manages test environments for all supported Python versions, as
well as linting and formatting tools. On GitHub, the test and lint
steps are kept as close as possible to the Makefile equivalents.
2023-05-16 10:49:17 +01:00
Martijn Pieters
2eabc49d24 Merge pull request #150 from long2ice/cache_mypy_cache
CI: cache the mypy cache for faster runs
2023-05-15 17:49:38 +01:00
Martijn Pieters
b5aabaaf59 CI: cache the mypy cache for faster runs 2023-05-15 17:43:49 +01:00
Martijn Pieters
2da4701c1d Merge pull request #148 from long2ice/separate_linting
CI: use a separate step to run linters
2023-05-15 17:33:34 +01:00
Martijn Pieters
31d0b007cd CI: use a separate step to run linters
This makes it easier to separate linter dependencies from older Python
releases.
2023-05-15 17:30:06 +01:00
Martijn Pieters
e57cd59c98 Merge pull request #149 from long2ice/pr_is_not_push
CI: don't run this workflow twice on a PR
2023-05-15 17:25:29 +01:00
Martijn Pieters
4a012c7cae CI: don't run this workflow twice on a PR
If a maintainer pushes to a PR, the workflow push and pull_request events
both trigger. Limit the workflow to the main branch, explicitly.
2023-05-15 17:23:26 +01:00