The Apache Software Foundation Announces Apache Subversion 1.14.0-LTS
Community-led Version Control Software and Source Code Management Tool Available on Most Integration Servers, Integrated Development Environments, Issue Tracking Systems, and more
The Apache Software Foundation, the all-volunteer developers, stewards, and incubators of more than 350 Open Source projects and initiatives, announced Apache Subversion 1.14.0-LTS, the latest release of the popular centralized software version control system.
Apache Subversion provides a version controlled backing store for any kind of data. It records an accurate log of changes made to that data over time, and keeps track of who made them. Subversion allows users to commit files and directories, recover previous revisions, and even maintain multiple variations of their work in parallel. Able to service projects of any size, from individuals up to large scale collaborative efforts, Subversion is ideal for work in vast swaths of industries, from software development to semiconductor design, scientific research to medical technology. An Apache Top-Level Project for over a decade, Subversion celebrated its 20th Anniversary earlier this year.
“First and foremost, I’d like to thank all of our developers and community members who helped make this release possible,” said Nathan Hartman, Vice President of Apache Subversion. “We are excited to publish our latest LTS release, and the first in the 1.14 line.”
Recommended AI News: Vendasta Announces Strategic Partnership With JS Group
As an LTS release, the focus is on stability and availability. These are achieved through the project’s policies. For any change in core code to be included in updates to 1.14.x, the change must first undergo a process of nomination and voting for backport. At least three Subversion developers must support the change, with none having concerns about it.
LTS (Long Term Support) is an industry designation that a particular release line is planned to be maintained for a longer period of time than regular, non-LTS releases. For the Subversion project, this means that later updates to the 1.14.x series may contain bug fixes and security updates only. Any bleeding edge new features, even if developed during the lifetime of 1.14.x, will have to be introduced in a separate release line. Server operators and system administrators usually prefer LTS releases for stability, while end users often choose the latest release (LTS or not) to get the newest features.
Numerous third parties provide Subversion install packages for Windows, macOS, Linux, OpenBSD, FreeBSD, and other operating systems. To maximize platform independence, Subversion is implemented with strict conformance to ISO C90, one of the most widely supported software coding standards worldwide. In addition, the Subversion developers provide bindings that enable integrations with software coded in popular web languages: Java, Ruby, Perl, and Python.
Particularly noteworthy for this release, Subversion’s language bindings for Python received significant attention. Python 3 is supported, up from Python 2 in prior Subversion releases, an oft requested improvement that keeps Subversion 1.14.0-LTS current with the changing Python landscape. While this was a major undertaking, the project also tackled the challenge of maintaining compatibility with the older Python 2. This legacy support is expected to phase out gradually, as Python 3 continues to gain mindshare across the computing industry, but the Subversion project has a long tradition of maintaining compatibility wherever practical, giving operators of legacy systems some much-needed breathing room as they make the transition.
Among Subversion’s strengths are its extensive support for working with giant repositories. The bedrock of this support is its centralized model, which allows users to check out only the portions of a repository that they need. The ASF uses Subversion this way in its own infrastructure, housing more than 80 of its Apache Top-Level Projects and sub-projects comprising millions of lines of code, including Subversion itself, in a single Subversion repository that makes all 1.8 million revisions of that information available to collaborators worldwide.
When dealing with such vast amounts of data, including all of its revisions, one might wonder about storage costs. Subversion uses a variety of techniques to minimize storage, including temporal compression, spacial compression, and data deduplication.
Another improvement in Subversion 1.14.0-LTS is a new tool in support of deduplication that could help some administrators reduce future storage costs. The deduplication feature uses an internal database named rep-cache.db. If deduplication was previously disabled, the database may not contain all necessary entries. The new feature, known as the ‘svnadmin build-repcache’ command, allows re-adding such missing entries and provides a way for those who had previously turned off deduplication to regain some of its benefits.
The release also includes several experimental features. One of these, Shelving and Checkpointing, allows users to save, restore, and roll back snapshots of their work, without making commits to the central repository. This is useful for setting aside a work in progress to work on something else, or for taking temporary snapshots when a network connection to the server is unavailable. Another experimental feature, Viewspec, allows users who create different cross-sections or “views” into their version controlled data, to save the layouts of those views and easily recreate them later. These experimental features are designated as such because they are not yet considered feature-complete. In Subversion 1.14.0-LTS, they are turned off and hidden by default, but are made available on an opt-in basis to entice open source community members to help further their development.
Subversion users, developers, and other stakeholders routinely communicate with each other through email lists. One ongoing discussion taking place there centers around a proposal to make Subversion even stronger at handling big files. The discussion thread, titled “Who else is using SVN for large-binary-asset storage?” has already generated some enthusiasm.
“Apache Subversion is more than code, it’s a community,” added Hartman. “As an open source and purely volunteer-driven effort, we thrive on participation from enthusiastic users and developers worldwide. We welcome their involvement in the future of Subversion and on our email lists.”
Over its 20-year history, Subversion has grown to become the most popular version control system on the market, and remains the leading centralized versioning and revision control software today. Millions of users worldwide depend on the collaboration-friendly system to easily access all files and historical data simultaneously without code conflicts or corruption.
Apache Subversion is used for mission-critical code distribution and collaboration workflow by Adobe Dreamweaver, Eclipse, Google, Halliburton, Microsoft Visual Studio, Python, Ruby, Skype, SourceForge, and WordPress, among many others. The ASF’s infrastructure uses Apache Subversion across millions of lines of code and nearly two million commits by more than 300 Apache projects.