We’ve recently released libratom 0.5.4, which includes testing to ensure compatibility with spaCy 3.1, along with various dependency updates. With this release, the libratom CI pipeline has now been rebuilt using GitHub Actions. Tested environments include Python 3.7, 3.8, and 3.9.
If you follow us on Twitter (@RATOM_Project) or GitHub (https://github.com/libratom), you may have seen a couple of months months back that we released libratom 0.5.0. This made spaCy 3.0 the default NLP platform for the tool, providing access to a range of new models for named entity recognition. This release also added official tested support for Python 3.9, and dropped official testing for Python 3.6 (although functionality should remain unaffected).
Recently, we’ve released libratom 0.5.2, a maintenance bump that updates some out-of-date dependencies (including those with security advisories) in the official release.
Our current testing indicates that at this stage the core library and support CLI tools are stable on all supported platforms, though we may explore additions to the schema as additional community requests come in. You can download the latest release on PyPI or read detailed instructions on installation and usage on GitHub.
As the current iteration of the RATOM project is coming to a close, our team wanted to provide an opportunity to foster community engagement with the software and its surrounding work. During October 19-21, 2020, we hosted a hackathon to encourage community members to explore the software across three lightly scheduled and loosely structured days. The intent was to dedicate time and digital space for participants to interact with RATOM amongst fellow archival workers and with the guidance of our team.
We provided recommended topics for those interested in the project, including CLI and scripting, the RATOM web tool, and workflow or prototype development. Work and discussions largely took place on designated Slack channels and during a check-in Zoom session. RATOM’s Technical Lead, Kam Woods, led the hackathon’s opening kick-off meeting and provided reference materials about the software, installations guides, and sample data sets for participants to use. RATOM Software Engineer Antoine de Torcy, Co-PI Camille Tyndall Watson, and Investigator Jamie Patrick-Burns worked with hackathon participants, fielding a range of software usability questions and providing firsthand technical and archival expertise.
The CLI and scripting channel saw consistent activity across all three days. Most discussions revolved around RATOM-specific capabilities, but general threads also featured remarks about, for example, the pros and cons of tools such as SQLite and DBeaver. Participants inquired into whether or not the email system type (Gmail, Microsoft, etc.) would be included in metadata outputs. Other participants identified the (in)accuracies of extracted entities through spaCy amongst various factors, such as third-party tagging, incomplete sentences, acronyms, etc. Individuals also introduced notions of speed differentials between older and newer email formats. Lengthier threads also parsed through issues of null headers resulting from notes and calendar data being extracted from the bodies of emails. Finally, workflow modifications were also suggested to the RATOM team. One participant specifically suggested a workflow for formatted JSON files to export EML files for other tasks like extracting, rendering, and indexing.
Beyond CLI and scripting, alternatives to access and delivery were considered in the context of fulfilling records requests. This included case-specific examples of current delivery means through FTP, hard drives, and public interfaces. Conversations also touched on levels of digital literacy and education as broader, yet necessary components of these workflows that could be examined and possibly integrated into future work. PDFs were brought up alongside Adobe’s redaction capabilities and the possibility of archiving to PDF, although the latter would require further development with the RATOM tool specifically. Closing remarks underscored the importance of understanding audience needs and how processes may need to function on a case-by-case basis depending on a number of researcher-related variables.
Collaborative troubleshooting with minor installation hurdles, Jupyter notebooks, mybinder, and XCode version compatibility occurred throughout the hackathon, as did conversations about a future version of the web tool that could be deployed to a local container. Although we did not intend to use the hackathon for beta testing, the RATOM team will be able to implement a number of changes based on participant feedback. General comments from participants indicated that existing documentation was, for the most part, easy to understand and libratom was simple to download. But we are working towards a number of documentation modifications after seeing the process of participants go through it individually. We also had build issues related to compatibility with XCode 12 on macOS, which have been resolved in a recent update to the codebase and are now tested automatically in our continuous integration workflow.
The RATOM team would like to note it was especially rewarding to see so many participants representing state or government archives during the hackathon. Although some identified themselves as “non-technical” people, it was exciting to see communities that are not typically part of these conversations engaging with the software and with broader discussions as they took place on Slack and Zoom.
Registration for the 2020 RATOM Hackathon is now open!
Dates: October 19-21, 2020
This is a chance to get involved with other members of community working on email preservation, dig in to state-of-the-art open source tools, learn some new skills, or simply to explore a new problems space and get feedback in a friendly and inclusive environment.
The hackathon is a free virtual event, and is open to everyone. We’ve provided three suggested areas of interest in the registration to help bring together those interested in similar features, workflows, or automation tasks.