Fossil (software)

Last updated
Original author(s) D. Richard Hipp
Initial release2006;18 years ago (2006)
Stable release
2.23 [1]   OOjs UI icon edit-ltr-progressive.svg / 1 November 2023;4 months ago (1 November 2023)
Repository
Written in C, SQL
Operating system Cross-platform
Type Software configuration management, bug tracking system, wiki software
License 2010: BSD-2-Clause [lower-alpha 1] [2]
2007: GPL-2.0-only [lower-alpha 2]
Website www.fossil-scm.org   OOjs UI icon edit-ltr-progressive.svg

Fossil is a software configuration management, bug tracking system and wiki software server for use in software development created by D. Richard Hipp.

Contents

Features

Fossil is a cross-platform DVCS that runs on Linux, BSD derivatives, Mac and Windows. It is capable of performing distributed version control, bug tracking, wiki services, and blogging. The software has a built-in web interface, which reduces project tracking complexity and promotes situational awareness. A user may simply type "fossil ui" from within any check-out and Fossil automatically opens the user's web browser to display a page giving detailed history and status information on that project. The fossil executable may be run as a standalone HTTP server, as a CGI application, accessed via SSH, or run interactively from the CLI.

Being distributed, Fossil requires no central server, although collaboration is made easier by using one.

Content is stored using a SQLite database so that transactions are atomic even if interrupted by a power loss or system crash. [3]

Fossil is free software released under a BSD license [4] (relicensed from previously GPL).

Adoption

Fossil is used for version control by the SQLite project, which is itself a component of Fossil. SQLite transitioned to using Fossil for version control over CVS on 2009-08-12. [5] [6]

Some examples of other projects using Fossil are:

Source code hosting

The following websites provide free source code hosting for Fossil repositories:

See also

Notes

  1. BSD-2-Clause since 2010-05-16.
  2. GPL-2.0-only from 2007-07-21 until 2010-05-16.

Related Research Articles

<span class="mw-page-title-main">Bugzilla</span> Web-based general-purpose bugtracker

Bugzilla is a web-based general-purpose bug tracking system and testing tool originally developed and used by the Mozilla project, and licensed under the Mozilla Public License.

<span class="mw-page-title-main">MySQL</span> SQL database engine software

MySQL is an open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A relational database organizes data into one or more data tables in which data may be related to each other; these relations help structure the data. SQL is a language that programmers use to create, modify and extract data from the relational database, as well as control user access to the database. In addition to relational databases and SQL, an RDBMS like MySQL works with an operating system to implement a relational database in a computer's storage system, manages users, allows for network access and facilitates testing database integrity and creation of backups.

<span class="mw-page-title-main">SQLite</span> Serverless relational database management system (RDBMS)

SQLite is a database engine written in the C programming language. It is not a standalone app; rather, it is a library that software developers embed in their apps. As such, it belongs to the family of embedded databases. It is the most widely deployed database engine, as it is used by several of the top web browsers, operating systems, mobile phones, and other embedded systems.

Trac is an open-source, web-based project management and bug tracking system. It has been adopted by a variety of organizations for use as a bug tracking system for both free and open-source software and proprietary projects and products. Trac integrates with major version control systems including Subversion and Git. Trac is used, among others, by the Internet Research Task Force, Django, FFmpeg, jQuery UI, WebKit, 0 A.D., and WordPress.

eZ Publish is an open-source enterprise PHP content management system that was developed by the Norwegian company Ibexa. eZ Publish is now maintained by 7x. eZ Publish is freely available under the GNU GPL version 2 license, as well as under proprietary licenses that include commercial support. In 2015, eZ Systems introduced eZ Platform to replace eZ Publish with a more modern and future-proof solution. In 2024, 7x released eZ Publish 6.0 (stable) to replace eZ Publish 5.4 with a more modern and future-proof solution compatible with PHP 7.x and 8.x software. In 2024/02 7x followed up its first release (6.0) with a powerful second release 6.0.1 containing key installation bugfixes and a brand new database backend for flat file database called SQLite that is mature and stable ready to use to simplify your website or web application. In 2024/03 7x continues to develop and release monthly updates to eZ Publish with the release of version 6.0.2 which provides default design improvements and many more extensions enabled for use by default.

Domain Technologie Control (DTC) is a web hosting control panel aimed at providing a graphics-oriented layout for managing commercial hosting of web servers, intended for shared web hosting servers, virtual private servers (VPSes), and dedicated servers. Domain Technologie Control is free software released under the GNU LGPL v2.1 license. It is fully skinnable and translated into several languages.

<span class="mw-page-title-main">Kexi</span> KDE visual database applications creator

Kexi is a visual database applications creator tool by KDE, designed to fill the gap between spreadsheets and database solutions requiring more sophisticated development. Kexi can be used for designing and implementing databases, data inserting and processing, and performing queries. It is developed within the Calligra project but is released separately.

<span class="mw-page-title-main">Git</span> Software for version control of files

Git is a distributed version control system that tracks changes in any set of computer files, usually used for coordinating work among programmers who are collaboratively developing source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows.

In software development, distributed version control is a form of version control in which the complete codebase, including its full history, is mirrored on every developer's computer. Compared to centralized version control, this enables automatic management branching and merging, speeds up most operations, improves the ability to work offline, and does not rely on a single location for backups. Git, the world's most popular version control system, is a distributed version control system.

<span class="mw-page-title-main">Mantis Bug Tracker</span> Bug tracking system

Mantis Bug Tracker is a free and open source, web-based bug tracking system. The most common use of MantisBT is to track software defects. However, MantisBT is often configured by users to serve as a more generic issue tracking system and project management tool.

<span class="mw-page-title-main">Mercurial</span> Distributed revision-control tool for software developers

Mercurial is a distributed revision control tool for software developers. It is supported on Microsoft Windows, Linux, and other Unix-like systems, such as FreeBSD and macOS.

Notable issue tracking systems, including bug tracking systems, help desk and service desk issue tracking systems, as well as asset management systems, include the following. The comparison includes client-server application, distributed and hosted systems.

In software development, version control is a class of systems responsible for managing changes to computer programs or other collections of information such that revisions have a logical and consistent organization. The following tables include general and technical information on notable version control and software configuration management (SCM) software. For SCM software not suitable for source code, see Comparison of open-source configuration management software.

Companies whose business centers on the development of open-source software employ a variety of business models to solve the challenge of how to make money providing software that is by definition licensed free of charge. Each of these business strategies rests on the premise that users of open-source technologies are willing to purchase additional software features under proprietary licenses, or purchase other services or elements of value that complement the open-source software that is core to the business. This additional value can be, but not limited to, enterprise-grade features and up-time guarantees to satisfy business or compliance requirements, performance and efficiency gains by features not yet available in the open source version, legal protection, or professional support/training/consulting that are typical of proprietary software applications.

<span class="mw-page-title-main">Tkabber</span> Instant messaging client using Tk

Tkabber is a GPL instant messaging client for the XMPP protocol which uses the Tk toolkit for the GUI. It runs on anything to which Tcl/Tk is ported: almost any X-based system, Microsoft Windows, and Mac OS X.

Plastic SCM is a cross-platform commercial distributed version control tool developed by Códice Software for Microsoft Windows, Mac OS X, Linux, and other operating systems. It includes a command-line tool, native GUIs, diff and merge tool and integration with a number of IDEs. It is a full version control stack not based on Git.

The following outline is provided as an overview of and topical guide to MySQL:

Software relicensing is applied in open-source software development when software licenses of software modules are incompatible and are required to be compatible for a greater combined work. Licenses applied to software as copyrightable works, in source code as binary form, can contain contradictory clauses. These requirements can make it impossible to combine source code or content of several software works to create a new combined one.

<span class="mw-page-title-main">DBeaver</span> Multi-platform database administration software

DBeaver is a SQL client software application and a database administration tool. For relational databases it uses the JDBC application programming interface (API) to interact with databases via a JDBC driver. For other databases (NoSQL) it uses proprietary database drivers. It provides an editor that supports code completion and syntax highlighting. It provides a plug-in architecture that allows users to modify much of the application's behavior to provide database-specific functionality or features that are database-independent. This is a desktop application written in Java and based on Eclipse platform.

References

  1. "Fossil: Change Log".
  2. Fossil Copyright
  3. "Integrated version control with Fossil SCM". 5 November 2009., DLR Tech Talk presentation by Arne Bachmann, 2009-12-01
  4. "Fossil DSCM Relicensed with BSD License". 2010-05-16.
  5. "Fossil: Fossil Performance". Fossil-scm.org. 2009-08-23. Retrieved 2009-09-12.
  6. "SQLite: Timeline". sqlite.org.
  7. "Chiselapp.com shutting down". James Turner. 2013-03-28. Retrieved 2013-04-10.
  8. "ChiselApp ChangeOver Complete". Andreas Kupries. 2013-04-30. Retrieved 2013-05-01.
  9. "Example: Free Fossil-SCM Repository Hosting" . Retrieved 2015-11-21.

Further reading