Mutagen - v0.3.0

Security

NOTE: Versions of Mutagen prior to v0.8.0-beta1 are affected by a known security issue and not recommended for use.

WARNING: This is a beta release. It will almost certainly have unknown issues. It should not be used on production or mission-critical systems. Use on any system is at your own risk (please see the license).

NOTE: This is a breaking release and will not function with sessions created by Mutagen v0.1.x or v0.2.x. Please delete ~/.mutagen and recreate sessions after upgrading. This breakage is in the name of future extensibility and saner behavior. It should hopefully be the last set of breaking changes.

This is an important release that brings significant improvements to performance and user experience. It also squashes a few irritating bugs.

  • Ignore behavior has been modified to be more consistent with Git. This means that ignores can now be suffixed with a / to only match directories, prefixed with a / to enforce matching relative to the synchronization root, and any ignore specifications without a / prefix or / in the middle will be tested against the leaf name being encountered.
  • Ignore modes for VCS directories have been added.
  • Symlink support has been completely refactored. There are now three symlink propagation modes: Ignore, Portable (the default), and POSIX Raw. Ignore mode is supported on all platforms and simply ignores all symlinks. Portable mode is supported on all platforms and will only propagate portable symlink paths that don't escape the synchronization root. POSIX Raw mode is only supported on POSIX-to-POSIX synchronization sessions and transmits raw symlink targets, regardless of whether or not they point inside the synchronization root or contain charaters unsupported on Windows (similar to the previous behavior).
  • The list, monitor, pause, resume, and terminate commands now support fuzzy sesssion matching. Sessions can still be specified by ID, but they can also be referenced by a fragment of the path or hostname in either URL, so long as it is unambiguous (and over 5 characters). This means you can do things like mutagen pause my_project.
  • An optional configuration file (~/.mutagen.toml) has been added, with support for configuring the default symlink mode, ignore specifications, and filesystem watching behavior.
  • Experimental automatic daemon start-up has been added for macOS and Windows.
  • Command line parsing has switched to Cobra, allowing for better help messagess, simpler code, and more extensibility.
  • Several flags and commands have been restructured to be more consistent.
  • A visual delimiter has been added to session listing.
  • Synchronization now creates synchronization root parent paths as necessary.
  • The daemon now uses gRPC for providing functionality to commands. This will allow third-party application integration in the future.
  • The agent install has been decomposed to support shells without && command chaining (#26). This also provided an opportunity to make the installation a bit more efficient by avoiding unnecessary chmod invocations.
  • Automatic ControlMaster behavior has been removed. This caused a number of issues (e.g. #25) that had no workaround. Allowing users to control this with their SSH configuration is a better default.
  • Atomic file renames have been fixed on Windows (#28).
  • Ownership is now preserved on POSIX systems.
  • SSH locale variables have been added to better enforce encoding compatibility.
  • Various issues associated with Windows SSH servers have been fixed.
  • Mutagen now uses internal FLATE compression for agent streams (as opposed to relying on that provided by SSH).
  • Small fixes have been added for case conflict detection.
  • Test coverage has been significantly improved.
  • The build has been updated to Go 1.10.3.
  • Many other minor bug fixes and performance improvements are also present.

Thank you to everyone who helped with reporting and debugging these issues! If you encounter any issues with the new release, please file an issue. If Mutagen isn't working intuitively and seamlessly for you, then there's a bug.


Security

Security wording was detected, but no CVEs were found.

Details

date
June 27, 2018, 11:13 a.m.
name
v0.3.0
type
Minor
👇
Register or login to:
  • 🔍View and search all Mutagen releases.
  • 🛠️Create and share lists to track your tools.
  • 🚨Setup notifications for major, security, feature or patch updates.
  • 🚀Much more coming soon!
Continue with GitHub
Continue with Google
or