Release 2.6

From AtoM wiki

Main Page > Releases > Releases/Release announcements > Release 2.6

Release date: July 14, 2020

Download link: atom-2.6.0.tar.gz

Database schema version: v184

Release 2.6 is the first major AtoM release since May 2019, and includes many new features (described below), some significant performance enhancements and dependency upgrades, as well as dozens of bug fixes. We've closed 116 issues as part of this release – you can view more details on each ticket in our issue tracker at the following links:

Visit the Downloads page to download the most recent release, and consult the 2.6 Upgrading and Installation guides in our documentation for further information.


We have upgraded AtoM’s dependencies with this release, and this version now requires MySQL 8 and PHP 7.2. We strongly recommend a clean install using Ubuntu 18.04 - please see the Requirements and Installation instructions for further details.

An overview of some of the major changes in the 2.6 release is included below, followed by a full list of links to relevant tickets, sponsors, and documentation for new features.


Issue numbers associated with new features and bug fixes listed below refer to the AtoM project issue tracker. Artefactual uses the issue tracker to track development tasks, feature requirements, quality assurance testing, and related development discussion. You can use the numbers to search for the related issue ticket in our Issue tracker - often the tickets will include more information on how the feature was implemented.

For more information, see: Issue tracker

Accession records

We've added the ability to include alternative identifiers on accession records. Following the guidelines of the new Canadian Archival Accession Information Standard (CAAIS, the first national accessions standard, modeled off the ICA standards in structure), these identifiers can each be given a type (reusable terms managed in a new taxonomy) and also have corresponding note fields. These new fields are also supported in the CSV import templates, and have been added to the search index. We've also added the ability to associate physical storage containers with accession records, and turned the Extent field into a multi-line input.

Sponsored by the Provincial Archives of Saskatchewan

  • #13198 - Allow multi-line input on accession "Received Extent Units" field in edit page

Sponsored by the Government of the Northwest Territories

  • #13254 - Add the ability to add multiple identifiers to accessions, with type and note values
  • #13262 - CSV import for accession alternative identifiers
  • #13265 - Add search support for accession alternative identifiers
  • #13269 - Add the ability to associate accessions with physical storage containers

Related documentation

Updated accessions CSV template:


We've extended the way that Google Analytics can be customized in AtoM, by adding basic Google Tag Manager support. With proper configuration, this would allow site administrators to get insight into how often a download is triggered, a finding aid accessed, and more.

Sponsored by the United Nations Archives and Records Management Section

  • #13284 - Add Google Tag Manager support

Related documentation

Authority records

In addition to overhauling the authority record import templates, we've also added the ability to see related authority records in term search and browse results (such as subjects and places), as well as adding new advanced search options to filter authority records by the relationship type to other authorities.

General bug fixes and enhancements

  • #13157 - Add paging to authority record description relations to avoid editing timeouts

Sponsored by an undisclosed organization

  • #13275 - Display related authority records on Term view and Taxonomy browse pages
  • #13302 - Filter authority record searches by relationship type

Related documentation

Updated 2.6 Authority record CSV import templates:


The Clipboard module now includes a configurable section that can be used to allow clipboard results to be sent to a third-party site as a JSON array, using HTTP POST or GET methods. This can be used to integrate with a third party reference management application, for example.

Sponsored by the Bernard Becker Medical Library Archives at Washington University in St. Louis

  • #12800 - Add JSON export of AtoM clipboard items for third-party integrations

Related documentation

Command-line tasks

In addition to the enhancements described in the Digital Obects section of these release notes, we've also added a few new enhancements to help with maintenance. These include a new task to output the index for a specific description, a task to move authority record description relations from one actor to another, and more.

  • #13189 - Add task to move authority record description relations from one actor to another
  • #13257 - Add ES version to search:status task output
  • #13291 - Add task to output search index data for a target description
  • #13358 - Add option to the build nested set task to exclude types

See also the various CLI task enhancements in the Digital objects section.

Related documentation

Digital objects

We have replaced the Flash-based flowplayer used for streaming media with a modern HTML5 based player (mediaElementJs). MediaElement has Flash fallback for legacy browsers, and supports aria tags, captions, plugins for additional functionality and more. We've also updated two digital object command-line tasks and added new options to them, including adding a method to delete all digital objects associated with a particular repository, and an option in the digital object load task to replace existing attached digital objects.

General bug fixes and enhancements

  • #13196 - CLI regenerate derivatives task produces error when --slug used with --no-overwrite
  • #13243 - Regression: identifier and title context lost on link digital object page

Sponsored by the Oregon Historical Society

  • #12902 - Replace flowplayer with an HTML5 media player and update default derivative generation
  • #12903 - Add new option to Digital object regen-derivatives task to allow regenerating only video file derivatives

Sponsored by the Provincial Archives of Saskatchewan

  • #13103 - Add --attach-only option to digital object load task
  • #13126 - Add --skip-nested-set-build option to digital object load task

Sponsored by the University of Saskatchewan Libraries

  • #13152 - Add --replace option to digital object load task to allow uploads to replace existing digital objects

Sponsored by the Archives Society of Alberta

  • #13288 - Overhaul digitalobject:delete task and add new options to delete all digital objects associated with a repository, and limit to a specific media type

Related documentation

Note: the documentation for linking digital objects is unchanged by the upgrade to a new media player. Some screenshots in the documentation may have been updated.

Finding aids

In collaboration with Dalhousie University Library, we've implemented some minor but much needed usability and formatting improvements to the finding aid layouts.

General bug fixes and enhancements

  • #12707 - Finding aids will display custom levels as "otherlevel" instead of using otherlevel value

Collaboratively developed / sponsored by Dalhousie University Library

  • #10591 - Update finding aid XSLTs with formatting improvements

Related documentation

Note: the documentation is unchanged by these enhancements, other than updating a few screenshots.


The authority record CSV import templates have received a major overhaul - now there is no separate Alias CSV (it has been merged into the main authority record CSV), and the relationships CSV can be imported via the user interface, as well as used to add relationships to existing authorities (previously it could only be imported via the command-line at the same time as an accompanying authority record CSV that contained all referenced records). The accessions CSV template got three previously unsupported fields added, a new bulk authority CSV export task was added to the command-line, and a brand new physical storage CSV import has been added to the command-line as well, which will support update imports. A command-line "roundtrip" option has been added to the descriptions CSV import that vastly improves matching when exporting records, updating the CSV, and then reimporting them into the same system. Finally, a few fixes and new setting options for the DC XML export should improve its utility for those using the OAI Repository module to expose records for harvesting.

General bug fixes and enhancements

  • #6317 - EAD <repository> will not import properly if it is not nested in a <corpname> element
  • #13130 - DC XML should include inherited creator(s) at lower levels
  • #12281 - Add roundtrip option to CLI CSV import for better matching
  • #13204 - An apostrophe in the repository code will cause EAD XML imports to fail
  • #13214 - Importing a CSV with '--skip-nested-set-build' raises an error
  • #13246 - Add --limit option to task for caching XML representations

Sponsored by the WUSTL Bernard Becker Medical Library Archives

  • #12799 - Add donorNotes column to CSV import template for Accessions

Sponsored by the University of Saskatchewan Libraries

  • #13148 - Add support for command-line bulk authority record CSV export task

Sponsored by the Government of the Northwest Territories

  • #13262 - Add CSV import support for accession alternative identifiers
  • #13310 - Add donorFax and donorContactPerson columns to Accession CSV import

Sponsored by the City of Vancouver Archives

  • #13183 - Add command-line CSV import for physical locations
  • #13185 - Add ability to update physical storage data via CSV import

Sponsored by the University of Strathclyde Archives and Special Collections

  • #13244 - Add setting to determine if identifier or reference code is used in DC XML

Sponsored by an undisclosed organization

  • #13249 - Add support for digital object CSV import/export for authority records
  • #13277: Alias and relations added to CSV GUI import for Authority records
  • #13279: Add relationship type to authority record relations CSV import and export
  • #13280: Create relationships between existing authority records via CSV import
  • #13282: Add Alias fields (parallelNames, standardizedNames, and otherFormNames) to Authority Record CSV export

Related documentation

CSV templates:

OAI Repository

In addition to some of the DC XML export enhancements outlined in the Import/Export section, we've also addressed some outstanding bugs in the OAI Repository module.

General bug fixes and enhancements

  • #12387 - OAI-PMH GetRecord verb should filter Draft descriptions consistent with other verb responses
  • #13163 - OAI identify command base URL does not respect HTTPS; appends index.php unnecessarily

Contributed via community pull request from Rohan Ferris

  • #13025 - Convert UTC time to localtime in OAI requests

Note: no documentation updates were required for these fixes and enhancements.

Performance, Stability, and Internals

We've implemented a number of internal enhancements to improve AtoM's overall performance and stability - these changes are predominantly focused on deletions, upgrades, indexing, and CSV imports. One of the biggest changes was upgrading AtoM’s MySQL version to 8.0, and using the Percona Monitoring & Management (PMM) tool to identify key areas for query optimization. Most significantly, in several areas we have replaced the nested set queries (used to manage hierarchical relations in a flat relational database) with MySQL8’s implementation of Common Table Expressions (CTE; sometimes referred to as WITH queries). Overall this has led to significant performance gains - details of which have been captured on issue ticket #13224. We've also optimized the search indexing and the CSV import task - and some new options in some of the command line task (captured in other sections of this roadmap) also helped us optimize some of our processes that use these tasks.

  • #10306 - Improve foreign key declarations in database schema
  • #13220 - Upgrade to MySQL 8
  • #13221 - Avoid schema differences between a default install and an upgraded database
  • #13224 - Improve hierarchy management queries
  • #13237 - Reconsider nested set implementation in some models
  • #13239 - Improve deletion of nested set hierarchies (especially terms)
  • #13350 - Reduce likelihood of issues when upgrading from 1.x to 2.6.x
  • #13352 - Reduce resource save/indexing count on description CSV import
  • #13354 - Avoid nested set update on descriptions CSV import (reduce DB deadlocks)
  • #13355 - Reduce memory usage on descriptions CSV import
  • #13356 - Remove lft field from description ES index
  • #13261 - Improve Elasticsearch indexing process
  • #13362 - Move analyze table calls to the end of the upgrade process

Note: no documentation updates were required for these fixes and enhancements, other than the updated installation documentation.

Physical storage

In addition to the new command-line physical storage CSV import (described in the Import/Export section), we've also added a brand new CSV report to the physical storage module. This report focuses on container relations with accessions and descriptions, and can be customized on export.

General bug fixes and enhancements

  • #13201 - Browse physical storage page does not show values that have not been translated

Sponsored by the Government of the Northwest Territories

  • #13269 - Add new CSV report for physical storage location reporting

Related documentation


We've added some minor enhancements and bug fixes to the search and browse options in AtoM that should improve the overall experience.

General bug fixes and enhancements

  • #5173 - Improve default alphabetic sort to better reflect natural sort expectations
  • #13186 - Add user-configurable setting for treeview paging limit

Sponsored by the Government of the Northwest Territories

  • #12471 - Hovering over a truncated facet filter doesn't show the full name in simple label tooltip

Sponsored by the Bernard Becker Medical Library Archives at Washington University in St. Louis

  • #12797 - Make "Browse digital objects" link on description view page context sensitive

Sponsored by the Provincial Archives of Sasksatchewan

  • #13175 - Improve information object search indexing speed

Sponsored by the Mills Archive

  • #13230 - Date range sorting is broken following Elasticsearch upgrade in 2.5.x

Collaboratively prepared by community user Monica Wood (University of Tasmania) and Artefactual Systems

  • #13299 - If unique records count matches count of only other language, language facet should not display

Related documentation


The Visible elements module got a few new DACS-related options, and the full-width treeview has some additional settings to increase the paging limit (up to 10,000 records per load), and to make the tree collapsible on first load (much like the advanced search panel). We've also added a simple notification that appears on Save in the settings page, to better confirm to end users that the changes have been applied.

General bug fixes and enhancements

  • #13105 - Add warning message to security settings page

Sponsored by the WUSTL Bernard Becker Medical Library Archives

  • #12798 - Add Visible elements module for DACS area headings
  • #13049 - Add DACS Physical access field to Visible elements
  • #13135 - Add new setting to make full-width treeview collapsible

Sponsored by Strathclyde University Archives

  • #13320 - Increase treeview pager limit setting from 1,000 to a max value of 10,000

Related documentation

Bug fixes and other tickets

  • #12136 - Upgrade password hash function
  • #13028 - Refactor settings to use a common parent class
  • #13173 - If identifiers contain syntax that conforms to markdown syntax, the identifier is rendered in markdown
  • #13174 - Jobs can hang if console output is greater than 64KiB
  • #13251 - CSV descrition import's updating logic doesn't work as expected with digital objects
  • #13300 - Some available CSV columns are missing from the example templates
  • #13341 - Elasticsearch is really slow in the Docker environment
  • #13344 - Update AtoM's translation build scripts to work with Weblate
  • #13371 - Can't delete some Browse menu nodes (subjects and digital objects)
  • #13374 - Cannot change a user account to inactive


For a full list of issues related to the 2.6 release, see the following links to our issue tracker: