-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Introduction
At the time of this writing (September 2024) mcpyrate is still a small single-maintainer project.
The fact is, software is never done. It can be outdone by a newer competitor, or obsoleted by a complete change of the surrounding ecosystem and/or by a programming paradigm shift. Python with its laissez-faire paradigm is still going strong, and to my knowledge, mcpyrate remains the most advanced Python macro expander that exists.
The other fact is, I'm very much a generalist. With that territory comes a constantly shifting set of projects, with a different focus each. One day, I'm metaprogramming a macro expander, or very unofficial language extensions for Python. The next, implementing FEM solvers for PDEs. Writing a scientific monograph. Overhauling the UX of an LLM GUI extension. Combing literature for a general-audience introduction to GenAI. Not to mention, a long ago, the IVTC and Phospor deinterlacer modes for VLC.
By its nature, small open source software like mcpyrate is by developers, for developers. Any particular project solves the problem its author had, to a varying degree of success. As for mcpyrate, it does what I need it to do, and it has not required maintenance in the past two years. Perhaps that is to a large part because I'm still running Python 3.10.
This is where I'd like your help. I think mcpyrate is promising, is at least mostly feature-complete already, and its continued polishing could use the community's input.
If you want to help out, please leave a comment below, or just open a new issue if you want to discuss a specific point. Small contributions matter, even if it's just fixing a typo!
Where you can help
- AST changes, AST changes, AST changes.
- Support for Python 3.13 and later is planned, but if I'm the one doing it, that will be when I personally upgrade my Python environment.
- Something in
mcpyrateno longer working? Unparser failing on recent ASTs? Please let me know by opening an issue! - If you're into metaprogramming, feel free to submit a PR. Note contributing guidelines.
- Documentation. Something not explained clearly enough?
- Both PRs and just discussion welcome.
- For discussion, please open an issue.
- Automated tests.
- The test coverage could be much better. See Improve test coverage #2 and Measure true coverage (of mcpyrate tests) #27.
- To be explicit, we're not looking to move the tests into a proper test framework, for reasons explained in the contributing guidelines.
- Something else I didn't think of? Please let me know!