Release v0.109.0

01 May 2025

Some new features for admins in this release, and some metadata parse and import improvements!

There is now a bin/manyfold command that can do various admin tasks, like cleaning up incorrect data; the Advanced Tasks page on the website explains how to use it. You can now also set an upload quota for accounts, handy if you’re running a public instance. You can set a site-wide default, then override it for each account individually.

Metdata parsing has been improved and made more reliable; “rescan all models” in the menu and “rescan all files” in a single model both now do the same thing, and will re-parse metadata from path templates and other sources. A new source for metadata is README files; they’re now read into the model description automatically, but if it’s a Thingiverse-formatted README, we also automatically try to set creator, title, and license.

What’s Changed

✨ New Features ✨

  • Add bin/manyfold management tool for advanced tasks by @Floppy in #4039
  • Add CLI command to rerun metadata parsing by @Floppy in #4042
  • User quota feature by @matthewbadeau in #3961
  • Import notes from “README” files by @Floppy in #4058
  • Change “rescan all models” scan so that it re-parses metadata as well as checking problems by @Floppy in #4060
  • Parse metadata out of Thingiverse README files by @Floppy in #4066

    🔒 Security 🔒

  • Add configuration for Brakeman security checks by @Floppy in #4048

    🐛 Bug Fixes 🐛

  • Fixes multiple successive downloads race condition by @matthewbadeau in #4029
  • Fix dev environment loop by @matthewbadeau in #4053
  • Reject self links in datapackage parsing by @Floppy in #4067
  • Fix ASCII conversion error when parsing READMEs by @Floppy in #4068
  • Fix some unassigned preview files by @Floppy in #4069
  • Ensure links are unique for each linkable object, plus a “manyfold links deduplicate” admin task by @Floppy in #4075
  • Don’t write datapackages if model didn’t change by @Floppy in #4076
  • Fix link duplicate detection on PostgreSQL by @Floppy in #4078
  • Reject empty urls in links by @Floppy in #4085
  • Don’t update model file records unnecessarily by @Floppy in #4087

    🛠️ Other Improvements 🛠️

  • Add logo.png to repo root by @matthewbadeau in #4038
  • Add allowed option values for “problems purge” command by @Floppy in #4041
  • Add user and email commands to Manyfold CLI by @matthewbadeau in #4047
  • Removes deprecated devise sign_in bypass method by @matthewbadeau in #4059
  • Better navbar behaviour on medium-width screens by @Floppy in #4061
  • Make sign in button more obvious by @Floppy in #4062
  • add FEDERATION.md by @Floppy in #4063
  • Restyle sign in process to make it cleaner and more obvious by @Floppy in #4064
  • Update english translations to consistently refer to “accounts” instead of “users” by @Floppy in #4086

Full Changelog: v0.108.1…v0.109.0

See the original release on GitHub: v0.109.0