Which python scaffolding tools?

a year ago by cx40 to c/python

I've noticed that a lot of my projects follow the same basic architecture and I often like to write some simple tools for myself where it takes much longer to set up the project than it does to write the domain specific code. So I've been looking into scaffolding tools to help with this. I'm aware of Cookiecutter and Copier. Are there others? How do they compare? What are your preferences and why?

load all comments
logging_strict 1 point a year ago

Package DevOPs is a skill. Half assing it will not:

  • impress a published package author's peers

  • encourage confidence in the authors perseverance to maintain the package

  • encourage confidence in the author's willingness to politely respond to Issues and PRs

  • package will have issues that never get resolved cuz the author packaging skillset is woefully lacking including but not limited to: Makefile, pre-commit, tox, gha, doctest, documentation, test coverage, multiple platform support, manylinux support, setup for collaboration, and static typing.

So suggest redirecting efforts towards studying how to improve packaging rather than how to avoid packaging.

A suggestion on things to improve documentation:

move the doctest out of in-code documentation and into test suite! So the doctest are proof and contribute to coverage

python -m coverage run --parallel --data-file=.coverage-combine-tests -m pytest --doctest-glob="*.rst" --showlocals $(verbose_text) tests/safe tests/a tests/b

This is straight from a Makefile. Where the file extension for doctest was changed to .rst. Can see have A B testing setup to compare two packages.

Example how to include doctest into Sphinx document

.. literalinclude:: ../tests/a/test_presentation.rst
    :language: pycon
    :name: unique-id
    :caption: illustrative-description
path: 0 19988969, hotness: undefined, score: 1, children: 3
cx40 2 points a year ago

Was this meant for a different thread?

path: 0 19988969 19988970, hotness: undefined, score: 2, children: 2
logging_strict 2 points a year ago

On this board, and hope everyone else is, to learn and share. Try to contribute, not just state my opinion.

Didn't feel this thread offered anything substantial to learn, so threw out some gem that others might find useful in their projects.

path: 0 19988969 19988970 20003032, hotness: undefined, score: 2, children: 1
Balldowern 3 points a year ago

Thank you, oh wise one ๐Ÿ™๐Ÿป

path: 0 19988969 19988970 20003032 20235041, hotness: undefined, score: 3, children: 0
python
python

@programming.dev

login for more options
8070
741
212

Welcome to the Python community on the programming.dev Lemmy instance!

๐Ÿ“… Events
Past

November 2023

October 2023

July 2023

August 2023

September 2023

๐Ÿ Python project:
๐Ÿ’“ Python Community:
โœจ Python Ecosystem:
๐ŸŒŒ Fediverse
Communities
Projects
  • Pythรถrhead: a Python library for interacting with Lemmy
  • Plemmy: a Python package for accessing the Lemmy API
  • pylemmy pylemmy enables simple access to Lemmy's API with Python
  • mastodon.py, a Python wrapper for the Mastodon API
Feeds

go to feed...