Skip to main content

Python Requirements Snapshot Tool - Lock exact versions of main libraries

Project description

PyPI-Package---Requirements-snapshot-

conda create -n reqsnap python=3.8

conda activate reqsnap

conda deactivate

deactivate  # Linux/Mac

pip install -r requirements.txt 

🧠 High-Level Workflow

requirements.txt

↓ read only main libraries

↓ detect installed versions

↓ create requirements.lock

reqsnap

reqsnap is a simple Python tool that locks exact installed versions of only the main libraries listed in requirements.txt.

Why reqsnap?

  • Avoid version mismatch errors
  • No dependency noise
  • Beginner friendly
  • No pip freeze

Installation

pip install reqsnap

# Basic lock generation
reqsnap lock

# Check without locking
reqsnap check

# Compare with previous lock
reqsnap diff

# Validate requirements file
reqsnap validate

Traditional lock format (default)

reqsnap lock --format lock

# JSON format
reqsnap lock --format json

# YAML format
reqsnap lock --format yaml

# TOML format
reqsnap lock --format toml

Use different requirements file

reqsnap lock --file requirements-dev.txt

Custom output file

reqsnap lock --output locked-requirements.json

This will generate

requirements.lock

Example

$ reqsnap lock

🔒 ReqSnap - Generating lock file
📄 Source: requirements.txt
📁 Format: lock
----------------------------------------
🔍 Checking 4 packages...

✅ Lock file saved to: requirements.lock
📊 Summary:
📦 Total packages: 4
✓ Installed & locked: 4

🎉 Done! Use 'reqsnap check' to verify installations.

requirements.lock

# Generated by ReqSnap
# Date: 2025-12-31T14:59:08.870747
# Python: 3.8.20
# Source: requirements.txt

importlib-metadata==8.5.0
packaging==25.0
pyyaml==6.0.3
toml==0.10.2

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reqsnap-1.0.0.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reqsnap-1.0.0-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file reqsnap-1.0.0.tar.gz.

File metadata

  • Download URL: reqsnap-1.0.0.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for reqsnap-1.0.0.tar.gz
Algorithm Hash digest
SHA256 34c8d06f78aa27a073781af1129bdfbd01675ce6529a6af988ee94e03aee1553
MD5 ebd50223f2a47d42a688d37a1cd2000b
BLAKE2b-256 dba800fe4b8469dc9376fd08c89e5bf0f75585e98d75846c2044f7677a624a67

See more details on using hashes here.

File details

Details for the file reqsnap-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: reqsnap-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for reqsnap-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 703832f8402cd2aaff9de84e68a747a858e731c7efa635f7c70307517a0165cf
MD5 76e8ea0b89717670d6409b88c1365fdd
BLAKE2b-256 3f6d361705359309a9989a722986680d586a9403b571178b1a28f7e8b03fedfd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page