devel/py-cattrs 26.2.0 FreeBSD
Composable complex class support for attrs and dataclasses
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- Last update
- Commit
ef74fb4754- License
- MIT
- Categories
- devel, python
- Package size
- 142.4 KiB, 844.6 KiB installed
Description
cattrs is an open source Python library for structuring and unstructuring data. cattrs works best with attrs classes, dataclasses and the usual Python collections, but other kinds of classes are supported by manually registering converters.
Python has a rich set of powerful, easy to use, built-in data types like dictionaries, lists and tuples. These data types are also the lingua franca of most data serialization libraries, for formats like json, msgpack, yaml or toml.
Data types like this, and mappings like dict s in particular, represent unstructured data. Your data is, in all likelihood, structured: not all combinations of field names or values are valid inputs to your programs. In Python, structured data is better represented with classes and enumerations. attrs is an excellent library for declaratively describing the structure of your data, and validating it.
When you're handed unstructured data (by your network, file system, database...), cattrs helps to convert this data into structured data. When you have to convert your structured data into data types other libraries can handle, cattrs turns your classes and enumerations into dictionaries, integers and strings.
In the other systems
The newest version among them is 26.2.1, as upstream numbers it.
| System | Port | Version | Vulnerabilities | Status | Maintainer | Last update |
|---|---|---|---|---|---|---|
| FreeBSD | devel/py-cattrs | 26.2.0 behind since 2026-09-28 | none known | - | [email protected] | 2026-09-12 |
| OpenBSD | devel/py-cattrs | 26.2.1 newest | no data | - | The OpenBSD ports mailing-list <[email protected]> | 2026-10-16 |
| NetBSD | devel/py-cattrs | 26.2.0 behind since 2026-09-28 | none known | - | [email protected] | 2026-10-16 |
| DragonFly | devel/py-cattrs | 24.1.2 behind since 2026-09-07 | none known | - | [email protected] | - |
| MidnightBSD | devel/py-cattrs | 23.2.3_1 behind since 2026-09-07 | no data | - | [email protected] | - |
| HardenedBSD | devel/py-cattrs | 26.2.0 behind since 2026-09-28 | no data | - | [email protected] | - |
| GhostBSD | devel/py-cattrs | 26.2.0 behind since 2026-09-28 | no data | - | [email protected] | - |
Version history 1
Upstream's version as each commit to the port's Makefile set it, or as this site first saw it in the system's packages; the tree's own revisions are not versions here.
Install
Binary package:
pkg install py312-cattrs
From the ports tree:
cd /usr/ports/devel/py-cattrs/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= py312-cattrs>0:devel/py-cattrs
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 26.2.0 | 26.2.0 | 22.2.0 | 25.1.1 | 26.2.0 |
| FreeBSD:14:quarterly | 26.2.0 | 26.2.0 | n/a | 25.1.1 | 26.2.0 |
| FreeBSD:15:latest | 26.2.0 | 26.2.0 | n/a | 25.1.1 | 25.1.1 |
| FreeBSD:15:quarterly | 26.2.0 | 26.2.0 | n/a | n/a | n/a |
| FreeBSD:16:latest | 26.2.0 | 26.2.0 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependency graph
Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.
Dependencies
As this port's Makefile names them.
Build 2
${PYTHON_PKGNAMEPREFIX}hatch-vcs>=0: devel/py-hatch-vcs${PYTHON_PKGNAMEPREFIX}hatchling>=0: devel/py-hatchling
Runtime 2
${PYTHON_PKGNAMEPREFIX}attrs>=24.4.0: devel/py-attrs${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.14.0: devel/py-typing-extensions
The full lists below include those, and their dependencies in turn.
Build dependencies 22
- archivers/liblz4
- archivers/zstd
- devel/gettext-runtime
- devel/libffi
- devel/py-build
- devel/py-hatch-vcs
- devel/py-hatchling
- devel/py-installer
- devel/py-packaging
- devel/py-pathspec
- devel/py-pluggy
- devel/py-pyproject-hooks
- devel/py-setuptools
- devel/py-setuptools-scm
- devel/py-trove-classifiers
- devel/readline
- lang/python312
- lang/python315
- math/mpdecimal
- print/indexinfo
- textproc/expat2
- textproc/py-tomlkit
Run dependencies 9
Required by 28
- astro/py-pytest-astropy
- audio/mythplugin-mythmusic
- cad/py-pymtl
- devel/py-crosshair-tool
- devel/py-e3-core
- devel/py-e3-testsuite
- devel/py-fastf1
- devel/py-hypothesis
- devel/py-hypothesis-crosshair
- devel/py-hypothesmith
- devel/py-lsprotocol
- devel/py-pygls
- finance/py-openbb-intrinio
- math/py-CyLP
- misc/py-pytorch
- multimedia/mythtv
- net-mgmt/py-ciscoconfparse2
- print/py-collidoscope
- print/py-glyphsets
- print/py-glyphtools
- print/py-ufolib2
- print/py-ufomerge
- science/py-MDAnalysisTests
- textproc/py-textdistance
- www/py-requests-cache
- x11-fonts/py-babelfont
- x11-fonts/py-glyphsLib
- x11-fonts/py-vfblib
Configuration
Options name: devel_cattrs
| Option | Default | Description |
|---|---|---|
| CBOR2 | off | cobr2 serialization support |
| MSGPACK | off | msgpack serialization support |
| MSGSPEC | off | msgspec serialization support |
| ORJSON | off | orjson serialization support |
| PYYAML | off | PyYAML serialization support |
| TOMLKIT | off | tomlkit serialization support |
| TOMLLIB | off | tomli/tomli-w serialization support |
| UJSON | off | UltraJSON serialization support |
- USES
- python
- Service scripts
- none
Files
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| cattrs-26.2.0.tar.gz | 524993 | 3cf49f69df8326bcf17a3cb3d3d3ec4a856858fe3a7473746c9044c317d3ba55 |
Master sites 1
- PYPI