00cbfa2860Accepting request 1234568 from devel:languages:python
factory
Ana Guerrero
2025-01-06 15:04:53 +0000
c1a34be66e- update to 24.3.0: * Python 3.7 has been dropped. * Introduce attrs.NothingType, for annotating types consistent with attrs.NOTHING. * Allow mutating __suppress_context__ and __notes__ on frozen exceptions. * attrs.converters.optional() works again when taking attrs.converters.pipe() or another Converter as its argument. * *attrs* instances now support copy.replace(). * attrs.validators.instance_of()'s type hints now allow for union types. * For example: instance_of(str | int)
devel
Dirk Mueller2025-01-02 14:13:19 +0000
2ec451b24fAccepting request 1221445 from devel:languages:python
Ana Guerrero
2024-11-07 15:23:48 +0000
ae5cd6f616- Upgrade to 24.2.0: - Big releases always carry the risk of regressions, but never did I expect to break Python 3.14’s CI! On the plus side, attrs runs on 3.14 now. - Upgrade to 24.1.0: - The most notable is probably the possibility to receive self and field definitions in your converters by wrapping them into a attrs.Converter. - The other big thing is our own replacement for __init_subclass__ called (you guessed it) __attrs_init_subclass__. Check out the docs, if you're not sure what this is good for. - Finally, we've made more important steps to promote our "new" APIs (can you believe they're 4 years old!?) in the docs. If we missed anything, please let us know. - Remove upstreamed patch: - pytest8.patchMatej Cepl2024-11-05 13:09:50 +0000
7a55b8459bAccepting request 1175271 from devel:languages:python
Ana Guerrero
2024-05-21 16:34:31 +0000
7314f0533cAccepting request 1174816 from home:mcalabkova:branches:devel:languages:python:pytest
Steve Kowalik
2024-05-20 01:34:47 +0000
95121a381aAccepting request 1137517 from devel:languages:python
Ana Guerrero
2024-01-09 19:48:35 +0000
223b7c0d84- update to 23.2.0: * The type annotation for attrs.resolve_types() is now correct. * Type stubs now use typing.dataclass_transform to decorate dataclass-like decorators, instead of the non-standard __dataclass_transform__ special form, which is only supported by Pyright. * Fixed serialization of namedtuple fields using attrs.asdict/astuple() with retain_collection_types=True. * attrs.AttrsInstance is now a typing.Protocol in both type hints and code. * This allows you to subclass it along with another Protocol. * If *attrs* detects that __attrs_pre_init__ accepts more than just self, it will call it with the same arguments as __init__ was called. * This allows you to, for example, pass arguments to super().__init__(). * Slotted classes now transform functools.cached_property decorated methods to support equivalent semantics. * Added *class_body* argument to attrs.make_class() to provide additional attributes for newly created classes. * It is, for example, now possible to attach methods. be deeply immutable - Initial versionDirk Mueller2024-01-08 09:00:21 +0000
4aa59c3a49Accepting request 1095918 from devel:languages:python
Dominique Leuenberger
2023-06-30 17:57:58 +0000
9c4faee9c5- remove outdated constructs, we no longer support < 3.8Dirk Mueller2023-06-22 07:05:04 +0000
6cab853594Accepting request 1085487 from devel:languages:python
Dominique Leuenberger
2023-05-19 09:55:08 +0000
2d1eceef6a- Update to 23.1.0: # Backwards-incompatible Changes * Python 3.6 has been dropped and packaging switched to static package data using Hatch. #993 # Deprecations * The support for zope-interface via the attrs.validators.provides validator is now deprecated and will be removed in, or after, April 2024. * The presence of a C-based package in our developement dependencies has caused headaches and we're not under the impression it's used a lot. * Let us know if you're using it and we might publish it as a separate package. #1120 # Changes * attrs.filters.exclude() and attrs.filters.include() now support the passing of attribute names as strings. #1068 * attrs.has() and attrs.fields() now handle generic classes correctly. #1079 * Fix frozen exception classes when raised within e.g. contextlib.contextmanager, which mutates their __traceback__ attributes. #1081 * @frozen now works with type checkers that implement PEP-681 (ex. pyright). #1084 * Restored ability to unpickle instances pickled before 22.2.0. #1085 * attrs.asdict()'s and attrs.astuple()'s type stubs now accept the attrs.AttrsInstance protocol. #1090 * Fix slots class cellvar updating closure in CPython 3.8+ even when __code__ introspection is unavailable. #1092 * attrs.resolve_types() can now pass include_extras toDaniel Garcia2023-05-08 09:40:54 +0000
636b32d578Accepting request 1081990 from devel:languages:python
Dominique Leuenberger
2023-04-22 20:01:56 +0000
9a928ed3a6Accepting request 1081338 from home:dirkmueller:acdc:as_python3_moduleDirk Mueller2023-04-21 14:53:49 +0000
aa049511b2Accepting request 1046288 from devel:languages:python
Dominique Leuenberger
2023-01-04 16:50:55 +0000
07655b9764- update to 22.2.0: * Python 3.5 is not supported anymore. * Python 3.6 is now deprecated and support will be removed in the next release. * attrs.field() now supports an *alias* option for explicit __init__ argument names. * attrs.NOTHING is now an enum value, making it possible to use with e.g. typing.Literal. * Added missing re-import of attr.AttrsInstance to the attrs namespace. * Fix slight performance regression in classes with custom __setattr__ and speedup even more. * Class-creation performance improvements by switching performance- sensitive templating operations to f-strings.Dirk Mueller2023-01-02 19:24:09 +0000
cddc260e02Accepting request 1004944 from devel:languages:python
Dominique Leuenberger
2022-09-21 12:41:46 +0000
3d12fae104Accepting request 1004937 from home:pgajdos:pythonDirk Mueller2022-09-20 11:28:55 +0000
f0557ef664Accepting request 993244 from devel:languages:python
Dominique Leuenberger
2022-08-07 16:33:45 +0000
140ca96187Accepting request 992744 from home:ohollmann:branches:devel:languages:pythonMatej Cepl2022-08-05 07:21:26 +0000
cb55f111eeAccepting request 945429 from devel:languages:python
Dominique Leuenberger
2022-01-11 20:17:11 +0000
77f18d80ce- update to 21.4.0: * Fixed the test suite on PyPy3.8 where `cloudpickle does not work. * Fixed coverage report for projects that use attrs and don't set a --source. * When using @define, converters are now run by default when setting an attribute on an instance -- additionally to validators. * import attrs has finally landed! * attr.asdict(retain_collection_types=False) (default) dumps collection-esque keys as tuples. * __match_args__ are now generated to support Python 3.10's * If the class-level *on_setattr* is set to attrs.setters.validate (default in @define and @mutable) but no field defines a validator, pretend that it's not set. * The generated __repr__ is significantly faster on Pythons with f-strings. * Attributes transformed via field_transformer are wrapped with AttrsClass again. * Generated source code is now cached more efficiently for identical classes. * Added attrs.converters.to_bool(). * attrs.resolve_types() now resolves types of subclasses after the parents are resolved. * Added new validators: lt(val) (< val), le(va) (≤ val), ge(val) (≥ val), gt(val) (> val), and maxlen(n). * attrs classes are now fully compatible with cloudpickle * Added new context manager attrs.validators.disabled() and functions attrs.validators.(set|get)_disabled(). They deprecate attrs.(set|get)_run_validators()`. All functions are interoperable and modify the same internal state. They are not – and never were – thread-safe, though.Dirk Mueller2022-01-10 22:44:28 +0000
e0674ec618Accepting request 897252 from devel:languages:python
Dominique Leuenberger
2021-06-11 20:29:52 +0000
aabff92aa5- update to 21.2.0: * We had to revert the recursive feature for `attr.evolve() because it broke some use-cases -- sorry! * Python 3.4 is now blocked using packaging metadata because attrs can't be imported on it anymore. * The long-awaited, much-talked-about, little-delivered import attrs is finally upon us! * The *cmp* argument to attr.s() and attr.ib()` has been **undeprecated** It will continue to be supported as syntactic sugar to set *eq* and *order* in one go. * Further smaller changes, see included Changelog.mdDirk Mueller2021-05-27 16:42:45 +0000
3985c2b1bdAccepting request 850938 from devel:languages:python
Dominique Leuenberger
2020-11-29 11:19:29 +0000
0253d15125- update to 20.3.0: - `attr.define(), attr.frozen(), attr.mutable(), and attr.field()` remain **provisional**.Dirk Mueller2020-11-26 09:20:07 +0000
590805b1e5Accepting request 837189 from devel:languages:python
Dominique Leuenberger
2020-09-29 16:58:47 +0000
e0373e14f7- update to 20.2.0: - Python 3.4 is not supported anymore. - `attr.define(), attr.frozen(), attr.mutable(), and attr.field()` remain **provisional**. This release fixes a bunch of bugs and ergonomics but they remain mostly unchanged. Further changes see included CHANGELOG.rstDirk Mueller2020-09-17 14:41:28 +0000
5adfbf9efeAccepting request 807115 from devel:languages:python
Yuchen Lin
2020-05-28 07:07:40 +0000
b01d5e1e21- Do not restrict us to new setuptools, we generate stuff even with the older variants
Tomáš Chvátal
2020-05-14 06:45:36 +0000
9c78b76da1Accepting request 741439 from devel:languages:python
Dominique Leuenberger
2019-11-04 16:08:06 +0000
eb7296ebbf- update to 19.3.0 * Fixed auto_attribs usage when default values cannot be compared directly with ==, such as numpy arrays.Ondřej Súkup2019-10-21 08:44:42 +0000
909465f612Accepting request 734855 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-10-04 07:44:54 +0000
c90ed5f02cAccepting request 722713 from devel:languages:python
Dominique Leuenberger
2019-08-14 09:37:22 +0000
f0e1229983- Switch to multibuild to enable tests
Tomáš Chvátal
2019-08-12 13:47:18 +0000
a540737d99Accepting request 681547 from devel:languages:python
Dominique Leuenberger
2019-03-08 12:28:37 +0000
7fb526ce71- update to 19.1.0 * Fixed a bug where deserialized objects with cache_hash=True could have incorrect hash code values * Add is_callable, deep_iterable, and deep_mapping validators. * Fixed stub files to prevent errors raised by mypy's disallow_any_generics = True option. * Attributes with init=False now can follow after kw_only=True attributes. * attrs now has first class support for defining exception classes. * Clarified documentation for hashing to warn that hashable objects should be deeply immutableOndřej Súkup2019-03-04 20:22:32 +0000
a51b334a37Accepting request 655564 from devel:languages:python
Dominique Leuenberger
2018-12-14 19:45:26 +0000
4148ec869f- Fix fdupes call
Tomáš Chvátal
2018-12-06 10:06:33 +0000
011afeab78Accepting request 632660 from devel:languages:python
Dominique Leuenberger
2018-09-05 11:47:07 +0000
6d25eaa61aAccepting request 632658 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2018-09-01 19:42:51 +0000
c6e6d37ab8Accepting request 605119 from devel:languages:python
Dominique Leuenberger
2018-05-11 09:25:55 +0000
513458fdfaAccepting request 604542 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2018-05-07 13:45:33 +0000
85ba436391Accepting request 561518 from devel:languages:python
Dominique Leuenberger
2018-01-16 08:34:45 +0000
ec05bac306Accepting request 561486 from home:apersaud:branches:devel:languages:python
Thomas Bechtold
2018-01-04 05:59:20 +0000
5895cc3d09Accepting request 559130 from devel:languages:python
Dominique Leuenberger
2017-12-23 11:11:40 +0000
edd7db6fd9- add test requirements, run tests conditionally (not BuildRequiring pytest fixes bsc#1073845)
Jan Matejek
2017-12-21 16:11:35 +0000
71da1019d5Accepting request 540454 from devel:languages:python
Dominique Leuenberger
2017-11-12 16:59:28 +0000
344f664198Accepting request 540298 from home:apersaud:branches:devel:languages:pythonOndřej Súkup2017-11-10 11:33:36 +0000
cb2f083518Accepting request 507971 from devel:languages:python
Dominique Leuenberger
2017-07-11 06:25:02 +0000
8828b357c3Accepting request 507963 from home:tbechtold:branches:devel:languages:pythonDirk Mueller2017-07-04 05:29:27 +0000
d308681a38Accepting request 507531 from home:okurz:branches:devel:languages:python
Thomas Bechtold
2017-07-03 11:17:31 +0000
a5ead23504Accepting request 407021 from devel:languages:python
Dominique Leuenberger
2016-07-14 07:44:41 +0000
ba8f3fdabaAccepting request 406822 from home:frispete:python
Thomas Bechtold
2016-07-06 15:56:05 +0000
44660962d2Accepting request 399618 from home:tbechtold:branches:devel:languages:pythonDirk Mueller2016-06-06 11:09:21 +0000
8fd18e6a4eAccepting request 399603 from home:winski:python
Thomas Bechtold
2016-06-02 07:57:12 +0000