Recent Releases

2.19.002 Feb 2017 19:25 minor feature: 9cc9bb9 misc document updates. 16e7c72 update documentation, focus on explaining double caching direct_io. A60d815 add ifndefs to all headers. E93c946 limit need to explicitly call.c_str(). 7b4e1ea remove clone command. 726b88e restructure error calculation. D67d5de check for system.posix_acl_default before setting umask. 1aa76a5 use different read and write functions when using direct_io.
2.18.017 Dec 2016 18:45 minor feature: 67b48fc compute inode in readdir. B1459c6 only remove src/version.hpp if git repo and git available. C8fa51c support setting of inodes (using use_ino option). 822204f replace std::set with klib's khash to increase readdir performance. 5f7a168 note that mergerfs should be run as root. 35075bb return clonepath errors.
2.17.017 Nov 2016 15:05 minor feature: 05d81db update manpage. 3c5351a ignore filesystems which return zeros for statfs. 3d2283f clang cpp doesn't like grep exiting early. 192bb9c remove usage of -D from install. 157dae0 define O_LARGEFILE and O_NOATIME if needed. 00c814d consolidate and simplify utime. 6d6fb45 check if fdatasync is available and return ENOSYS if not. 897f20b minor correction of spelling mistake. D0b6cd1 further abstraction of system calls. 1dc7bff wrap most posix filesystem functions. 8f594e1 add flock. Cd90193 add some more explination to the FAQ. Cd71af8 add mergerfs.ctl and scorch to tooling section. 3fb7f89 add EDQUOT to errors which trigger moveonenospc.
2.16.120 Sep 2016 09:45 minor feature: Dfa8269 update manpage. D9a7906 use SYS_setgroup32 syscall if available. B1f2e94 add information about page cache kernel panic.
2.16.015 Sep 2016 10:45 minor feature: A8cd9b7 recreate manpage. 7e423cd small tweaks to build on Debian kFreeBSD. 0395e7c futimes version of utimes wrapper. 9392317 #define typo. 1513c92 abstract posix_fadvise. 158dda9 minor typo. 1a698e5 rename include cpp files to have icpp extension. 2ee6b4f include sys/types.h to pick up ssize_t. 709dda5 support systems without ENODATA.
2.15.026 Aug 2016 19:25 minor feature: 49474f0 make futimes crossplatform. 34d38cb split sendfile wrapper into separate files. 192a9d5 make fs_attr compile on unsupported platforms. 40574bd use dynamic buffer for realpath. 064fd55 bump FUSE_USE_VERSION to 29. 45f757d add osx version of fallocate. 0fceb8e add epall and eprand policies. 7634eb1 replace nonstandard eaccess with POSIX.1-2008 faccessat. 47f184a typo and clarify feature.
2.14.013 Jul 2016 00:45 minor feature: A93ab6c add existing path first found policy. 43cbd9c move size calculations to use uint64_t. 9f36ead add license title. 30cdfa6 reiterate path preserving policies.
2.13.120 May 2016 12:25 minor feature: 3a50344 update man page. Be6341e create eplus (existing path, least used space) policy. F7d3e8b create lus (least used space) policy. 74ed1b0 faq update on direct writes. D0414d7 clean up information regarding fstab. Ef8d8f3 add fsname to readme. Cd15b7a further tweak language regarding policies wrt create category. 8643d35 make policy descriptions more explicit. 1cfe1c3 tweak doc language. Dbb13ef add details of mmap cache. 90ca14a add dual mount suggestion to mmap problem. Cfaf812 add details regarding rtorrent, mmap, and direct_io. 0c6c69e update readme to include mergerfs.dedup. 309cfee change tar.gz build url.
2.13.008 May 2016 22:25 minor feature: 3a50344 update man page. Be6341e create eplus (existing path, least used space) policy. F7d3e8b create lus (least used space) policy. 74ed1b0 faq update on direct writes. D0414d7 clean up information regarding fstab. Ef8d8f3 add fsname to readme. Cd15b7a further tweak language regarding policies wrt create category. 8643d35 make policy descriptions more explicit. 1cfe1c3 tweak doc language. Dbb13ef add details of mmap cache. 90ca14a add dual mount suggestion to mmap problem. Cfaf812 add details regarding rtorrent, mmap, and direct_io. 0c6c69e update readme to include mergerfs.dedup. 309cfee change tar.gz build url.
2.12.311 Mar 2016 07:05 minor feature: 382ca87 tweak man page creation. 070ed08 properly check errors of xattr.
2.12.207 Mar 2016 13:25 minor feature: 6492fda update precompiled man page. 2061211 rename failing on non-path preserving policies. 4928944 clarify that rename uses the create policy to make decisions.
2.12.003 Mar 2016 11:25 minor feature: F4a4cc5 building of platform specific deb packages. Ef4c583 printing of versions with no changes. 4ecf3c5 clearly separate usage of statvfs from stat for file existance. 779143f add minfreespace checks to policy ff's create and remove fwfs. 4d7148c update readme with minfreespace and readonly details. 14886a2 add readonly and minfreespace filters to all policy for creates. 9819cf6 clonepath being called on wrong source. C56b488 creation of changelog. E593927 normalize error handling in rename policy. 7c85cd9 ff policy tweaks. 5cf3bb7 override standard libfuse version flag. 25a0399 minor tweaks to filesystem utility functions. 792c9b9 use stat/2 rather than statvfs/2 to find file drive.
2.11.023 Feb 2016 14:25 minor feature: A698a8a update / tweak readme. D4ec341 remove unnecessary policies. 5813d1e ignore drives mounted as readonly from create policies. A4e60d7 add eplfs info to readme.
2.10.017 Feb 2016 14:25 minor feature: F779f82 statvfs drive dedup.
2.9.126 Jan 2016 23:45 minor feature: F779f82 statvfs drive dedup.
2.9.022 Jan 2016 09:45 minor feature: 3e20adb remove clone test tool. E285bde update the precompiled man page. 853769b general tweaks to readme. Ea32575 make symlink function like mknod/mkdir. 1d1694b indexing of mknod targets. 93397ea remove incorrect warning about race condition with mkdir/mknod. 25265f4 dedup based on full statvfs struct rather than fsid. De776b7 remove tooling from repo. 62f8fc5 have link act similar to rename. 242af77 move from MIT to ISC license. 4c77ac4 all action functions return success should at least one succeed. B811522 update man page. 8a5c524 replace srcpoints with srcmounts. A3e6a03 rework rename algo to minimize likelihood of EXDEV being returned. Eb6d1a1 change to using template for policy class. 55c4a32 add artifacts to gitignore. 51ae7d1 change make to work with non-bash shells. C731b70 building without xattr. 9e24796 add mergerfs pid to xattrs.
2.8.031 Oct 2015 22:25 minor feature: 5e880bd use SYS_setgroups rather than setgroups. 8a651b0 add support section to readme and manpage. 93cedab misc flagged by clang scan-build. Fd4ce1b include distro and codename in deb package versions.
2.7.020 Oct 2015 11:45 minor feature: F3a6876 remove pandoc from build requirements. 30c29c9 remove manpage from root directory. 8ed11a0 if pandoc doesn't exist copy premade version. 46c8361 offer prebuilt manpage for platforms without easy access to pandoc. 02df441 update info on Samba client EXDEV. Fe79609 typo. 873c4a9 add link to gvfs-fuse patch. 4df9b2e add documentation on SMB client EXDEV / EIO. 1c7de2d minor integer casting. A10de2a update build dependencies for Fedora. 3d7d2cf add sbin directory to rpm spec. 5489952 enhance git2debcl to work with older python releases. 068fbc0 set rpm dependency to fuse. 5a76c41 create mount.mergerfs symlink. 58446f9 misc to compile on older platforms. 40f569b rewrite gid cache system. F6d396c audit (and ) file permissions and ownership. 53e3284 remove usage of UINT32_MAX macro. 09ffc8c provide usage text and version info.
2.6.028 Sep 2015 01:25 minor feature: swap deb and unsigned-deb make tagets. move on enospc when writing feature. make note about escaping glob tokens more explicit. include rpm-build in Fedora dependencies. include link to release page in readme. clean up options listing. create summary feature section.
2.5.015 Sep 2015 18:45 minor feature: Ce93529 realpath'ize all source mount points. 2d89947 non-sufsetxattr of user.mergerfs.minfreespace. E98b801 remove version.hpp on clean. B22528b add user.mergerfs.version xattr. E377d54 add user.mergerfs.policies xattr. 08d07b7 add building of rpm. 305f190 add basic instructions for building on Fedora. 8178bf5 refactor and simplify getxattr for user.mergerfs.*.
2.4.008 Sep 2015 09:25 minor feature: Ce93529 realpath'ize all source mount points. 2d89947 non-sufsetxattr of user.mergerfs.minfreespace. E98b801 remove version.hpp on clean. B22528b add user.mergerfs.version xattr. E377d54 add user.mergerfs.policies xattr. 08d07b7 add building of rpm. 305f190 add basic instructions for building on Fedora. 8178bf5 refactor and simplify getxattr for user.mergerfs.*.
2.3.004 Sep 2015 03:05 minor feature: Use correct variable for finding version. Add minfreespace check to epmfs create policy. Rework rename. Forgot to add EINVAL to policy. Create errno policies for simulating errors. epmfs failing to pick the existing path. Enhance deb building. Format README better for man pages.
2.2.007 Aug 2015 00:45 minor feature: Update README regarding options. Remove unused variable. Move requesting of FUSE flags to init from cli args. Config get and struct naming cleanup. Passthrough ioctl args without processing. Use gte rather than gt for mtime comparisons.
2.1.217 Jul 2015 12:45 minor feature: 80b2c35 add creation of full path for open. 983fa91 change fuse functions to use the fuse namespace. e5359eb remove unused readdir function. f00cd14 use pthread_getugid_np instead of gete u,g id on OSX.
2.1.114 Jul 2015 03:17 minor feature: 4d60538 ignore ENOTSUP errors when cloning paths.
2.1.009 Jul 2015 23:45 major feature: Add str to size_t conversion code. Add minfreespace to xattr interface. Add info on lfs and fwfs policies and minfreespace option. Rework category - fuse function table. Stop auto calculating and storing fullpath in policies. Create different policies based on category of use. Add category to policies so as to distinguish between creates and searches. Separate policies into individual modules. Move policy function type from fs to policy. Move Path object to separate file. Create lfs policy. First w/ free space policy. Create minfreespace option.
2.0.108 Jun 2015 12:05 minor bugfix: Fix readme typos and misc formatting. Add Tips and FAQ section to readme. Update readme with defaults option info. Fix calling of lgetxattr.
2.0.025 May 2015 19:05 minor feature: Attempt to set priority to -10 on startup. Restrict who can setxattr the pseudo file. Provide 'defaults' option. Set FUSE subtype to 'mergerfs'. Add default policies for categories and description of all. Match cli options to xattrs. Remove FileInfo and keep only file descriptor. revert removal of 'all' policy and relevant behavior. 12f393a per FUSE function policies.
1.7.118 Feb 2015 03:45 minor feature: 283a2b2 Try RLIMIT_INFINITY first, then cur = max, then loop and try to increase till error. closes #50 1a1c9db close file after getting ioc flags. closes #48
1.7.008 Feb 2015 03:15 minor feature: d30cae2 add user.mergerfs.allpaths and user.mergerfs.relpath to getxattr 2e95c6e merge action and search category b411c63 Remove 'all' policy and simplify logic 1f90203 use standard platform macros. closes #43 c2cbb93 elevate privileges when calling clonepath. closes #41 6276ce9 handle EEXIST while cloning a path. closes #40 d1f3bd8 add clonepath tool 031b87f slight refactoring 5dd0729 remove longest common prefix from fsname. closes #38
1.6.014 Nov 2014 03:45 major bugfix: Bugfix to pass constant strings by reference. Provide stat to readdir filler. Support for support RHEL6 added.