Skip to content

Latest commit

 

History

History
68 lines (50 loc) · 2.62 KB

File metadata and controls

68 lines (50 loc) · 2.62 KB

Contributing to Altium Monkey

Thanks for your interest in improving Altium Monkey.

This repository is a published mirror for a project developed in a separate upstream workspace. The project uses additional private validation infrastructure and a large file corpus that is not included in this repository.

Because of that, pull requests are welcome as proposals, but they may not be merged directly as submitted. A PR can still be very useful when it shows the intended behavior, expected API shape, a failing case, or a possible implementation strategy. Accepted changes may be adapted or rewritten in the upstream source tree, validated there, and mirrored back to this repository in a later package version.

What Helps

The most useful contributions are:

  1. clear bug reports with the smallest reproducible case
  2. public test files that can be committed or referenced safely
  3. focused API feedback with concrete examples
  4. documentation fixes or clarifications
  5. small proposed patches that demonstrate intent

For parser, serializer, renderer, or round-trip bugs, a minimal Altium file is usually needed to fix the issue. Please try to provide the smallest .SchDoc, .SchLib, .PcbDoc, .PcbLib, .PrjPcb, .OutJob, or related file set that reproduces the behavior.

Only share files that you have permission to publish. Do not attach customer designs, private company files, license keys, credentials, or files containing confidential metadata.

Pull Requests

Please keep pull requests focused. A small reproduction, failing check, or clearly explained behavioral change is usually more useful than a broad rewrite.

Public tests are an important first check, but they are not the final acceptance gate. Changes that affect file parsing, writing, rendering, or public APIs are also reviewed against private compatibility and regression tests before they are released.

When a contribution materially informs a released change, we will preserve attribution where practical.

Issues

When reporting a bug, include:

  1. the Altium Monkey version
  2. the Python version and operating system
  3. the Altium file type involved
  4. the command or code snippet that reproduces the issue
  5. the expected behavior
  6. the actual behavior
  7. a minimal public reproduction file or fixture, when possible

If a file cannot be shared publicly, describe how it was created and which objects or settings are involved. Synthetic cases are preferred when they can reproduce the same behavior.

Release Notes

User-visible changes are documented in RELEASE_NOTES.md. Public API changes, compatibility notes, and migration details should be described there when they ship.