github.com/richardlehane/siegfried
v1.11.6
#3029 most downloaded on Go modules
richardlehane/siegfried
What this package is like to depend on
Last release 1 months ago
12 Jul 2026
Release timing varies
gaps range from 2 weeks to 11 months
Nearly every release is documented
notes for 53 of 54 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
82 releases · first in 2014
5 releases in the last 12 months
see the full history below
Release timeline
82 releases · Sep 2014 to Jul 2026Releases
latest 60 of 82-
v1.11.612 Jul 2026Release notes
Open source →Changed
- update toolchain and worflows to build releases with Go 1.26.5; minimum Go version for library users is still 1.25.0. Implemented by Jesús García Crespo
-
v1.11.511 Jul 2026Release notes
Open source →Changed
- update PRONOM to v124
- update go version to 1.25.0
Fixed
- bug with mimeinfo signature generation. Reported by Hugh Williams #287
- wasm_exec.js updated. Reported by Trevor Munoz #287
Change Log
-
v1.11.5-0.20260123072746-26cdfd823a7f23 Jan 2026 pre-releaseNothing published for this version
-
v1.11.423 Jan 2026 -
v1.11.323 Jan 2026Release notes
Open source →Added
- Roy speed-up by avoiding function calls in loops. Fixes #148. Implemented by Ross Spencer
Changed
- update PRONOM to v122
- update LOC to 2025-12-09
- update TIKA to v3.2.3
-
v1.11.201 Mar 2025Release notes
Open source →Added
- Filter introduced to improve Wikidata queries and
-harvestWikidataSigLenflag sets minimum length of Wikidata signatures. Implemented by Ross Spencer and Andy Jackson -noprovflag introduced for Wikidata signatures. Implemented by Ross Spencerversioncommand forroy. Implemented by Ross Spencer
Changed
- Wikidata definitions updated to 4.0.0. By Ross Spencer
- Logged error messages have more context. Implemented by Ross Spencer
- update PRONOM to v120
- update LOC to 2025-02-26
- update TIKA to v3.1.0
Fixed
- Explicitly declared variable offsets are parsed e.g. fmt/1840. Implemented by Rijnder Wever
- Filter introduced to improve Wikidata queries and
-
v1.11.2-rc1-wikiprov22 Jan 2025 pre-releaseNothing published for this version
-
v1.11.2-rc0.0.20240924101959-7cd90a45c08824 Sep 2024 pre-releaseNothing published for this version
-
v1.11.2-rc015 Jul 2024 pre-releaseNothing published for this version
-
v1.11.2-0.20250118002626-063951c5773c18 Jan 2025 pre-releaseNothing published for this version
-
v1.11.2-0.20240707025731-5e86c0355bcf07 Jul 2024 pre-releaseNothing published for this version
-
v1.11.125 Jun 2024Release notes
Open source →Added
- WASM build. See wasm/README.md for more details. Feature sponsored by Archives New Zealand. Inspired by Andy Jackson
-symflag enables following symbolic links to files during scanning. Requested by Max Moser
Changed
- XDG_DATA_DIRS checked when determining siegfried home location. Requested by Michał Górny
- Windows 7 build on releases page (built with go 1.20). Requested by Aleksandr Sergeev
- update PRONOM to v118
- update LOC to 2024-06-14
Fixed
- zips piped into STDIN are decompressed with
-zflag. Reported by Max Moser - panics from OS calls in init functions. Reported by Jürgen Enge
-
v1.11.1-rc421 Jun 2024 pre-releaseNothing published for this version
-
v1.11.1-rc321 Jun 2024 pre-releaseNothing published for this version
-
v1.11.1-rc221 Jun 2024 pre-releaseNothing published for this version
-
v1.11.1-rc121 Jun 2024 pre-releaseNothing published for this version
-
v1.11.1-rc21 Jun 2024 pre-releaseNothing published for this version
-
v1.11.1-0.20231217151036-aa72ecceaa3e17 Dec 2023 pre-releaseNothing published for this version
-
v1.11.017 Dec 2023Release notes
Open source →Added
- glob-matching for container signatures; see digital-preservation/pronom#10
sf -updaterequires less updating of siegfried; see #231
Changed
- default location for siegfried HOME now follows XDG Base Directory Specification; see #216. Implemented by Bernhard Hampel-Waffenthal
- siegfried prints version before erroring with failed signature load; requested by Ross Spencer
- update PRONOM to v116
- update LOC to 2023-12-14
- update tika-mimetypes to v3.0.0-BETA
- update freedesktop.org to v2.4
Fixed
- panic on malformed zip file during container matching; reported by James Mooney
-
v1.11.0-rc716 Dec 2023 pre-releaseNothing published for this version
-
v1.11.0-rc615 Dec 2023 pre-releaseNothing published for this version
-
v1.11.0-rc502 Jun 2023 pre-releaseNothing published for this version
-
v1.11.0-rc431 May 2023 pre-releaseNothing published for this version
-
v1.11.0-rc331 May 2023 pre-releaseNothing published for this version
-
v1.11.0-rc231 May 2023 pre-releaseNothing published for this version
-
v1.11.0-rc128 May 2023 pre-releaseNothing published for this version
-
v1.10.217 Dec 2023Release notes
Open source →Changed
- update PRONOM to v116
- update LOC to 2023-12-14
- update tika-mimetypes to v3.0.0-BETA
- update freedesktop.org to v2.4
-
v1.10.124 Apr 2023Release notes
Open source →Fixed
- glob expansion now only on Windows & when no explicit path match. Implemented by Bernhard Hampel-Waffenthal
- compression algorithm for debian packages changed back to xz. Implemented by Paul Millar
-multi droidsetting returned empty results when priority lists contained self-references. See #218- CGO disabled for debian package and linux binaries. See #219
-
v1.10.024 Mar 2023Release notes
Open source →Added
- format classification included as "class" field in PRONOM results. Requested by Robin François. Implemented by Ross Spencer
-noclassflag added to roy build command. Use this flag to build signatures that omit the new "class" field from results.- glob paths can be used in place of file or directory paths for identification (e.g.
sf *.jpg). Implemented by Ross Spencer -multi droidsetting for roy build command. Applies priorities after rather than during identificaiton for more DROID-like results. Reported by David Clipsham/updatecommand for server mode. Requested by Luis Faria
Changed
- new algorithm for dynamic multi-sequence matching for improved wildcard performance
- update PRONOM to v111
- update LOC to 2023-01-27
- update tika-mimetypes to v2.7.0
- minimum go version to build siegfried is now 1.18
Fixed
- archivematica extensions built into wikidata signatures. Reported by Ross Spencer
- trailing slash for folder paths in URI field in droid output. Reported by Philipp Wittwer
- crash when using
sf -replaywith droid output
-
v1.9.7-0.20230324133256-c85f3baba19b24 Mar 2023 pre-releaseNothing published for this version
-
v1.9.606 Nov 2022 -
v1.9.512 Sep 2022Release notes
Open source →Added
roy inspectnow takes a-droidflag to allow easier inspection of old or custom DROID files- github action to update siegfried docker deployment [https://github.com/keeps/siegfried-docker]. Implemented by Keep Solutions
Changed
- update PRONOM to v108
- update tika-mimetype signatures to v2.4.1
- update LOC signatures to 2022-09-01
Fixed
-
v1.9.418 Jul 2022Release notes
Open source →Added
- new pkg/static and static builds. This allows direct use of sf API and self-contained binaries without needing separate signature files.
Changed
- update PRONOM to v106
Fixed
- inconsistent output for
roy inspect priorities. Reported by Dave Clipsham
-
v1.9.323 May 2022Release notes
Open source →Added
- JS/WASM build support contributed by Andy Jackson
- wikidata signature added to
-update. Contributed by Ross Spencer -nopronomflag added toroy inspectsubcommand. Contributed by Ross Spencer
Changed
- update PRONOM to v104
- update LOC signatures to 2022-05-09
- update Wikidata to 2022-05-20
- update tika-mimetypes signatures to v2.4.0
- update freedesktop.org signatures to v2.2
Fixed
- invalid JSON output for fmt/1472 due to tab in MIME field. Reported by Robert Schultz
- panic on corrupt Zip containers. Reported by A. Diamond
-
v1.9.3-0.20220206204623-9a4d83d9cf0206 Feb 2022 pre-releaseNothing published for this version
-
v1.9.206 Feb 2022Release notes
Open source →Added
- Wikidata definition file specification has been updated and now includes endpoint (users will need to harvest Wikidata again)
- Custom Wikibase endpoint can now be specified for harvesting when paired with a custom SPARQL query and property mappings
- Wikidata identifier includes permalinks in results
- Wikidata revision history visible using
roy inspect - roy inspect returns format ID with name
Changed
- update PRONOM to v100
- update LOC signatures to 2022-02-01
- update tika-mimetypes signatures to v2.2.1
- update freedesktop.org signatures to v2.1
Fixed
- parse issues for container files where zero indexing used for Position. Spotted by Ross Spencer
- sf -droid output can't be read by sf (e.g. for comparing results). Reported by ostnatalie
- panic when running in server mode due to race condition. Reported by Miguel Guimarães
- panic when reading malformed MSCFB files. Reported by Greg Lepore
- unescaped control characters in JSON output. Reported by Sebastian Lange
- zip file names with null terminated strings prevent ID of Serif formats. Reported by Tyler Thorsted
-
v1.9.2-0.20210708194522-63ee4b13fa4d08 Jul 2021 pre-releaseNothing published for this version
-
v1.9.2-0.20210614081721-5c1c82f2262714 Jun 2021 pre-releaseNothing published for this version
-
v1.9.111 Oct 2020Release notes
Open source →Changed
- update PRONOM to v97
- zs flag now activates -z flag
Fixed
- details text in PRONOM identifier
roypanic when building signatures with empty sequences. Reported by Greg Lepore
-
v1.9.022 Sep 2020Release notes
Open source →Added
- a new Wikidata identifier, harvesting information from the Wikidata Query Service. Implemented by Ross Spencer.
- select which archive types (zip, tar, gzip, warc, or arc) are unpacked using the -zs flag (sf -zs tar,zip). Implemented by Ross Spencer.
Changed
- update LOC signatures to 2020-09-21
- update tika-mimetypes signatures to v1.24
- update freedesktop.org signatures to v2.0
Fixed
- incorrect basis for some signatures with multiple patterns. Reported and fixed by Ross Spencer.
-
v1.8.022 Jan 2020Release notes
Open source →Added
- utc flag returns file modified dates in UTC e.g.
sf -utc FILE | DIR. Requested by Dragan Espenschied - new cost and repetition flags to control segmentation when building signatures
Changed
- update PRONOM to v96
- update LOC signatures to 2019-12-18
- update tika-mimetypes signatures to v1.23
- update freedesktop.org signatures to v1.15
Fixed
- XML namespaces detected by prefix on root tag, as well as default namespace (for mime-info spec)
- panic when scanning certain MS-CFB files. Reported separately by Mike Shallcross and Euan Cochrane
- file with many FF xx sequences grinds to a halt. Reported by Andy Foster
- utc flag returns file modified dates in UTC e.g.
-
v1.7.1318 Aug 2019Release notes
Open source →Added
- the
-fflag now scans directories, as well as files. Requested by Harry Moss
Changed
- update LOC signatures to 2019-06-16
- update tika-mimetypes signatures to v1.22
Fixed
- filenames with "?" were parsed as URLs; reported by workflowsguy
- the
-
v1.7.1215 Jun 2019Release notes
Open source →Changed
- update PRONOM to v95
- update LOC signatures to 2019-05-20
- update tika-mimetypes signatures to v1.21
Fixed
- .docx files with .doc extensions panic due to bug in division of hints in container matcher. Thanks to Jean-Séverin Lair for reporting and sharing samples and to VAIarchief for additional report with example.
- mime-info signatures panic on some files due to duplicate entries in the freedesktop and tika signature files; spotted during an attempt at pair coding with Ross Spencer... thanks Ross and sorry for hogging the laptop! #125
-
v1.7.12-0.20190401190115-99b4106927c701 Apr 2019 pre-releaseNothing published for this version
-
v1.7.1116 Feb 2019Release notes
Open source →Changed
- update LOC signatures to 2019-01-06
- update tika-mimetypes signatures to v1.20
Fixed
-
v1.7.1019 Sep 2018Release notes
Open source →Added
- print configuration defaults with
sf -version
Changed
- update PRONOM to v94
Fixed
- LOC identifier fixed after regression in v1.7.9
- remove skeleton-suite files triggering malware warnings by adding to .gitignore; reported by Dave Rice
- release built with Go version 11, which includes a fix for a CIFS error that caused files to be skipped during file walk; reported by Maarten Savels
- print configuration defaults with
-
v1.7.930 Aug 2018Release notes
Open source →Added
- save defaults in a configuration file: use the -setconf flag to record any other flags used into a config file. These defaults will be loaded each time you run sf. E.g.
sf -multi 16 -setconfthensf DIR(loads the new multi default) - use
-conf filenameto save or load from a named config file. E.g.sf -multi 16 -serve :5138 -conf srv.conf -setconfand thensf -conf srv.conf - added
-yamlflag so, if you set json/csv in default config :(, you can override with YAML instead. Choose the YAML!
Changed
- the
roy compare -joinoptions that join on filepath now work better when comparing results with mixed windows and unix paths - exported decompress package to give more functionality for users of the golang API; requested by Byron Ruth
- update LOC signatures to 2018-06-14
- update freedesktop.org signatures to v1.10
- update tika-mimetype signatures to v1.18
Fixed
- misidentifications of some files e.g. ODF presentation due to sf quitting early on strong matches. Have adjusted this algorithm to make sf wait longer if there is evidence (e.g. from filename) that the file might be something else. Reported by Jean-Séverin Lair
- read and other file errors caused sf to hang; reports by Greg Lepore and Andy Foster; fix contributed by Ross Spencer
- bug reading streams where EOF returned for reads exactly adjacent the end of file
- bug in mscfb library (race condition for concurrent access to a global variable)
- some matches result in extremely verbose basis fields; reported by Nick Krabbenhoeft. Partly fixed: basis field now reports a single basis for a match but work remains to speed up matching for these cases.
- save defaults in a configuration file: use the -setconf flag to record any other flags used into a config file. These defaults will be loaded each time you run sf. E.g.
-
v1.7.802 Dec 2017Release notes
Open source →Changed
- update LOC signatures to 2017-09-28
- update PRONOM signatures to v93
-
v1.7.730 Nov 2017Release notes
Open source →Added
- version information for MIME-info signatures (freedesktop.org and tika-mimetypes) now recorded in mime-info.json file and presented in results
- new sets file for PRONOM extensions. This creates sets like @.doc and @.txt (i.e. all PUIDs with those extensions). Allows you to do commands like
roy build -limit @.doc,@.docx,roy inspect @.txtandsf -log @.pdf,o DIR
Changed
- update freedesktop.org signatures to v1.9
Fixed
- out of memory error when using
sf -zon compressed files that contain very large files; reported by Terry Jolliffe - report errors that occur during file decompression. Previously, only fatal errors encountered when a compressed file is first opened were reported. Now errors that are encountered while attempting to walk the contents of a compressed file are also reported.
- report errors for 'roy inspect' when roy can't find anything to inspect; reported by Ross Spencer
-
v1.7.604 Oct 2017Release notes
Open source →Added
- continue on error flag (-coe) can now be used to continue scans despite fatal file errors that would normally cause scanning to halt. This may be useful e.g. for big directory scans over unreliable networks. Usage:
sf -coe DIR
Changed
- update PRONOM signatures to v92
Fixed
- file scanning is now restricted to regular files (i.e. not symlinks, sockets, devices etc.). Reported by Henk Vanstappen.
- windows longpath fix now works for paths that appear short
- continue on error flag (-coe) can now be used to continue scans despite fatal file errors that would normally cause scanning to halt. This may be useful e.g. for big directory scans over unreliable networks. Usage:
-
v1.7.4-0.20170530025921-709bd9c6a8c030 May 2017 pre-releaseNothing published for this version
-
v1.7.4-0.20170530021318-79eb3cd1202830 May 2017 pre-releaseNothing published for this version
-
v1.7.3-330 May 2017 pre-releaseNothing published for this version
-
v1.7.3-230 May 2017 pre-releaseNothing published for this version
-
v1.7.112 Mar 2017Release notes
Open source →Added
- signature updates for PRONOM, LOC and tika-mimetypes
Changed
roy inspectaccepts space as well as comma-separated lists of formats e.g.roy inspect fmt/1 fmt/2
-
v1.6.405 Sep 2016Release notes
Open source →Added
- roy inspect FMT command now inspects sets e.g. roy inspect @pdfa
- roy inspect priorities command generates graphs of priority relations
Fixed
- container matcher running when empty (i.e. for freedesktop/tika signature files and when -nocontainer flag used with PRONOM)
- -doubleup flag preventing signature extensions loading: since v1.3.0 signature extensions included with the -extend flag haven't been loading properly due to interaction with the doubles filter (which prevents byte signatures loading for formats that also have container signatures defined)
Changed
- use fwac rather than wac package for performance
- roy inspect FMT command speed up by building without reports and without the doubles filter
- -reports flag removed for roy harvest and roy build commands
- -reports flag changed for roy inspect command, now a boolean that, if set, will cause the signature(s) to be built from the PRONOM report(s), rather than the DROID XML file. This is slower but can be a more accurate representation.
-
v1.6.318 Aug 2016Release notes
Open source →Added
- roy inspect FMT command now gives details of all signatures, including container signatures
Fixed
- misidentification: x-fmt/45 files misidentified as fmt/40 due to repetition of elements in container file
- roy build -noreports includes blank extensions that generate false matches; reported by Ross Spencer
-
v1.6.208 Aug 2016Release notes
Open source →Fixed
- poor performance unknowns due to interaction of -bof/-eof flags with known BOF/EOF calculation; reported by Ross Spencer
- unnecessary warnings for mimeinfo identifier
- add fddXML.zip to .gitattributes to preserve newlines
- various Go Report Card issues
-
v1.6.105 Jul 2016Release notes
Open source →Added
- Travis and Appveyor CI automated deployment to Github releases and Bintray
- PRONOM v85 signatures
- LICENSE.txt, CHANGELOG.md
- Go Report Card
Fixed
- golang.org/x/image/riff bug (reported here)
- misspellings reported by Go Report Card
- ineffectual assignments reported by Go Report Card
-
v1.6.026 Jun 2016Release notes
Open source →Added
- implement Library of Congress FDD signatures (beta)
- implement RIFF matcher
- -multi flag replaces -nopriority; based on report by Ross Spencer
Changed
- change to -z output: use hash as filepath separator (and unix slash for webarchives); requested by Ross Spencer
Fixed
- parsing fmt/837 signature; reported by Sarah Romkey