Releases: manyfold3d/manyfold
v0.103.2
Another quick fix for a problem when merging models.
What's Changed
🐛 Bug Fixes 🐛
🌍 Sustainability & Performance 🌍
🛠️ Other Improvements 🛠️
Full Changelog: v0.103.1...v0.103.2
v0.103.1
Quick bugfix for an error when deleting models, plus some database query optimisations.
What's Changed
✨ New Features ✨
🐛 Bug Fixes 🐛
🌍 Sustainability & Performance 🌍
Full Changelog: v0.103.0...v0.103.1
v0.103.0
This release lets you associate collections with creators, letting you group collections together by creator. We've also got the first release of our new model metadata format; this is a file that's included on disk with your files, and in downloads, that includes all the metadata associated with a model. This is an open standard, and we hope that other 3d hosting sites will start using it as well, thus making transferring models between services much easier.
There's also the usual collection of bugfixes and some efficiency improvements, and a new password strength meter which shows whether or not a password is strong enough as you type it in.
What's Changed
✨ New Features ✨
- Add Creator field to Collections and allow Collections to be filtered by Creator by @j4c3 in #3640
- Add password strength meter, and link to strength configuration on first use by @Floppy in #3658
- Store metadata in file on disk by @Floppy in #3634
- include metadata datapackage file in downloads by @Floppy in #3665
🔒 Security 🔒
- Check access controls using rubocop-pundit by @Floppy in #3667
- Add rubocop-pundit safety checks for use of #all by @Floppy in #3677
🐛 Bug Fixes 🐛
- Enforce access policy on collection and creator lists by @Floppy in #3654
- Fix links to creator collection list by @Floppy in #3655
- Fix relative URL root missing from OIDC connect callback path by @Floppy in #3657
- Fix first use username setting by @Floppy in #3670
- Fix bug in problem finder method by @Floppy in #3669
- Improve datapackage file creation by @Floppy in #3674
- Make sure datapackage.json isn't listed in resources by @Floppy in #3682
🌍 Sustainability & Performance 🌍
- Make a bunch of background jobs unique, so we don't run the same thing repeatedly by @Floppy in #3676
🛠️ Other Improvements 🛠️
- Improve docs for volume line in docker example file by @Floppy in #3671
- Add upgrade job to backfill datapackages in the background by @Floppy in #3675
- Change job iteration method from sidekiq to activejob by @Floppy in #3678
- Quieten down SASS deprecation warnings. by @Floppy in #3707
- Suppress warnings for things that are known safe by @Floppy in #3708
- Fix OpenSSL defaults redefinition warning by @Floppy in #3709
New Contributors
Full Changelog: v0.102.0...v0.103.0
v0.102.0
Mostly bugfixes and small improvements in this release, but the big news is we're dropping 32-bit ARM builds, because as far as we could tell, nobody was using it anyway.
ARM is still supported and always will be (same as x86), but only on 64-bit machines now. If you are using an old 32-bit ARM machine (like a Raspberry Pi 2B v1.1 or Zero 1), you will still be able to run everything up to v0.101.0, but sadly you won't get any new releases.
What's Changed
💥 Breaking Changes 💥
✨ New Features ✨
🐛 Bug Fixes 🐛
- Force binding to IPv6 address by @Floppy in #3608
- Handle listing models for tags that include commas by @Floppy in #3614
- Fix tags with ampersands in bulk edit dropdown remove list by @Floppy in #3615
- Fix search error for contributors and members by @Floppy in #3629
- Fix clashing background colour on usage report data by @Floppy in #3635
🛠️ Other Improvements 🛠️
- Shrine now manages file size in db by @matthewbadeau in #3561
- Add feature to create path if it does not exist on disk by @matthewbadeau in #3548
- Use the Fediverse asterism symbol instead of globe by @Floppy in #3609
- Translation updates across all languages by @Floppy in #3611
- Add a Dev Container by @TheMBeat in #3628
- Translation updates (DE, PL, ES) by @Floppy in #3632
- Update matrix space to use matrix.org.address by @Floppy in #3653
New Contributors
Full Changelog: v0.101.0...v0.102.0
v0.101.0
Now that Manyfold instances can connect to each other, it might be pretty handy to be able to tell which one you're looking at. So, we've now got themes! You can easily select one of 26 different looks for your instance, thanks to the great Bootswatch theme collection. Just go to the new "appearance" settings page to choose your favourite!
We've also got the usual bugfixes, but there's one really big one; we can now render 3MF files that use the "production extension" properly! So, if you've saved your slicer projects as 3MF, downloaded something with print information already added, or had another sort of 3MF file that wasn't rendering, hopefully you'll find it's now working properly!
What's Changed
✨ New Features ✨
- Add the ability to select from bootwatch themes by @Floppy in #3583
- Add theme chooser in site settings area by @Floppy in #3586
🐛 Bug Fixes 🐛
- Fix various 3MF display issues, including production extension by @Floppy in #3584
- Fix error showing download list if there are files without extensions by @Floppy in #3585
- Force puma to bind to IPv6 addresses by @Floppy in #3587
- Fix menu clipping when previews are missing by @Floppy in #3588
- Check that s3 endpoints are full URLs by @Floppy in #3589
Full Changelog: v0.100.1...v0.101.0
v0.100.1
v0.100.0
Two HUGE milestones this release; proper federation between Manyfold instances, AND it's our 100th feature release! 🎂 🎉
First, let's talk about federation. For a while we've had limited federation over ActivityPub; you could follow Manyfold creators from Fediverse platforms like Mastodon and see updates from them, like when they create a new model. But now, Manyfold instances (that enable federation) can connect together to natively share information. If you follow a Creator, Model, or Collection on another Manyfold instance, that thing will now appear in your instance's listings, and you'll see updates in the main page activity feed! For instance, here's a Creator that's on a different instance; you can see it has all the same data, and shows that it's from a different server.

This really is the big step towards our goal of building a decentralised alternative to the hosting sites like Thingiverse; you can now host your own content, and link up easily to content that others are also self hosting. It's all very exciting! There's more to come, plenty more features add on, but this is a massive step forward.
Manyfold has been on quite the journey to this, the 100th feature release; it started just over 4 years ago, in January 2021, as a side project to help @Floppy organise his model folder. Since then it grew organically for a few years, but then in January 2024 got a huge boost when we got funding from NLNet and the EU NGI Zero project, enabling full-time work on it. That's taken it from a side project to a proper tool, with thousands of weekly downloads, over 50 known instances running (and that's just the ones reporting in!), translation into five languages, and an informal network of contributors who write code, translate text, provide peer support, and generally keep us going!
We couldn't be more thankful to everyone who's helped us get this far; we literally couldn't have done it without all of you. From here, we're just going to keep building, powered by a second grant just started from NLNet / NGI Zero, with a v1.0 release "soon", and with lots of great new features in the pipeline!
Thank you all ❤️
What's Changed
✨ New Features ✨
- Deliver creator updates to its followers by @Floppy in #3491
- Show requested but pending follows on button by @Floppy in #3501
- ActivityPub federation for Models and Collections by @Floppy in #3507
- Include model license in ActivityPub representation by @Floppy in #3508
- Follow remote models and collections by @Floppy in #3511
- Show user fedi address on settings page by @Floppy in #3516
- Show remote models and collections in lists by @Floppy in #3538
- Added a simple "following" page by @Floppy in #3542
- Automatically update and create remote federated objects by @Floppy in #3559
- Show server for remote objects in activity feed by @Floppy in #3564
🐛 Bug Fixes 🐛
- Only auto accept follows for local objects by @Floppy in #3500
- Fix collection page bug by @Floppy in #3514
- Various Collection page fixes by @Floppy in #3518
- Don't check remote models for problems by @Floppy in #3565
- Overwrite links in remote object deserialization by @Floppy in #3566
- Only use S3 integrity protection when required by @Floppy in #3572
🛠️ Other Improvements 🛠️
- Refactor ActivityPub rendering code into presenters by @Floppy in #3497
- Rename ActivityPub presenters to serializers by @Floppy in #3498
- Move user serialization into its own class by @Floppy in #3499
- Add serializers for Model and Collection, to be used in future by @Floppy in #3502
- Refactor AP->Creator conversion into a deserializer object by @Floppy in #3503
- Add tests for de/serializers by @Floppy in #3509
- Test and parse model tags in activitypub by @Floppy in #3510
- Change collections to federate as a Group actor by @Floppy in #3515
- Add flag for notes generated for compatibility purposes by @Floppy in #3517
- Roll back AWS SDK by @Floppy in #3524
- Don't show permission options for remote objects by @Floppy in #3541
- Link names to profiles on actor table by @Floppy in #3547
- Create remote objects only when follow is accepted by @Floppy in #3543
- Set a valid user-agent string by @Floppy in #3557
- Add note that remote previews aren't available yet by @Floppy in #3567
Full Changelog: v0.99.1...v0.100.0
v0.99.1
v0.99.0
Two main features in this release: first, you can now customise the ignored files and folders list for disk scanning, which should help keep things tidy; and second, we've got more federation support for creator profiles.
Now, if you follow a creator on another Manyfold instance, it will appear in your local creator list, and you can assign models to it, as well as easily visiting the original profile. You can also search for Fediverse addresses straight from the main search box - try following @[email protected]
to see it in action!
There's more federation work coming soon, so stay tuned!
What's Changed
✨ New Features ✨
- Include followed remote creators in list by @Floppy in #3478
- Configure files / directories that should be ignored during scan by @matthewbadeau in #3434
- Entering fediverse username in main search redirects to follow page by @Floppy in #3490
🐛 Bug Fixes 🐛
- Fix problems with searching for remote fediverse users by @Floppy in #3488
- Use simpler regexp output for file settings form by @Floppy in #3489
🛠️ Other Improvements 🛠️
- Store activitypub extension data for remote actors by @Floppy in #3472
- Include creator caption and notes in activitystream summary by @Floppy in #3473
- Add creator links as attachments in activitystreams by @Floppy in #3477
- Order libraries by name, by default by @Floppy in #3481
- Reorganise creator display a little for remote creators by @Floppy in #3482
- Rename extension namespace to f3di by @Floppy in #3483
Full Changelog: v0.98.0...v0.99.0
v0.98.0
Various bugfixes and background improvements, and an option to disable the "running as root" warning for when you KNOW it's really safe to do so, like on a PaaS.
What's Changed
✨ New Features ✨
🐛 Bug Fixes 🐛
- Add option for whether or not to use path-style URLs for non-AWS S3 services by @Floppy in #3458
- Fix s3 path-style parameter filtering by @Floppy in #3459
- Fix case-sensitivity in public IDs by @Floppy in #3461
- Fix unfollowing remote actors by @Floppy in #3470
🛠️ Other Improvements 🛠️
- add concrete type field to creator activitypub objects by @Floppy in #3460
- Configure SSL and hostname in dev mode for use with ngrok tunnels by @Floppy in #3467
- Add concrete type to User activitystreams representation by @Floppy in #3468
- Add trust & safety category to release notes by @Floppy in #3469
Full Changelog: v0.97.1...v0.98.0