skillfed

svn

Intuitive Subversion wrapper.

svn v1.0.1 155.4K downloads/30d#10,820 on PyPI222
Copyleft license GPL 2 DORMANT released

What it is and what it does

svn is a lightweight Python wrapper around the Subversion command-line client that lets you interact with SVN repositories and working copies programmatically. It provides two main client classes—LocalClient for working with local checked-out copies and RemoteClient for accessing remote repositories—plus an Admin class for repository creation. Both clients share a common set of methods for operations like checkout, commit, log, diff, list, info, and status.

The library is designed as an accessible alternative to heavier bindings, with no external Python dependencies beyond the requirement that the svn command-line tool be installed on your system. It supports username and password authentication and offers both simple and extended output formats for many operations. However, the package has been dormant since 2020, with the last commit in April 2024, so it may not reflect recent Subversion or Python ecosystem changes.

Use it for:

  • Automate SVN repository operations (checkout, commit, update) from Python scripts or applications.
  • Query repository metadata (logs, diffs, file contents, revision history) without manual CLI calls.
  • Build deployment or version-control automation tools that need to interact with legacy SVN systems.
  • Create Python-based repository administration tasks like repository creation via the Admin class.
  • Integrate SVN operations into CI/CD pipelines or build systems that run on Python.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Wraps the Subversion command-line client to provide Python access to local working copies and remote repositories, supporting operations like checkout, commit, log, diff, and repository administration.

Yes, but with conditions. Install if you must integrate with an existing Subversion repository and have the svn command-line client available on your system. The package is stable and has no known vulnerabilities, but maintenance is dormant—expect no updates for new Python or Subversion versions. The GPL 2 copyleft license requires careful review if you plan to distribute your code. For new projects, consider modern version-control systems; for legacy SVN systems, this remains a practical lightweight option.

Install

svn on PyPI

pip

pip install svn

uv

uv add svn

poetry

poetry add svn

Installing svn

Before you install

High install friction: requires the svn command-line client to be installed on the system. Package itself has no runtime dependencies but maintenance is dormant—last release was in 2020, with no commits since 2024-04-19.

License in practice

Licensed under GPL 2 (copyleft). Any code that imports and uses this package must comply with GPL 2 obligations, including potential source code disclosure requirements if distributed.

Quickstart

import svn.remote

r = svn.remote.RemoteClient('https://repo.local/svn')
r.checkout('/tmp/working')

# Or for local working copy:
import svn.local
l = svn.local.LocalClient('/tmp/test_repo')
info = l.info()

The svn command-line client must be installed and available on the system PATH.

Verify before relying

  • Whether the package works reliably with modern Python versions beyond 3.3+, given dormant maintenance status.
  • Current compatibility with recent Subversion server versions and authentication mechanisms.
  • Whether the diff reimplementation in 1.0.0 is stable or if backwards-incompatible issues remain.

Package facts

License GPL 2 (copyleft)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance dormant — 2,386 days since the last release
Last repo commit
First released
Downloads 155,366/month — #10,820 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: svn-1.0.1.tar.gz

Keywords: svn, subversion

Tags

subversion wrapper pythonsvn client librarypython version controlrepository access pythonsvn checkout commitsubversion automationsvn local remote client
version-controlsubversionlegacy-systems

More Software Development packages