https://github.com/aboutcode-org/skeleton
https://github.com/aboutcode-org/skeleton
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/aboutcode-org/skeleton
- Owner: aboutcode-org
- Created: 2020-09-22T19:52:30.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-08-20T08:46:32.000Z (over 1 year ago)
- Last Synced: 2024-08-20T10:45:15.668Z (over 1 year ago)
- Language: Python
- Size: 413 KB
- Stars: 8
- Watchers: 9
- Forks: 7
- Open Issues: 35
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Code of conduct: CODE_OF_CONDUCT.rst
- Authors: AUTHORS.rst
Awesome Lists containing this project
README
A Simple Python Project Skeleton
================================
This repo attempts to standardize the structure of the Python-based project's
repositories using modern Python packaging and configuration techniques.
Using this `blog post`_ as inspiration, this repository serves as the base for
all new Python projects and is mergeable in existing repositories as well.
.. _blog post: https://blog.jaraco.com/a-project-skeleton-for-python-projects/
Usage
=====
A brand new project
-------------------
.. code-block:: bash
git init my-new-repo
cd my-new-repo
git pull git@github.com:nexB/skeleton
# Create the new repo on GitHub, then update your remote
git remote set-url origin git@github.com:nexB/your-new-repo.git
From here, you can make the appropriate changes to the files for your specific project.
Update an existing project
---------------------------
.. code-block:: bash
cd my-existing-project
git remote add skeleton git@github.com:nexB/skeleton
git fetch skeleton
git merge skeleton/main --allow-unrelated-histories
This is also the workflow to use when updating the skeleton files in any given repository.
More usage instructions can be found in ``docs/skeleton-usage.rst``.
Release Notes
=============
- 2025-03-31:
- Use ruff as the main code formatting tool, add ruff rules to pyproject.toml
- 2025-03-29:
- Add support for beta macOS-15
- Add support for beta windows-2025
- 2025-02-14:
- Drop support for Python 3.8, add support in CI for Python 3.13, use Python 3.12 as default
version.
- 2025-01-17:
- Drop support for macOS-12, add support for macOS-14
- Add support in CI for ubuntu-24.04
- Add support in CI for Python 3.12
- 2024-08-20:
- Update references of ownership from nexB to aboutcode-org
- 2024-07-01:
- Drop support for Python 3.8
- Drop support for macOS-11, add support for macOS-14
- 2024-02-19:
- Replace support in CI of default ubuntu-20.04 by ubuntu-22.04
- 2023-10-18:
- Add dark mode support in documentation
- 2023-07-18:
- Add macOS-13 job in azure-pipelines.yml
- 2022-03-04:
- Synchronize configure and configure.bat scripts for sanity
- Update CI operating system support with latest Azure OS images
- Streamline utility scripts in etc/scripts/ to create, fetch and manage third-party
dependencies. There are now fewer scripts. See etc/scripts/README.rst for details
- 2021-09-03:
- ``configure`` now requires pinned dependencies via the use of ``requirements.txt``
and ``requirements-dev.txt``
- ``configure`` can now accept multiple options at once
- Add utility scripts from scancode-toolkit/etc/release/ for use in generating project files
- Rename virtual environment directory from ``tmp`` to ``venv``
- Update README.rst with instructions for generating ``requirements.txt``
and ``requirements-dev.txt``, as well as collecting dependencies as wheels and generating
ABOUT files for them.
- 2021-05-11:
- Adopt new configure scripts from ScanCode TK that allows correct configuration of which
Python version is used.