session-info
session_info outputs version information for modules loaded in the current session, Python, and the OS.
What it is and what it does
session_info captures and displays version metadata for all modules loaded in your current Python session, along with Python version, OS, and CPU details. It's designed as a lightweight reproducibility aid for exploratory work, particularly in Jupyter notebooks, where it can be called once after imports to document the exact environment state. The package distinguishes between standard library and third-party modules by default and can optionally include transitive dependencies. It depends only on stdlib_list to identify which modules are built-in.
The tool outputs a formatted report showing module versions grouped by category (user imports, dependencies, environment info) and can write results to a requirements.txt file. In Jupyter, output is collapsible to save screen space. It complements but does not replace more robust reproducibility practices like frozen virtual environments or containers.
Use it for:
- Document the exact module versions used in a Jupyter notebook before sharing with colleagues or revisiting later.
- Generate a requirements.txt snapshot from the current session's loaded modules for quick environment replication.
- Include session metadata in exploratory data analysis notebooks to support debugging and reproducibility audits.
- Verify which versions of dependencies were actually imported during a script run, including transitive dependencies.
- Create a minimal environment report for bug reports or documentation without manual version tracking.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Outputs version information for all modules loaded in the current session, Python, the OS, and CPU to support reproducibility in data analysis and notebook work.
Yes, if you work in Jupyter notebooks or exploratory scripts and want a zero-effort way to log environment state for reproducibility. The single dependency and low friction make it a safe addition. However, the aging maintenance status (490 days since last release) means it's stable but not actively developed—suitable for a utility that does one thing well, but not a signal of active support if issues arise.
Install
session-info on PyPI
pip
pip install session-infouv
uv add session-infopoetry
poetry add session-infoInstalling session-info
Before you install
Low install friction with a single dependency (stdlib_list). Maintenance status is aging—last release was 490 days ago—so expect slower response to issues, though the package remains stable for its narrow use case.
License in practice
BSD-3 permissive license allows free use, modification, and distribution with minimal restrictions, making it safe to incorporate into any project.
Quickstart
pip install session-info
import session_info
session_info.show()
Verify before relying
- Whether the package is actively maintained or in maintenance-only mode given the 490-day gap since last release.
- Compatibility with recent versions of Jupyter and IPython beyond what the description examples show.
Package facts
| License | BSD-3 (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — stdlib_list |
| Maintenance | aging — 490 days since the last release |
| First released | |
| Downloads | 278,128/month — #8,136 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: session_info-1.0.1-py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
session-info2Captures and displays the versions of all…
copyleft · top 5,000 on PyPI
jupyter-cacheCaches Jupyter notebook execution outputs to…
permissive · top 5,000 on PyPI
watermarkWatermark is an IPython magic extension that…
permissive · top 15,000 on PyPI
ipykernelProvides the IPython kernel backend that powers…
permissive · top 1,000 on PyPI
jupytextJupytext converts Jupyter notebooks to and from…
permissive · top 5,000 on PyPI
notebookJupyter Notebook is a web-based interactive…
permissive · top 1,000 on PyPI
testbooktestbook lets you write unit tests for Jupyter…
permissive · top 15,000 on PyPI
jupyterJupyter is a metapackage that installs the core…
permissive · top 5,000 on PyPI
ipynbImports Jupyter Notebook (.ipynb) files as…
permissive · top 15,000 on PyPI
scoobyScooby generates formatted reports of your…
permissive · top 5,000 on PyPI