Python projects management toolset
Project description
ndev
Set of tools that helps to manage development lifecycle. This set contains tools for:
- managing releases
- work in progress...
To install ndev run:
uv tool install ndev
To update ndev run:
uv tool upgrade ndev
You can use it to install and debug:
git clone https://github.com/numdes/ndev
cd ndev
uv tool install --editable .
Release management
When you have a big repository with complicated structure and you want to
make release of some part of it, you can use ndev to help you with that.
Basic use case is to transfer some sources codes to antoher repository:
ndev release \
--origin . \
--destination git@example.com:libs/example1.git \
--author_name "$GITLAB_USER_NAME" \
--author_email "$GITLAB_USER_EMAIL"
Here --origin is a path to the sources you want to release,
--destination is a path to the repository where you want to release the sources.
--author_name and --author_email are optional parameters that will be used
to set author of the commit in the destination repository.
After running this command, ndev will:
- Wipe out all the files in the destination repository
- Copy all the files from the origin repository to the destination repository
- Commit all the changes
All configuration is stored in pyproject.toml in tool.ndev section. Config sample:
[tool.ndev]
# relative path in origin repository to be a root of the release in destination repository
release-root = "releases/customer-root"
# generate and copy requirements.txt
copy-requirements = true
# generate and copy version.json
add-version-json = true
# list of files to be copied from origin to destination
copy-local = [
{ from = "example1", to = "services/example1" },
]
# list of wheels to be copied from origin dependecies to destination
copy-wheel-src = [
# wheels sources for external use
{ from = "example2", to = "wheels/example2" },
]
# list of repositories to be copied to destination
copy-repo-src = [
{ from = "git@example.com:collction/example3.git", to = "libs/example3/cpp-src", ref = "main" },
]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ndev-0.5.0.tar.gz.
File metadata
- Download URL: ndev-0.5.0.tar.gz
- Upload date:
- Size: 56.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb5229cb72875c8739d06c79ee687f557965cceeaae342dae6f1c71718a68a2d
|
|
| MD5 |
15a4ae94a95bfed22c1a564d801e2d9a
|
|
| BLAKE2b-256 |
c0c64c15fbe7666407e509b7daf0d1baf61c0ed7d885179edd1a2bfb458b0005
|
File details
Details for the file ndev-0.5.0-py3-none-any.whl.
File metadata
- Download URL: ndev-0.5.0-py3-none-any.whl
- Upload date:
- Size: 18.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0301aa8c62ebf2f456d9ec35e79d6a6646dfab682a0343d43c158c3d83e59ce9
|
|
| MD5 |
0b53866607df230eb352539057ce2578
|
|
| BLAKE2b-256 |
e201977e2bdfbd48c262cead4748c722fa27e5b89dd8fd3e9bc7f4054f0345ac
|