Commit Graph

1594 Commits

Author SHA1 Message Date
Hynek Schlawack 37ac3ef088
docs: improve why 2024-07-15 16:16:19 +02:00
Hynek Schlawack be3015293c
Work around CodSpeed/cffi 3.13 incompatibility 2024-07-15 15:54:05 +02:00
Hynek Schlawack a518d9ddfe
docs: make more examplar 2024-07-15 11:27:08 +02:00
Hynek Schlawack 8079a35545
Python 3.8 doesn't pass on Mypy anymore 2024-07-15 11:26:57 +02:00
Hynek Schlawack 8e759ce878
docs: better separation of the ToC 2024-07-15 11:26:45 +02:00
Hynek Schlawack 9ebd31c894
update ruff 2024-07-15 11:15:17 +02:00
Hynek Schlawack 08b1b9ccd0
docs: add more terms that ppl might know 2024-07-15 11:00:55 +02:00
Stefan Scherfke edcaf04a4d
make_class(): Add "__annotations_" to generated class (#1285)
* make_class(): Add "__annotations_" to generated class

Fixes: #1271

* Fix PR#

* Flip

---------

Co-authored-by: Hynek Schlawack <hs@ox.cx>
2024-07-13 10:52:46 +00:00
Hynek Schlawack c83de6ae90
Update ruff 2024-07-13 12:40:48 +02:00
Hynek Schlawack 0b07265e0c
Unpin Mypy (#1301)
* Unpin Mypy

fixes #1279

Looks like 1.10.1 fixed itself?

* Fix type errors

* Update pins

* Don't run Mypy on 3.8 too

* wtf

* Fix order
2024-07-13 12:33:59 +02:00
Hynek Schlawack 6e25a0c4f5
Unpin/fix Pyright (#1302)
* Unpin/fix Pyright

Fixes #1278

* Consistency

* Remove stale comment

* Add explanation why we need experimental features
2024-07-13 12:01:09 +02:00
Hynek Schlawack 6f64cd6d19
Cooperate on making CodSpeed work in tox (#1300)
* Cooperate on making CodSpeed work in tox

* Make CodSpeed an own job

* Install tox

* Limit benchmarks

7 Minutes are a bit long

* Still too many
2024-07-11 13:24:51 +02:00
Hynek Schlawack 0e031fc83c
CodSpeed needs more ENV 2024-07-11 12:26:33 +02:00
Hynek Schlawack 3bec9e1825
Add Codspeed (#1299)
* Add Codspeed

* Only run benchmarks on 3.12 (for now?)
2024-07-11 12:17:22 +02:00
Hynek Schlawack 11288d5709
Update Ruff 2024-06-28 09:42:30 +02:00
Denis Laxalde e1b2c9491b
refactor: Only loop once on "cached_properties" when building slotted classes (#1290)
Only loop once on "cached_properties" when building slotted classes

Previously the cached_properties dict was read three times.

Co-authored-by: Hynek Schlawack <hs@ox.cx>
2024-06-26 12:25:39 +00:00
pre-commit-ci[bot] b393d79aaf
[pre-commit.ci] pre-commit autoupdate (#1292)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.4.5 → v0.4.7](https://github.com/astral-sh/ruff-pre-commit/compare/v0.4.5...v0.4.7)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-06-03 21:50:00 +00:00
Hynek Schlawack 5618e6fb8d
Add missing empty lines to changelog btw releases 2024-05-27 20:11:05 +02:00
Hynek Schlawack 6f99945f40
Actual white 2024-05-26 21:00:49 +02:00
Hynek Schlawack e976ebcac8
Fix ratio 2024-05-26 20:56:27 +02:00
Hynek Schlawack bccbcad65d
Leave some breathing room 2024-05-26 20:42:38 +02:00
Hynek Schlawack 1a7b87daae
Add white background 2024-05-26 20:33:24 +02:00
Hynek Schlawack f62496120f
pre-commit autoupdate 2024-05-25 08:33:19 -04:00
Hynek Schlawack 7649f6e6b5
sponsors: add Klaviyo 2024-05-25 08:23:46 -04:00
pre-commit-ci[bot] f708291c4f
[pre-commit.ci] pre-commit autoupdate (#1281)
* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/psf/black: 24.4.0 → 24.4.2](https://github.com/psf/black/compare/24.4.0...24.4.2)
- [github.com/astral-sh/ruff-pre-commit: v0.4.1 → v0.4.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.4.1...v0.4.3)

* Fix Sphinx warning

* pytest-mypy-plugins doesn't work on 3.13 yet

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Hynek Schlawack <hs@ox.cx>
2024-05-08 08:19:47 +00:00
my1e5 f7f317ae4c
Fix small typo in init.md (#1277)
Co-authored-by: Hynek Schlawack <hs@ox.cx>
2024-04-24 14:39:04 +00:00
Hynek Schlawack f8c991b79f
pre-commit autoupdate 2024-04-24 16:29:18 +02:00
Hynek Schlawack 46f1f35896
Pin Mypy & Pyright
Both are failing.
2024-04-24 16:28:53 +02:00
Hynek Schlawack 5ce5d8278f
pre-commit autoupdate
and unpin python for interrogate 🎉
2024-04-09 15:22:06 -07:00
Denis Laxalde 88e2896ca9
Preserve AttributeError in slotted classes with cached_property (#1253)
* Preserve AttributeError in slotted classes with cached_property

In slotted classes' generated __getattr__(), we try __getattribute__()
before __getattr__(), if available, and eventually let AttributeError
propagate. This matches better with the behaviour described in Python's
documentation "Customizing attribute access":

  https://docs.python.org/3/reference/datamodel.html#customizing-attribute-access

Fix https://github.com/python-attrs/attrs/issues/1230

* Update changelog.d/1253.change.md

---------

Co-authored-by: Hynek Schlawack <hs@ox.cx>
2024-04-02 04:57:25 +00:00
pre-commit-ci[bot] 82a14627fd
[pre-commit.ci] pre-commit autoupdate (#1274)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.3.3 → v0.3.5](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.3...v0.3.5)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-04-02 03:26:05 +00:00
Hynek Schlawack a1053048f1
Fix typo 2024-03-18 15:34:38 +01:00
Hynek Schlawack 2446e640ca
Remove non-version metadata hack (#1268)
* Remove non-version metadata hack

As per our deprecation policy.

* Add news fragment

* It’s a pkg
2024-03-18 15:19:38 +01:00
Hynek Schlawack 1b3898a4b8
Avoid unnecessary assignment/append 2024-03-17 13:35:03 +01:00
Hynek Schlawack 028797bd24
Switching to tuples removed this case
Checking if an element is in a small tuple is fast enough.
2024-03-17 12:27:04 +01:00
Hynek Schlawack 1967be0eb6
Move factory tests where they belong 2024-03-17 09:15:36 +01:00
Hynek Schlawack 189ab7f806
Improve docstring 2024-03-17 09:07:50 +01:00
Hynek Schlawack d812e920cc
Explain what autodata 2024-03-17 09:06:01 +01:00
Hynek Schlawack 9e803dd683
to_bool: avoid creating sets on each call 2024-03-17 09:04:54 +01:00
Hynek Schlawack 9cf3d338f4
Improve/harmonize docstrings 2024-03-17 08:07:39 +01:00
Hynek Schlawack 447f8a4e21
Tuples are cheaper than lists 2024-03-17 07:32:02 +01:00
Hynek Schlawack 4b1d869e9a
Simplify slot field detection 2024-03-17 07:27:41 +01:00
Hynek Schlawack deb97638a7
Refactor setters determination into function 2024-03-17 07:17:45 +01:00
Hynek Schlawack 9b9a69140d
Upper-case private constants for better readability 2024-03-17 06:49:54 +01:00
Hynek Schlawack 8460190b29
Remove attrs.validators.provides (#1265)
* Remove attrs.validators.provides

* Add news fragment
2024-03-16 21:15:47 +00:00
Hynek Schlawack 1e21449aee
Use new-style callout 2024-03-16 19:33:08 +01:00
Hynek Schlawack 278d3a5bc6
evolve: remove support for passing instances per kw (#1264)
As per our deprecation policy.
2024-03-16 18:23:17 +00:00
Hynek Schlawack 09e35d448e
Use tox-uv in CI (#1266)
* Use tox-uv in CI

* uv is 3.8+
2024-03-16 18:12:19 +01:00
Hynek Schlawack b201831a4b
Make tox.ini uv-ready 2024-03-16 18:00:52 +01:00
Hynek Schlawack d9ed5937fe
Deprecate attr.s's repr_ns (#1263)
* Deprecate attr.s's repr_ns

It's pointless in Python 3. define et al never had it.

* Add news fragment

* Fix typo
2024-03-16 15:55:37 +00:00