Ran Benita
882c4da2f3
fixtures: inline `fail_fixturefunc`
...
Doesn't add much.
2024-04-27 09:48:14 -03:00
Ran Benita
2e8fb9f140
fixtures: extract a `_check_fixturedef` method
...
This stuff is less interesting when reading `_get_active_fixturedef`.
2024-04-27 09:48:14 -03:00
Ran Benita
acf2971f46
fixtures: inline `_getnextfixturedef` into `_get_active_fixturedef`
2024-04-27 09:48:14 -03:00
Ran Benita
3c77aec1da
fixtures: move "request" check early
2024-04-27 09:48:14 -03:00
Ran Benita
d217d68cde
fixtures: inline `_compute_fixture_value`
2024-04-27 09:48:14 -03:00
Ran Benita
530be28575
fixtures: use early return in `_get_active_fixturedef`
2024-04-27 09:48:14 -03:00
Bruno Oliveira
d208c1d4a5
Merge pull request #12256 from bluetech/misc2
...
2 small cleanups
2024-04-27 09:39:16 -03:00
Ran Benita
80ca255d42
pathlib: make `absolutepath` support `os.PathLike[str]`
...
This slightly simplifies a bit of path.
2024-04-27 11:53:01 +03:00
Ran Benita
1a332802ff
Avoid slicing `sys.version_info` in version conditionals
...
It is unnecessary, and some static analyzers don't handle it.
2024-04-27 01:14:21 +03:00
Bruno Oliveira
93c2cdf6d6
cherry-pick release-8.1.2 ( #12252 )
...
(cherry picked from commit 7df3dbc545b4b4deb2148683cd02f774b2d19fd8)
2024-04-26 15:25:44 -03:00
Shekhar verma
4eb8b6d525
Changed importError to ModuleNotFoundError ( #12220 )
...
* Changed importError to ModuleNotFoundError
* added testing for importorskip
* added exc_types parameter in importorskip
* Added warning and Test Cases
* Improve tests and docs
* Improve deprecation docs
* Change exc_type to kw only
* Apply suggestions from code review
Co-authored-by: Florian Bruhin <me@the-compiler.org>
* Fix check
---------
Co-authored-by: Bruno Oliveira <bruno@soliv.dev>
Co-authored-by: Florian Bruhin <me@the-compiler.org>
2024-04-26 09:48:57 +02:00
pre-commit-ci[bot]
fafab1dbfd
[pre-commit.ci] pre-commit autoupdate ( #12238 )
...
* [pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.3.7 → v0.4.1](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.7...v0.4.1 )
- [github.com/tox-dev/pyproject-fmt: 1.7.0 → 1.8.0](https://github.com/tox-dev/pyproject-fmt/compare/1.7.0...1.8.0 )
* noqa a test
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
2024-04-23 11:59:12 -03:00
poulami-sau
5cffef7f07
Fixed Bug Regarding Attribute Error in pytest.approx For Types Implicitly Convertible to Numpy Arrays ( #12232 )
...
* added test case in testing/python/approx.py based on test case provided by reporter in issue #12114
* test cases pass for pytest testing/python/approx.py
* expanded the type annotation to include objects which may cast to a array and renamed other_side to other_side_as_array and asserted that it is not none
2024-04-23 10:45:33 +02:00
Florian Bruhin
a830a3e98d
Update events/trainings ( #12236 )
2024-04-22 19:52:25 +02:00
dependabot[bot]
1d322ffb48
build(deps): Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 ( #12233 )
...
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request ) from 6.0.3 to 6.0.4.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases )
- [Commits](c55203cfde...9153d834b6
)
---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
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>
2024-04-22 11:54:48 +02:00
github-actions[bot]
63d985c6d3
[automated] Update plugin list ( #12230 )
...
Co-authored-by: pytest bot <pytestbot@users.noreply.github.com>
2024-04-21 10:57:36 -03:00
Ran Benita
3617ef1c79
Merge pull request #12227 from bluetech/deprecate-legacy-path-impls
...
hookspec: deprecate hookimpls requesting py.path parameters
2024-04-21 11:52:16 +03:00
Ran Benita
58136c5376
hookspec: deprecate hookimpls requesting py.path parameters
2024-04-21 11:37:56 +03:00
Bruno Oliveira
042625957a
Fully type annotate pathlib.py ( #12229 )
...
Add full type annotations to `pathlib.py` and remove the `allow-untyped-defs` directive.
2024-04-20 16:32:36 -03:00
Bruno Oliveira
6fb474a3eb
Refactor insert_missing_modules function ( #12210 )
...
Makes the logic more straightforward IMO.
2024-04-20 11:58:14 +00:00
Bruno Oliveira
ff806b239e
importlib: set children as attribute of parent modules ( #12208 )
...
Now `importlib` mode will correctly set the imported modules as an attribute of their parent modules.
As helpfully posted on #12194 , that's how the Python import module works so we should follow suit.
In addition, we also try to import the parent modules as part of the process of importing a child module, again mirroring how Python importing works.
Fix #12194
2024-04-20 11:31:33 +00:00
dj
ad95d59d61
Use monkeypatch in test_pytest_version_env_var
...
Follow up to #12190
2024-04-18 23:05:29 -03:00
dj
48b6d18834
Add PYTEST_VERSION environment variable ( #12190 )
...
Among other things, it can be used to check if a code is running from within a pytest session.
Fixes #9502
2024-04-18 07:45:47 -03:00
pre-commit-ci[bot]
58844247f7
[pre-commit.ci] pre-commit autoupdate ( #12218 )
...
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.3.5 → v0.3.7](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.5...v0.3.7 )
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-04-15 23:04:19 +00:00
dependabot[bot]
b56b294f54
build(deps): Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 ( #12215 )
...
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request ) from 6.0.2 to 6.0.3.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases )
- [Commits](70a41aba78...c55203cfde
)
---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
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>
2024-04-15 13:08:38 -03:00
Ran Benita
6e248818b9
Merge pull request #12212 from pytest-dev/update-plugin-list/patch-089116bdf
...
[automated] Update plugin list
2024-04-15 17:59:30 +03:00
dependabot[bot]
0644e467fb
build(deps): Bump hynek/build-and-inspect-python-package ( #12214 )
...
Bumps [hynek/build-and-inspect-python-package](https://github.com/hynek/build-and-inspect-python-package ) from 2.2.1 to 2.4.0.
- [Release notes](https://github.com/hynek/build-and-inspect-python-package/releases )
- [Changelog](https://github.com/hynek/build-and-inspect-python-package/blob/main/CHANGELOG.md )
- [Commits](https://github.com/hynek/build-and-inspect-python-package/compare/v2.2.1...v2.4.0 )
---
updated-dependencies:
- dependency-name: hynek/build-and-inspect-python-package
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>
2024-04-15 10:33:41 +02:00
pytest bot
5f6e825a26
[automated] Update plugin list
2024-04-14 00:21:52 +00:00
HolyMagician03-UMich
089116bdff
short test summary: do not truncate text when -vv is given
...
Fix #11777
---------
Co-authored-by: Bruno Oliveira <bruno@soliv.dev>
2024-04-10 08:07:18 -03:00
Ran Benita
1f001cd105
Merge pull request #12199 from tamird/mkdir-test-init
...
Add test for Cache.mkdir
2024-04-09 22:26:36 +03:00
Bruno Oliveira
99890636bf
Refine how we detect namespace packages ( #12169 )
...
Previously we used a hand crafted approach to detect namespace packages, however we should rely on ``importlib`` to detect them for us.
Fix #12112
---------
Co-authored-by: Ran Benita <ran@unusedvar.com>
2024-04-09 13:21:51 -03:00
dependabot[bot]
17fc20af78
build(deps): Bump hynek/build-and-inspect-python-package ( #12195 )
...
Bumps [hynek/build-and-inspect-python-package](https://github.com/hynek/build-and-inspect-python-package ) from 2.0.2 to 2.2.1.
- [Release notes](https://github.com/hynek/build-and-inspect-python-package/releases )
- [Changelog](https://github.com/hynek/build-and-inspect-python-package/blob/main/CHANGELOG.md )
- [Commits](https://github.com/hynek/build-and-inspect-python-package/compare/v2.0.2...v2.2.1 )
---
updated-dependencies:
- dependency-name: hynek/build-and-inspect-python-package
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>
Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
2024-04-09 10:04:42 -03:00
pre-commit-ci[bot]
1ca59dfd6b
[pre-commit.ci] pre-commit autoupdate ( #12200 )
...
updates:
- [github.com/pre-commit/pre-commit-hooks: v4.5.0 → v4.6.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.5.0...v4.6.0 )
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-04-09 09:55:05 -03:00
Tamir Duberstein
e06c337bd8
Add test for Cache.mkdir
2024-04-08 15:08:18 +01:00
Tamir Duberstein
a02cc0ad1b
Add types
2024-04-08 15:08:17 +01:00
dependabot[bot]
74f05648d5
build(deps): Bump django in /testing/plugins_integration ( #12196 )
...
Bumps [django](https://github.com/django/django ) from 5.0.3 to 5.0.4.
- [Commits](https://github.com/django/django/compare/5.0.3...5.0.4 )
---
updated-dependencies:
- dependency-name: django
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>
2024-04-08 12:15:01 +02:00
github-actions[bot]
f75dd87eb7
[automated] Update plugin list ( #12193 )
...
Co-authored-by: pytest bot <pytestbot@users.noreply.github.com>
2024-04-07 08:57:04 -03:00
Ran Benita
5acc3f86ac
Merge pull request #12168 from tamird/fix-gitignore-missing
...
Initialize cache directory in isolation
2024-04-06 23:18:19 +03:00
Florian Bruhin
4e3dd21506
Improve stale bot messages ( #12185 )
...
To avoid confusion, see e.g. https://github.com/pytest-dev/pytest/issues/12123#issuecomment-2035283472
Co-authored-by: Bruno Oliveira <nicoddemus@gmail.com>
2024-04-04 00:24:34 +02:00
Tamir Duberstein
2e65f4e3ac
Initialize cache directory in isolation
...
Creating and initializing the cache directory is interruptible; this
avoids a pathological case where interrupting a cache write can cause
the cache directory to never be properly initialized with its supporting
files.
Unify `Cache.mkdir` with `Cache.set` while I'm here so the former also
properly initializes the cache directory.
Closes #12167 .
2024-04-03 16:26:43 +01:00
Manuel López-Ibáñez
cc588d1a1a
Doc: `import pytest` in `conftest.py` example in `doctest.rst` ( #12181 )
2024-04-03 09:02:09 -03:00
Ran Benita
b63bea9523
Merge pull request #11910 from bluetech/move-show-fixtures
...
Move show-fixtures code from python.py to fixtures.py
2024-04-02 23:28:32 +03:00
Ran Benita
a10ddad774
Merge pull request #12171 from pytest-dev/update-plugin-list/patch-12e061e2e
...
[automated] Update plugin list
2024-04-02 23:15:16 +03:00
Ran Benita
1188ea2608
Move show-fixtures code from python.py to fixtures.py
...
It makes more sense, also, we have a long term idea of generalizing
fixture support to items defined by other plugins, not just python, in
which case `--fixtures` would definitely not be python-plugin
specific.
2024-04-02 23:02:10 +03:00
Ran Benita
aa5324560b
Merge pull request #12159 from pytest-dev/dependabot/pip/testing/plugins_integration/pytest-cov-5.0.0
...
build(deps): Bump pytest-cov from 4.1.0 to 5.0.0 in /testing/plugins_integration
2024-04-02 22:59:20 +03:00
Ronny Pfannschmidt
381593ccf0
Merge pull request #12176 from pytest-dev/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2024-04-02 08:41:02 +02:00
pre-commit-ci[bot]
9d6b5f8772
[pre-commit.ci] pre-commit autoupdate
...
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.3.4 → v0.3.5](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.4...v0.3.5 )
2024-04-01 22:13:25 +00:00
Pierre Sassoulas
44895289c7
Merge pull request #12170 from Pierre-Sassoulas/small-performance-improvments
...
Small performance/readability improvments when iterating dictionnary with ``keys()``
2024-03-31 15:15:03 +02:00
Pierre Sassoulas
1125296b53
Small performance/readability improvments when iterating dictionnary with ``keys()``
...
Based on pylint's message ``consider-iterating-dictionary`` suggestion.
Surprisingly using a dict or set comprehension instead of a new temp var is
actually consistently slower here, which was not intuitive for me.
```python
from timeit import timeit
families = {1: {"testcase": [1, 2, 3, 5, 8]}}
attrs = {1: "a", 2: "b", 3: "c", 4: "d", 5: "e", 6: "f", 7: "g", 8: "h"}
class Old:
def old(self):
self.attrs = attrs
temp_attrs = {}
for key in self.attrs.keys():
if key in families[1]["testcase"]:
temp_attrs[key] = self.attrs[key]
self.attrs = temp_attrs
class OldBis:
def old(self):
self.attrs = attrs
temp_attrs = {}
for key in self.attrs:
if key in families[1]["testcase"]:
temp_attrs[key] = self.attrs[key]
self.attrs = temp_attrs
class New:
def new(self):
self.attrs = attrs
self.attrs = { # Even worse with k: v for k in self.attrs.items()
k: self.attrs[k] for k in self.attrs if k in families[1]["testcase"]
}
if __name__ == "__main__":
n = 1000000
print(f"Old: {timeit(Old().old, number=n)}")
print(f"Just removing the keys(): {timeit(OldBis().old, number=n)}")
print(f"List comp, no temp var: {timeit(New().new, number=n)}")
```
Result:
Old: 0.9493889989680611
Just removing the keys(): 0.9042672360083088
List comp, no temp var: 0.9916125109884888
It's also true for the other example with similar benchmark, but the exact
code probably does not need to be in the commit message.
2024-03-31 14:43:07 +02:00
Pierre Sassoulas
bd9b62161a
[tooling] Add a manual step to run pylint in pre-commit
2024-03-31 14:43:07 +02:00