Skip to main content

SVD parsing for Python.

Project description

Svada - SVD Parsing for Python

svada is a general-purpose parser for quickly and efficiently parsing CMSIS SVD files into concise objects for use in various applications.

Contents:

Building and installing from source

Make sure that your environment is using the latest build package from PyPA, then invoke it to build the package from the setup.cfg file:

python3 -m pip install --user -U build
python3 -m build

This will generate both tar.gz and .whl artifacts for the current version, either of which can be used for installing from the command line:

python3 -m pip install dist/svada-X.Y.Z-py3-none-any.whl

Contributing

Code style

This project uses black and pylint for aligning source code with PEP standards and keeping to a single, common format across the codebase. These can be installed via:

python3 -m pip install -r scripts/requirements-test.txt

To more easily facilitate this, the repository contains the scripts/pre-commit hook script that can be placed in your local .git/hooks folder. This script will block committed code that fails formatting and linting checks by these programs, ensuring that new contributions align to the policies before being pushed and caught by CI.

The hook script has options that can be added to .gitconfig to further customize the behavior. For example, a specific .pylintrc file can be used for linting by setting this option locally:

# ~/.gitconfig
[hooks]
	pylintrc=/home/username/.pylintrc

It is required to do this for all developers and contributors of this project to keep source code aligned across files.

Virtual environments

During development, it is strongly recommended to have this package installed in a separate virtual environment for easily testing local changes without continuous installation and uninstallation. You can find the official documentation about virtual environments in Python and how to use them on their official venv tutorial page.

To use the tool in a virtual environment, do the following:

  1. Create and activate a virtual environment:
python3 -m venv my_venv

Alternatively, Python3's virtualenv package can also create the same virtual environments, and offers some extra features from the built-in venv.

  1. Create a dynamic installation of the package, running the setup script with the develop argument from the repository root:
python3 setup.py develop

This installs the package using always the latest changes of its source files, including when invoked through its command-line executables. setup.py automatically grabs build and metadata information from setup.cfg and pyproject.toml.

To uninstall the dynamic package version installed with develop, re-run the command with the --uninstall or -u option.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

svada-2.1.0.tar.gz (51.1 kB view details)

Uploaded Source

Built Distribution

svada-2.1.0-py3-none-any.whl (50.1 kB view details)

Uploaded Python 3

File details

Details for the file svada-2.1.0.tar.gz.

File metadata

  • Download URL: svada-2.1.0.tar.gz
  • Upload date:
  • Size: 51.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for svada-2.1.0.tar.gz
Algorithm Hash digest
SHA256 c6c0c24e37f7a6f8866e7153d0d4b0c176e604a7693c54562108058556d997d2
MD5 5256b0832d2e4604a968c768442d221b
BLAKE2b-256 ffae3bf5c4caff5c76319e97d28c1392f7c1e3b8d72e414b499d354528bba8b0

See more details on using hashes here.

File details

Details for the file svada-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: svada-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 50.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for svada-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e48ec55467d5d1b9c473705b100f4d4df105de95b0f3421cd92aa148fc9ddc9f
MD5 f8f0d2d0adeb7bf539b9321fde7c4daf
BLAKE2b-256 fd2e44a74a1ea59a9dc0329fe4a96d20b3fb7d2562c7b9608baa62e690088167

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page