Change Log

[0.5.4] – 2016-03-01

Hotfix for disk performances, persistent disk cache for file contents.

Added

  • Implement statfs system call.
  • Add a disk block cache for immutable file contents.

Changed

  • Rename ‑‑allow-sign to ‑‑allow-create-passport in infinit-passport.
  • Tidy up infinit-block CLI interface to look like other binaries.

Fixed

  • Drop older Paxos version to avoid linear growth of blocks with revisions, fixing disk hammering issues with folders of thousands of files.
  • Use the GCS credentials instead of Google drive credentials to authenticate to GCS.

[0.5.3] – YANKED

Skipped release because of unrecognized version in RPCs.

[0.5.2] – 2016-02-25

Hotfix for AWS s3 storage in us-east-1 region.

Added

  • Add infinit-block, a debug utility to pretty print a block from the disk.

Fixed

  • Fix AWS S3 storage on us-east-1 region.
  • Fix Google cloud storage and Google drive credentials mixup.
  • Fixed some logs and error messages where only the first character of some strings was displayed.

[0.5.1] – YANKED

Skipped release because of unrecognized version in RPCs.

[0.5.0] – 2016-02-23

Rebalancing protocol and passport delegation.

Added

  • Add dynamic block rebalancing.
  • Enable to disable writing to the DHT or acting as storage when signing a passport for a node.
  • Enable to delegate further passport signature when signing a passport for a node, which will act as an “authority”.
  • Support adding or removing multiple users from a group at once with infinit-acl.
  • Show world permissions as ‘other’ POSIX permissions when stating a file.
  • Resolve hostnames passed to ‑‑peer options.
  • Add ‑‑port-file to output endpoints listened on to a file.
  • Always show network compatibilty version in the logs.

Changed

  • Ask confirmation in infinit-user --delete.
  • Replace ‑‑account with ‑‑name in infinit-credential to be consistent with other command line tools.
  • Greatly compact the log output.

Fixed

  • Fix a memory leak in remote procedure calls.
  • Fix a memory leak in Paxos implementation.
  • Fix a memory leak in case of directory conflict.
  • Fixed network upgrade process in case blocks are stored in asynchronous write cache.

[0.4.0] – 2016-01-21

Groups support.

Added

  • Support group ACL.
  • Add compatibility version to network configuration files.
  • Support reading when a minority of the quorum nodes are down.
  • Add infinit-network --update to change existing network attribute, such as upgrading the compatibility version.

Changed

  • Overwrite network on the hub with infinit-network --push, to be able to push local updates.
  • Overwrite local network with infinit-network --fetch, to be able to retreive updates.

Fixed

  • Set permissions on journal directories to 700 as it can contain private keys.
  • Fix S3 storage in case of HTTP redirections.
  • Fix SEGV on shutdown in some rare cases.
  • Fix SEGV with ipv6 interfaces.

[0.3.7] – 2016-01-11

Small improvements and fixes.

Added

  • Add ‑‑no-countdown option to infinit-device --transmit.
  • Accept ‑‑fallback-xattrs in infinit-acl --list.

Changed

  • Change default kelips group count to 1, to avoid deadlocked networks with too few computer if unspecified.
  • Terminate gracefully on SIGTERM and SIGQUIT, just like SIGINT previously.

Fixed

  • Don’t err in infinit-user --fetch if the avatar is missing.

[0.3.6] – 2016-01-11 [YANKED]

Skipped release because of a botched tag.

[0.3.5] – 2016-01-06

Hotfix release to fix mounting in async mode, plus some stability and performance improvement and S3 storage support.

Added

  • Support S3 as storage backend.
  • Enable to force compatibility version with ‑‑force-version option.

Changed

  • Set permissions on user configuration files to 700 as some contain private keys.

Fixed

  • Fix critical bug preventing running networks using ‑‑async with error message “fatal error: missing serialization context for infinit::model::Model*”.
  • Fix reported file size that could sometime be random.
  • Fix extended attribute compatibility mode writing files above the filesystem root.
  • Fix potential segfault on OSX with finder sidebar.
  • Fix fetching network with several storages.
  • Retry forever if storage is full in async mode instead of asserting.

[0.3.4] – 2015-12-17

Stability and performance release.

Added

  • Cache directories preventively to speed up browsing speed.
  • Let extended attribute user.infinit.sync wait for file synchronization.
  • Add fetch and push options to infinit-drive --invite, clarify help.
  • Enable to fetch several users at once with infinit-user --fetch.
  • Enable to show volume in the finder sidebar on OSX with infinit-volume --finder-sidebar.

Changed

  • Only allow lowercase alpha-numeric characters in objects names (i.e. users, networks, volumes …).
  • Rename infinit-network --join to infinit-network --link.
  • Accept –as option on all commands.
  • Set kelips group count to 1 by default.
  • Translate user rwx permissions from ACLs.
  • Prefix user public key hash with a # in permissions listing if name is unknown.
  • Show storage capacity in infinit-storage --list.
  • Show invitation status in infinit-drive --list.
  • Improve many infinit-drive output messages.
  • Bump files mtime on each write.
  • Optimize on-disk asynchronous journal loading time.

Fixed

  • Properly handle execution permissions.
  • Drop removed files from cache, fixing many IO errors when trying to perform operations on a deleted file.
  • Fix crash with broken locale setting.
  • Fix wrong file size reported in some cases.
  • Fix truncate on cached files.

[0.3.3] – 2015-12-03

Bugfix release to correct conflict errors, plus minor improvements.

Changed

  • Always try using a public key in inifinit-acl if the user does not exist in the network. Remove –try-with-public-key as a consequence.
  • Improve directory creation performances.
  • Remove –as option from infinit-user –fetch.
  • Improve network error reporting in the CLI.
  • Add a timeout when pairing devices.
  • Show user public key hash in permissions listing if name is unknown.

Fixed

  • Add missing automatic conflicts resolver.
  • Let a user create passport for a network without joining it.
  • Don’t require a valid current user to list a network passports.

[0.3.2] – 2015-12-01

Release adjustments.

Added

  • Enable to point the data directory directly with the INFINIT_DATA_HOME environment variable.
  • Generate Debian package.

Fixed

  • Change demo home path to be usable with INFINIT_DATA_HOME.
  • Fix unmount when pushing stats of a storage with no maximum capacity.

[0.3.1] – 2015-11-30

Release adjustments.

Added

  • Magic number on stored binary blocks to enable transparent future format changes, e.g. JSON.

Changed

  • Store configuration and data files according to XDG convention.
  • Improve infinit-user –signup help.
  • Prevent infinit-drive from joining own network.
  • Hide unstable features for now: Dropbox and Google Drive storage, multiple storage nodes.

Fixed

  • Ship compiler-specific dynamic libraries for portability.
  • Fix unmounting on OSX.

[0.3.0] – 2015-11-29

First public release candidate.