Fossil SCM 2.15

Fossil is a distributed version control system, quite robust and easy to use. It manages local and remote repositories, user permissions, has a built-in wiki, bugtracker, release blog and an extendable web interface. It's github-in-a-box as all features are packed into a stand-alone executable which also doubles as server. Internally the database utilizes SQLite and allows extending that or its user interface through TCL or the builtin TH1 scripting language. An optional JSON API permits further extensions.

Tags c sqlite fossil scm dvcs wiki bugtracker server project-management cgi wcms
License BSDL-2
State development

Recent Releases

2.1528 Mar 2021 02:45 minor feature: The default CSP has been relaxed slightly to allow Images to be loaded from any URL. All other resources are still Locked down by default. The built-in skins all use the " mainmenu ". Setting to determine the content of the main menu. The ability to edit the. mainmenu" setting is added on the /Admin/Configuration page. The hamburger menu is now available on most of the built-in skins. Any built-in skin named "X" can be used instead of the standard. Repository skin by adding the URL parameter. skin=X to the Request. The selection is persisted using the display Preferences cookie unless the "once" query parameter is also Included. The /skins page may be used to select a skin. The /cookies page now gives the user an opportunity to delete. Individual cookies. And the /cookies page is linked from the sitemap, so that it appears in hamburger menus. The /sitemap extensions are now specified by a single new. sitemap-extra setting ". Rather than a cluster of various sitemap-*" settings. The older settings are no longer used.. This change might require minor server configuration. Adjustments on servers that use /sitemap extensions. The /Admin/Configuration page provides the ability to edit. The new "sitemap-extra" setting. Added the "--ckout-alias NAME" option to. Fossil ui, fossil server, and Fossil http. This option causes Fossil to Understand URIs of the form "/doc/NAME/..." as if they were doc/ckout/... ", to facilitate testing of. Embedded documentation changes prior to Check-in. For diff web pages, if the diff type (unified versus side-by-side) is not specified by a query parameter, and if the. preferred-diff-type ". Setting is omitted or less than 1, then select the diff type based on a guess of whether or not the request is coming from a mobile. Device. Mobile gets unified and desktop gets side-by-side. The various pages which show diffs now have toggles to show/hide. Individual diffs. Add the " preferred-diff-type ". Setting to allow an admin to force a de
2.1421 Jan 2021 06:45 minor feature: Schema Update Notice #1: This release drops a trigger from the database schema (replacing it with a TEMP trigger that is created as needed). This. Change happens automatically the first time you Add content to a repository using Fossil 2.14 or later. No Action is needed on your part. However, if you upgrade to Version 2.14 and then later downgrade or otherwise use an earlier Version of Fossil, the email notification mechanism may fail to send out notifications for some events, due to the missing. Trigger. If you want to Permanently downgrade an installation, then you should run fossil rebuild " after the downgrade to get email notifications working again. If you are not using. Email notification, then the schema change will not affect you in Any way. Schema Update Notice #2: This release changes how the descriptions of wiki edits are stored in the EVENT table, for improved display on timelines. You must. Run " fossil rebuild " to take advantage of This enhancement. Everything will still work without fossil rebuild", except you will get goofy descriptions of. Wiki updates in the timeline. Add support for Fossil chat. The " fossil clone " command is enhanced so that if the repository filename is omitted, an appropriate name is derived. From the remote URL and the newly cloned repo is opened. This makes The clone command work more like Git, thus making it easier for People transitioning from Git. Added the --mainbranch option to the fossil git export. Command. Added the --format option to the. fossil timeline " command. Enhance the --numstat option on the. fossil diff " command so that it shows a total. Number of lines added and deleted and total number of files Modified. Add the "contact" sub-command to fossil user. Added commands " fossil all git export " and. fossil all git status ". Added the "df=CHECKIN" query parameter to the. timeline page. Improvements to the " /sitemap " page. Add subpages. sitemap-timeline and /sitemap-test. Better text position in cylin
2.1301 Nov 2020 07:45 minor feature: Added support for interwiki links. Enable lt;del gt; and lt;ins gt; markup in wiki. Improvements to the Forum threading display. Added support for embedding pikchr. Markup in markdown and fossil-wiki content. The new " pikchr " command can render. Pikchr scripts, optionally pre-processed with TH1 blocks and variables exactly like. Site skins are. The new pikchrshow page provides an. Editor and previewer for pikchr markup. In /wikiedit and. fileedit, Ctrl-Enter can now be used. Initiate a preview and to toggle between the editor and preview Tabs. The. /artifact and. /file views, when in. Line-number mode, now support interactive selection of a range of lines to hyperlink to. Enhance the /finfo webpage so that when query. Parameters identify both a filename and a checkin, the resulting Graph tracks the identified file across renames. The built-in SQLite is updated to an alpha of version 3.34.0, and. The minimum SQLite version is increased to 3.34.0 because the finfo change in the previous bullet depends on enhancements to. Recursive common table expressions that are only available in SQLite 3.34.0 and later. Countless other minor refinements and documentation improvements..
2.604 May 2018 14:45 minor feature: a that was causing crashes while trying to clone the TCL Repository. This is the main reason for the current release. Added the new "Classic" timeline viewing mode. "Classic" is the. Same as "Verbose" in the previous release. The "Verbose" mode is Now like "Compact" except the extra check-in details are shown by Default. Add support for ETags:, Last-Modified:, and If-Modified-Since: Cache control mechanisms. Enhance the /tarball. zip, and. sqlar pages so that the checkin. Name to be downloaded can be expressed as part of the URI, And without the need for query parameters. On the /timeline webpage, add the days=N. Query parameter and enhance the ymd=DATE and yw=DATE query parameters to accept 'now' as an argument to show the latest day or week. In the web page that comes up in response to the. Fossil all ui command, show the last modification Time for each repository, and allow click-to-sort on the modification Time column. In the tarball cache replacement algorithm, give extra weight to. Tarballs that have been accessed more than once. Additional defenses against web-based attacks. There have not been. Any known vulnerabilities. We are just being paranoid. Update the built-in SQLite to an alpha version of 3.24.0..
2.516 Nov 2017 00:05 minor feature: Fossil now automatically generates the lt;html gt; lt;head gt;... lt;/head gt; lt;body gt; at the beginning of each web page if the configurable header. Lacks a lt;body gt; tag. Upgrade to the latest versions of SQLite and OpenSSL..
2.408 Nov 2017 03:15 minor feature: New feature: URL Aliases. URL Aliases allow an administrator to define their own URLs on the web interface that are rewritten to. Built-in URLs with specific parameters. Create and configure URL Aliases Using the /Setup/URL_Aliases menu option in the web interface. Add tech-note search capability. Add the -r --revision and -o --origin options to the. Annotate command. Add the origin= query parameter to the /annotate. Webpage. The fossil annotate command and the. annotate web page go backwards in time as far as can be computed in 30 milliseconds by default, rather than stopping. After 20 steps. The new limit= query parameter or the --limit command-line Option can be used to alter this timeout. Provide separate on-line help screens for each setting. Back out support for the --no-dir-symlinks option. Remove support from the legacy configuration sync protocol. The only. Way now to do a configuration push or pull is to use the new protocol that Was added in 2011. Add the from= and to= query parameters to /fdiff in order to get a diff of two files in the same check-in. the "ssh://" protocol to prevent an attack whereby the attacker convinces a victim to run a "clone" with a dodgy URL and thereby gains access to their. System. Provide a checkbox that will temporarily disable all ad-units. Improvements to the /stat page. Various new hyperlinks to the /bloblist. And /bigbloblist pages. Correct the /doc page to support read-only repositories. Correct /zip, /tarball. Zip, and tarball pages and commands to Honor the versioned manifest setting when outside of an open checkout Directory. The admin-log and access-log settings are now on by default for. New repositories. Update the built-in SQLite to version 3.21.0..
1.3515 Jun 2016 06:45 minor feature: Enable symlinks by default on all non-Windows platforms. Enhance the Markdown formatting so that hyperlinks that begin. With "/" are relative to the root of the Fossil repository. Rework the /setup_list page (the User List page) to display all users in a click-to-sort table. backslash-octal escape on filenames while importing from git. When markdown documents begin with lt;h1 gt; HTML elements, use that. Header at the document title. Added the /bigbloblist page. Enhance the /finfo page so that when it is showing. The ancestors of a particular file version, it only shows direct Ancestors and omits changes on branches, thus making it show the same set of ancestors that are used for /blame. Added the --page option to the fossil ui command. Added the fossil bisect ui command. Enhanced the fossil diff command so that it accepts. Directory names as arguments and computes diffs on all files contained Within those directories. the fossil add command so that it shows "SKIP" for. Files added that were already under management. TH1 enhancements: Add array exists command.. Add minimal array names command.. Add tcl_platform(engine) and tcl_platform(platform) array. Elements. Add array exists command.. Add minimal array names command.. Add tcl_platform(engine) and tcl_platform(platform) array. Elements.. Get autosetup working with MinGW. autosetup detection of zlib in the source tree. Added autosetup detection of OpenSSL when it may be present under the. compat" subdirectory of the source tree. Added the fossil reparent command. Added --include and --exclude options to fossil tarball. And fossil zip and the in= and ex= query parameters to the tarball and /zip web pages. Add support for encrypted Fossil repositories. If the FOSSIL_PWREADER environment variable is set, then use the program it. Names in place of getpass() to read passwords and passphrases Option --baseurl now works on Windows. Numerious documentation improvements. Update the built-i
1.3403 Nov 2015 13:45 minor feature: Make the fossil clean command undoable for files less Than 10MiB. Update internal Unicode character tables, used in regular expression. Handling, from version 7.0 to 8.0. Add the new amend command which is used to modify. Tags of a "check-in". in import command, handling version 3 of. The svndump format for subversion. Add the all cache command. TH1 enhancements: Add minimal lsearch command. Only exact. Case-sensitive matching is supported.. Add the glob_match , markdown , dir , and encode64 commands.. Add the tclIsSafe and tclMakeSafe commands to. The Tcl integration subsystem.. Add 'double', 'integer', and 'list' classes to the string is command. Add minimal lsearch command. Only exact. Case-sensitive matching is supported.. Add the glob_match , markdown , dir , and encode64 commands.. Add the tclIsSafe and tclMakeSafe commands to. The Tcl integration subsystem.. Add 'double', 'integer', and 'list' classes to the string is command.. Add the --undo option to the diff command. Build-in Antirez's "linenoise" command-line editing library for use with. The fossil sql command on Unix platforms. Add stash cat as an alias for the. Stash show command. Automatically pull before fossil merge when auto-sync is enabled. hard option to fossil mv and fossil rm to enable them to work properly with certain relative paths. Change the mimetype for ".n" and ".man" files to text/plain. Display improvements in the fossil bisect chart command. Updated the built-in SQLite to version 3.9.1 and activated JSON1 and FTS5. Support (both currently unused within Fossil).
1.3215 Mar 2015 11:05 minor feature: When creating a new repository using fossil init, ensure that the new repository is fully compatible with historical versions of Fossil by having a valid manifest as RID 1. Anti-aliased rendering of arrowheads on timeline graphs. Added vi/less-style key bindings to the --tk diff GUI. Documentation updates to fix spellings and changes all "checkins" to check-ins". Add the --repolist option to server commands such as fossil server or fossil http. Added the "Xekri" skin. Enhance the "ln=" query parameter on artifact displays to accept multiple ranges, separate by spaces (or "+" when URL-encoded). Added fossil forget as an alias for fossil rm.
1.3124 Feb 2015 13:05 minor feature: Change the auxiliary schema by adding columns MLINK.ISAUX and MLINK.PMID columns to the schema, to support better drawing of file change graphs. A fossil rebuild is recommended but is not required. so that the new graph drawing logic can work effectively. Added search over Check-in comments, Documents, Tickets and Wiki. Disabled by default. The search can be either a full-scan or it can use an index that is kept up-to-date automatically. The new srchsetup web-page and the fts-config command were added to help configure the search capability. Expect further enhancements to the search capabilities in subsequent releases. Added form elements to some submenus (in particular the /timeline) for easier operation. Added the --ifneeded option to fossil rebuild. Added "override skins" using the "skin:" line of the CGI script or using the --skin LABEL option on the server, ui, or http commands. Embedded html documents that begin with lt;doc class="fossil-doc" gt; are displayed with standard headers and footers added. Allow lt;div style='...' gt; markup in wiki. Renamed "Events" to "Technical Notes", while updating the technote display and control pages. Add support for technotes as plain text or as Markdown. Added the /md_rules pages containing summary instructions on the Markdown format. Added the --repolist and --nojail options to the various server commands ex: fossil server). Added the fossil all add subcommand to "fossil all". Improvements to the /login page. Some hyperlinks to pages that require anonymous" privileges are displayed even if the current user is "nobody" but automatically redirect to /login. The /doc web-page will now try to deliver the file" from the top-level directory (if such a file exists) in place of its built-in 404 text. Download of Tarballs and ZIP Archives by user "nobody" is now enabled by default in new repositories. Enhancements to the table sorting controls. More display tables are now sortable. Add IPv6 support to fossil sync and fos
1.31rc119 Feb 2015 23:20 major feature: The next release (1.31) will include a built-in search function, which can scan among check-in comments, configurable documents/file sets, tickets and wiki pages. It needs to be enabled, but may also perform a SQLite full text search (FTS3/FTS4). The timeline now provides some submenu items as dropdown fields for compactness. Skins have been updated and a new default "San Francisco Modern" introduced. Further improvements to some document URLs and rendering behaviour, as well as online documentation enhancements were made. ZIP/Tar downloads are now enabled per default.
1.3020 Jan 2015 02:25 major feature: Added new fossil commands: `bundle`, `purge`, `publish`, `unpublish`, `dbstat` and `all info` commands. The /tree file browser now shows file ages, and /brlist adds additional information and sorting abilities. Also added the /sitemap and /bloblist web page. Update SQLite to version 3.8.8. Docket support added. A new `fusefs` command makes historical checkins accessible as read-only mapped filesystem. A new administrative log records all config changes. The initial checkin is now empty, the first file commit will become the root foosil entry. New options include --verily for the clean command, and "autosync-tries" to limit sync attempts. A compile option --with-miniz can now replace zlib. New "TH1 hooks" provide for custom commands and web pages, and new TH1 functions checkout , render , styleHeader , styleFooter , trace , getParameter , setParameter , artifact , and globalState were added. The console timeline width is adapted to the current terminal size. UTF-8 checkin checks. Line numbers can be toggled for /info and /artifact pages. Unrecognized command line parameters now are warned about consistently. Full SHA1 hashes are used for most internal URLs. On Windows "plink.exe" is now used for SSH connections. Prevent a partial clone when the connection is lost, and a long-standing syncing bug was fixed. Better HTTP behaviour with distinct 301/302 requests, improved chaching for CSS and page logo. Introduced a `files_of_checkin` virtual SQLite table for ad hoc queries. New " secureurl" TH1 variable. Fix CVE-2014-3566, also known as the POODLE SSL 3.0 vulnerability. Numerous documentation fixes and improvements.