{"library":"pipfile","title":"Pipfile File Format Specification Library","description":"The `pipfile` library serves as the canonical reference and parsing implementation for the Pipfile and Pipfile.lock file formats. It is a low-level library primarily intended for use by other tools (such as Pipenv) to programmatically read, write, and manipulate these dependency definition files. The current version is 0.0.2, and its release cadence is very infrequent, reflecting its role as a stable specification parser rather than a frequently updated application.","language":"python","status":"active","last_verified":"Mon May 18","install":{"commands":["pip install pipfile"],"cli":null},"imports":["from pipfile import Pipfile","from pipfile import PipfileLock"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom pipfile import Pipfile, PipfileLock\n\n# Example Pipfile content (simulating reading from a file)\npipfile_content = \"\"\"\n[packages]\nrequests = \"*\"\nflask = {version = \"==2.0.0\", extras = [\"dotenv\"]}\n\n[dev-packages]\npytest = \"*\"\n\n[requires]\npython_version = \"3.9\"\n\"\"\"\n\n# Parse a Pipfile from a string\n# For real files, use Pipfile.load('/path/to/Pipfile')\npipfile = Pipfile.parse(pipfile_content)\n\nprint(\"--- Parsed Pipfile ---\")\nprint(f\"Python version required: {pipfile.requires.get('python_version')}\")\nprint(\"Packages (default):\")\nfor name, spec in pipfile.packages.items():\n    print(f\"  {name}: {spec}\")\nprint(\"Dev Packages:\")\nfor name, spec in pipfile.dev_packages.items():\n    print(f\"  {name}: {spec}\")\n\n# Example Pipfile.lock content (simulating reading from a file)\n# (Simplified structure for demonstration)\nlock_content = \"\"\"\n{\n    \"_meta\": {\n        \"hash\": {\n            \"sha256\": \"...\"\n        },\n        \"pipfile-spec\": 6,\n        \"requires\": {\n            \"python_version\": \"3.9\"\n        }\n    },\n    \"default\": {\n        \"requests\": {\n            \"hashes\": [\"sha256:...\"],\n            \"version\": \"==2.28.1\"\n        },\n        \"flask\": {\n            \"hashes\": [\"sha256:...\"],\n            \"version\": \"==2.0.0\"\n        }\n    },\n    \"develop\": {\n        \"pytest\": {\n            \"hashes\": [\"sha256:...\"],\n            \"version\": \"==7.1.2\"\n        }\n    }\n}\n\"\"\"\n\n# Parse a Pipfile.lock from a string\n# For real files, use PipfileLock.load('/path/to/Pipfile.lock')\npipfile_lock = PipfileLock.parse(lock_content)\n\nprint(\"\\n--- Parsed Pipfile.lock ---\")\nprint(\"Locked packages (default):\")\nfor name, details in pipfile_lock.default_packages.items():\n    print(f\"  {name}: {details.get('version')}\")\n","lang":"python","description":"This quickstart demonstrates how to parse Pipfile and Pipfile.lock contents using the `Pipfile` and `PipfileLock` classes. You can parse from a string using `.parse()` or from a file path using `.load()` (e.g., `Pipfile.load('Pipfile')`). It then shows how to access the various sections and package definitions within these objects.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-18","installed_version":"0.0.2","pypi_latest":"0.0.2","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.4,"avg_import_s":0.03,"wheel_type":"sdist"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.03,"mem_mb":1.4,"disk_size":"19.4M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2,"import_time_s":0.02,"mem_mb":1.4,"disk_size":"20M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.03,"mem_mb":1,"disk_size":"21.8M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2.1,"import_time_s":0.03,"mem_mb":1,"disk_size":"22M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"11.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":3.1,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"12M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.02,"mem_mb":0.8,"disk_size":"11.5M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2.7,"import_time_s":0.02,"mem_mb":0.6,"disk_size":"12M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.03,"mem_mb":1.5,"disk_size":"19.0M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pipfile","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"clean","install_time_s":2.3,"import_time_s":0.04,"mem_mb":1.5,"disk_size":"19M"}]}}