Skip to main content

PCBA Helper

Downloads Release Python License: MIT codecov

Generate a deployment folder with all required files for easy PCBA


General

Generate a (secured) deployment folder with all required files for easy PCBA

Installation

[<PYTHON> -m] pip[3] install [--user] [--upgrade] pcba_helper

Usage

Create a login secured deployment folder from the KiCAD project at examples/KiCAD. The folder is named deploy and placed in the examples/KiCAD folder. The iBOM file is expected relative to the KiCAD project folder.

generate-deployments examples/KiCAD \
  --output examples/KiCAD/deploy \
  --ibom-file ibom/ibom.html \
  --username "John" \
  --password "secret" \
  -vvvv

The parameter --public is optional and creates pure HTML files which can be accessed without passing any login page, parameter values of username and password are ignored.

Example

The docker-compose.yml generates the PDF from the KiCAD schematic, creates the deploy folder and fires up an Apache server with PHP at the fixed IP address 172.42.0.2.

[PUBLIC=1] docker compose up --build
docker compose down
[sudo] rm -rf examples/KiCAD/deploy

Contributing

Setup

For active development you need to have poetry and pre-commit installed

python3 -m pip install --upgrade --user poetry pre-commit
git clone https://github.com/brainelectronics/pcba_helper.git
cd pcba_helper
pre-commit install
poetry install

Testing

# run all tests
poetry run coverage run -m pytest -v

# run only one specific tests
poetry run coverage run -m pytest -v -k "test_read_save"

Generate the coverage files with

python create_report_dirs.py
coverage html

The coverage report is placed at reports/coverage/html/index.html

Changelog

The changelog format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Please add a changelog snippet, see below, for every PR you contribute. The changes are categorised into:

  • bugfixes fix an issue which can be used out of the box without any further changes required by the user. Be aware that in some cases bugfixes can be breaking changes.
  • features is used to indicate a backwards compatible change providing improved or extended functionalitiy. This does, as bugfixes, in any case not require any changes by the user to keep the system running after upgrading.
  • breaking creates a breaking, non backwards compatible change which requires the user to perform additional tasks, adopt his currently running code or in general can't be used as is anymore.

The scope of a change shall either be:

  • internal if no new deployment is required for this change, like updates in the documentation for example
  • external or all if this change affects the public API of this package or requires a new tag and deployment for any other reason

The changelog entry shall be short but meaningful and can of course contain links and references to other issues or PRs. New lines are only allowed for a new bulletpoint entry. Usage examples or other code snippets should be placed in the code documentation, README or the docs folder.

The name of the snippet shall be <ISSUE_ID.md>

[poetry run] changelog-generator \
    create .snippets/1.md

Credits

A big thank you to the creators and maintainers of SemVer.org for their documentation and regex example

Metadata

Release files for pcba-helper 0.2.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 pcba-helper 0.2.0
File Size Uploaded
pcba_helper-0.2.0.tar.gz 14.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pcba-helper 0.2.0
File Interpreter ABI Platform
pcba_helper-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 28.9 kB

Release files / pcba_helper-0.2.0.tar.gz

Download URL pcba_helper-0.2.0.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
734674eb91ecd4edd1cc2225089ea25c9d589783d5caaa38174ffcec599957ba
BLAKE2b-256 checksum
How to use checksums
189695b76ac6591d5791701c9e8b29b405e6a2fb958328e249ffe67a12a668eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.8

Release files / pcba_helper-0.2.0-py3-none-any.whl

Download URL pcba_helper-0.2.0-py3-none-any.whl
Size 15.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eae327bbc8050e6008e41df49d1078a9529c8463cd1ef755c2596c59da7b9ff0
BLAKE2b-256 checksum
How to use checksums
1c3a49433fcbd7fd60540fc88ac47871962d367c4965901ade8ce4dcc78499c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.8

Release history Release notifications | RSS feed

This release

0.2.0 This release

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