Repository navigation
NetCheck v2.1.0
Release Notes — NetCheck v2.1.0
Release Date: 2026-06-21
Type: Minor — Packaging & Tooling Modernisation
Overview
v2.1.0 is a packaging and tooling modernisation release. No changes were made to the netcheck runtime engine or CLI behaviour. This release reorganises the entire distribution pipeline into a clean packaging/ directory, introduces a unified version-sync tool, a new publish_packages.py publisher, and a full CI test matrix.
What's New
packaging/ Directory Structure
All platform-specific packaging templates are now consolidated under one top-level directory:
packaging/
├── chocolatey/ ← Windows Chocolatey (.nupkg)
│ └── tools/
├── linux/ ← install.sh / uninstall.sh
├── macos/ ← placeholder for .pkg scripts
├── snap/ ← snapcraft.yaml (version placeholder)
└── windows/ ← NSIS installer (.nsi)
Templates use a {version} placeholder that build_packages.py substitutes at build time, keeping package config separate from the build script logic.
--sync-version — Single-Command Version Bump
python3 build_packages.py --sync-version 2.2.0Propagates the new version to every file that embeds the version string:
netcheck/__init__.pypyproject.tomlnetcheck/mcp/server.pypackaging/snap/snapcraft.yaml
publish_packages.py — Unified Publisher
A new flag-based publisher mirrors the build script interface:
python3 publish_packages.py --snap # push to Snap Store (stable)
python3 publish_packages.py --snap --channel edge # push to edge channel
python3 publish_packages.py --pypi # upload to PyPI (production)
python3 publish_packages.py --pypi --test # upload to TestPyPI first
python3 publish_packages.py --chocolatey # push to Chocolatey.org
python3 publish_packages.py --check # verify publish tools are availableCI Workflow (.github/workflows/ci.yml)
New automated test matrix:
- Python versions: 3.8, 3.9, 3.10, 3.11, 3.12
- Platforms: Ubuntu, macOS, Windows
- Runs on every push and pull request
netcheck/__main__.py
Standard Python module entrypoint — python3 -m netcheck now works alongside the netcheck command.
Breaking Changes
None. All legacy CLI flags remain fully supported.
Files Removed
| File | Reason |
|---|---|
build-deb.sh |
Superseded by python3 build_packages.py --deb |
build-snap.sh |
Superseded by python3 build_packages.py --snap |
check_ip.py |
Legacy wrapper — deleted |
check_ip.sh |
Legacy wrapper — deleted |
PYTHON_README.md |
Stub; README.md is the single source of truth |
Root install.sh |
Moved to packaging/linux/install.sh |
Root uninstall.sh |
Moved to packaging/linux/uninstall.sh |
Root snap/ |
Moved to packaging/snap/ |
Files Added / Changed
| File | Change |
|---|---|
build_packages.py |
Reads templates from packaging/; adds --sync-version |
publish_packages.py |
New — flag-based publisher for Snap, PyPI, Chocolatey |
packaging/snap/snapcraft.yaml |
Canonical Snap template |
packaging/linux/install.sh |
Moved from root |
packaging/linux/uninstall.sh |
Moved from root |
packaging/windows/netcheck.nsi |
NSIS installer template |
packaging/chocolatey/netcheck.nuspec |
Chocolatey package template |
tests/test_cli.py |
New — 15 CLI tests covering all subcommands |
README.md |
Full rewrite with accurate installation options |
CHANGELOG.md |
v2.1.0 entry added |
pyproject.toml |
License field updated to SPDX string |
Release Artefacts
| Artefact | Platform |
|---|---|
netcheckx-2.1.0-py3-none-any.whl |
PyPI / all platforms |
netcheckx-2.1.0.tar.gz |
Source distribution (PyPI) |
netcheck_2.1.0-1_all.deb |
Debian / Ubuntu |
netcheck_2.1.0_amd64.snap |
All Linux (Snap Store) |
netcheck-2.1.0-setup.exe |
Windows NSIS Installer |
netcheck-2.1.0.nupkg |
Windows Chocolatey |
Upgrade Guide
From v2.0.0 (pip install)
pip install --upgrade netcheckxFrom v2.0.0 (snap)
sudo snap refresh netcheckFrom v2.0.0 (.deb)
sudo dpkg -i netcheck_2.1.0-1_all.debFull Changelog
See CHANGELOG.md for the complete history.