Skip to main content

PyDSDL

Documentation PyPI - Downloads Forum

PyDSDL is a Cyphal DSDL compiler front-end implemented in Python. It accepts a DSDL namespace at the input and produces a well-annotated abstract syntax tree (AST) at the output, evaluating all constant expressions in the process. All DSDL features defined in the Cyphal Specification are supported. The library should, in theory, work on any platform and with any Python implementation.

Read the docs at pydsdl.readthedocs.io.

import pydsdl
try:
    types = pydsdl.read_namespace(target_directory, lookup_directories)
except pydsdl.InvalidDefinitionError as ex:
    print(f'{ex.path}:{ex.line}: Invalid DSDL: {ex.text}', file=sys.stderr)
    exit(1)
else:
    for t in types:
        print(t)  # Process the type -- generate code, analyze, etc.

Metadata

Release files for pydsdl 1.25.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pydsdl 1.25.0
File Size Uploaded
pydsdl-1.25.0.tar.gz 127.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pydsdl 1.25.0
File Interpreter ABI Platform
pydsdl-1.25.0-py3-none-any.whl Python 3 none any Details

Total release size: 273.0 kB

Release files / pydsdl-1.25.0.tar.gz

Download URL pydsdl-1.25.0.tar.gz
Size 127.7 kB
Tags Source
SHA-256 checksum
How to use checksums
c326c6c80d6dad28ed8d4533f787ce94ce304164184b46cfec524b6889373de7
BLAKE2b-256 checksum
How to use checksums
1d6bff46defb0a7b18357a1e027b8b5d05af8f749f3d425df775df39a487f173
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / pydsdl-1.25.0-py3-none-any.whl

Download URL pydsdl-1.25.0-py3-none-any.whl
Size 145.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2bc7c46813f4c3e3df928aff3546844f5f6a8400cca5e81b241c7a1e4c23ba9c
BLAKE2b-256 checksum
How to use checksums
3d9e03c68cba99f730ba103d69ebdf3cd25c92545fcad5efd7ddcdef8c017e97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.25.0 This release

2 release files

1.24.3

2 release files

1.24.2

2 release files

1.24.1

2 release files

1.22.2

2 release files

1.22.1

2 release files

1.22.0

2 release files

1.21.1

2 release files

1.21.0

2 release files

1.20.1

2 release files

1.19.0

2 release files

1.18.0

2 release files

1.17.0

2 release files

1.16.0

2 release files

1.14.1

2 release files

1.14.0

2 release files

1.12.1

2 release files

1.10.3

2 release files

1.10.2

2 release files

1.10.1

2 release files

1.9.4

2 release files

1.9.3

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.6.5

2 release files

1.6.4

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.2

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page