Hello community, here is the log from the commit of package disorderfs for openSUSE:Factory checked in at 2018-01-02 16:35:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/disorderfs (Old) and /work/SRC/openSUSE:Factory/.disorderfs.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "disorderfs" Tue Jan 2 16:35:17 2018 rev:2 rq:561079 version:0.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/disorderfs/disorderfs.changes 2017-08-24 18:49:11.528512209 +0200 +++ /work/SRC/openSUSE:Factory/.disorderfs.new/disorderfs.changes 2018-01-02 16:35:24.616020493 +0100 @@ -1,0 +2,7 @@ +Mon Jan 1 08:55:35 UTC 2018 - [email protected] + +- update to 0.5.2 + * Add -q, --quiet options to avoid printing to stdout. +- cleanup with spec-cleaner + +------------------------------------------------------------------- Old: ---- disorderfs-0.5.1.tar.bz2 disorderfs-0.5.1.tar.bz2.asc New: ---- disorderfs-0.5.2.tar.bz2 disorderfs-0.5.2.tar.bz2.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ disorderfs.spec ++++++ --- /var/tmp/diff_new_pack.Iof2Ae/_old 2018-01-02 16:35:26.551375103 +0100 +++ /var/tmp/diff_new_pack.Iof2Ae/_new 2018-01-02 16:35:26.559372436 +0100 @@ -1,7 +1,7 @@ # # spec file for package disorderfs # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,22 +17,22 @@ Name: disorderfs +Version: 0.5.2 +Release: 0 Summary: FUSE filesystem that introduces non-determinism License: GPL-3.0+ Group: Development/Tools/Building -Requires: fuse +Url: https://packages.debian.org/sid/disorderfs +Source0: https://reproducible.alioth.debian.org/releases/%{name}/%{name}-%{version}.tar.bz2 +Source1: https://reproducible.alioth.debian.org/releases/%{name}/%{name}-%{version}.tar.bz2.asc +Source2: %{name}.keyring BuildRequires: asciidoc BuildRequires: gcc-c++ BuildRequires: libattr-devel +BuildRequires: pkgconfig BuildRequires: xsltproc BuildRequires: pkgconfig(fuse) -Version: 0.5.1 -Release: 0 -Url: https://packages.debian.org/sid/disorderfs -Source0: https://reproducible.alioth.debian.org/releases/disorderfs/%{name}-%{version}.tar.bz2 -Source1: https://reproducible.alioth.debian.org/releases/disorderfs/%{name}-%{version}.tar.bz2.asc -Source2: %{name}.keyring -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Requires: fuse %description disorderfs is an overlay FUSE filesystem that introduces non-determinism into @@ -44,15 +44,14 @@ %setup -q %build -make +make %{?_smp_mflags} %install -make install DESTDIR=$RPM_BUILD_ROOT PREFIX=/usr ENABLE_MAN=yes +%make_install PREFIX=%{_prefix} %files -%defattr(-, root, root) %doc COPYING README NEWS %{_bindir}/%{name} -%{_mandir}/man1/disorderfs.1.gz +%{_mandir}/man1/%{name}.1%{ext_man} %changelog ++++++ disorderfs-0.5.1.tar.bz2 -> disorderfs-0.5.2.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disorderfs-0.5.1/NEWS new/disorderfs-0.5.2/NEWS --- old/disorderfs-0.5.1/NEWS 2016-09-14 00:03:28.000000000 +0200 +++ new/disorderfs-0.5.2/NEWS 2017-08-21 19:13:10.000000000 +0200 @@ -1,3 +1,13 @@ +v0.5.2 (2017-08-21) + * Add -q, --quiet options to avoid printing to stdout. + +v0.5.1 (2016-09-13) + * Add --sort-dirents=yes|no option for forcing deterministic. + * Support absolute paths by transforming ROOTDIR on startup. + * Update man page. + * Print the behaviour on startup to stdout. + * Add testsuite. + v0.4.3 (2016-06-09) * Fix bug that caused files to be created with the wrong permissions. * Minor code cleanup. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disorderfs-0.5.1/README new/disorderfs-0.5.2/README --- old/disorderfs-0.5.1/README 2016-09-14 00:03:28.000000000 +0200 +++ new/disorderfs-0.5.2/README 2017-08-21 19:13:10.000000000 +0200 @@ -6,3 +6,13 @@ non-determinism in the build process. See the man page for details. + +After releasing, please also release a signed tarball: + + $ VERSION=FIXME + + $ git archive --format=tar --prefix=disorderfs-${VERSION}/ ${VERSION} | bzip2 -9 > disorderfs-${VERSION}.tar.bz2 + + $ gpg --detach-sig --armor --output=disorderfs-${VERSION}.tar.bz2.asc < disorderfs-${VERSION}.tar.bz2 + + $ scp disorderfs-${VERSION}* alioth.debian.org:/home/groups/reproducible/htdocs/releases/disorderfs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disorderfs-0.5.1/disorderfs.cpp new/disorderfs-0.5.2/disorderfs.cpp --- old/disorderfs-0.5.1/disorderfs.cpp 2016-09-14 00:03:28.000000000 +0200 +++ new/disorderfs-0.5.2/disorderfs.cpp 2017-08-21 19:13:10.000000000 +0200 @@ -42,7 +42,7 @@ #include <sys/file.h> #include <stddef.h> -#define DISORDERFS_VERSION "0.5.1" +#define DISORDERFS_VERSION "0.5.2" namespace { std::vector<std::string> bare_arguments; @@ -56,6 +56,7 @@ int sort_dirents{0}; int pad_blocks{1}; int share_locks{0}; + int quiet{0}; }; Disorderfs_config config; @@ -180,7 +181,8 @@ struct fuse_operations disorderfs_fuse_operations; enum { KEY_HELP, - KEY_VERSION + KEY_VERSION, + KEY_QUIET }; #define DISORDERFS_OPT(t, p, v) { t, offsetof(Disorderfs_config, p), v } const struct fuse_opt disorderfs_fuse_opts[] = { @@ -199,6 +201,8 @@ FUSE_OPT_KEY("--help", KEY_HELP), FUSE_OPT_KEY("-V", KEY_VERSION), FUSE_OPT_KEY("--version", KEY_VERSION), + FUSE_OPT_KEY("-q", KEY_QUIET), + FUSE_OPT_KEY("--quiet", KEY_QUIET), FUSE_OPT_END }; int fuse_opt_proc (void* data, const char* arg, int key, struct fuse_args* outargs) @@ -212,6 +216,7 @@ std::clog << " -o opt,[opt...] mount options (see below)" << std::endl; std::clog << " -h, --help display help" << std::endl; std::clog << " -V, --version display version info" << std::endl; + std::clog << " -q, --quiet don't output any status messages" << std::endl; std::clog << std::endl; std::clog << "disorderfs options:" << std::endl; std::clog << " --multi-user=yes|no allow multiple users to access overlay (requires root; default: no)" << std::endl; @@ -229,6 +234,9 @@ fuse_opt_add_arg(outargs, "--version"); fuse_main(outargs->argc, outargs->argv, &disorderfs_fuse_operations, nullptr); std::exit(0); + } else if (key == KEY_QUIET) { + config.quiet = true; + return 0; } return 1; } @@ -268,14 +276,16 @@ } fuse_opt_add_arg(&fargs, bare_arguments[1].c_str()); - if (config.shuffle_dirents) { - std::cout << "disorderfs: shuffling dirents" << std::endl; - } - if (config.reverse_dirents) { - std::cout << "disorderfs: reversing dirents" << std::endl; - } - if (config.sort_dirents) { - std::cout << "disorderfs: sorting dirents" << std::endl; + if (!config.quiet) { + if (config.shuffle_dirents) { + std::cout << "disorderfs: shuffling dirents" << std::endl; + } + if (config.reverse_dirents) { + std::cout << "disorderfs: reversing dirents" << std::endl; + } + if (config.sort_dirents) { + std::cout << "disorderfs: sorting dirents" << std::endl; + } } /* ++++++ disorderfs.keyring ++++++ --- /var/tmp/diff_new_pack.Iof2Ae/_old 2018-01-02 16:35:26.655340433 +0100 +++ /var/tmp/diff_new_pack.Iof2Ae/_new 2018-01-02 16:35:26.655340433 +0100 @@ -1,5 +1,4 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v2 mQINBEpaPPMBEADG/4uW0xA0Fcx07pJgJMtka4DvehIcunxEj2QI4YTopdPyAkTj 9cNBljUtiZ1IvgtimQeJQt1XXyt5RR9q9nxn9D3Ce11JFe+TyO9YwVB4rIFk0ix8 @@ -12,44 +11,44 @@ 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 @@ -72,6 +71,107 @@ PVMGvuHaIa76YPPZXv0gfdEqnM2mQA0QUYEBE5UPtJOGLFSR/bSjewMEj9j2dYo7 Ms0Nuhe9shty3nm0VCkerGD7kSNv41dRCcLvmTBAfOZVLnB5gahTzVLQi+TFLrli PhhdfRap1821rV73gzbST/zh8Gfjf0uEfgb6LRrwRotzGIw9n+m1fks43qs/lO+Z -xNfR -=P+OH +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 +Mzg8z775Lzy0A14PpWTwhYXuEV2H0nETA3BLIAcMkemhhSXzQXh5XcZ8Bp+matmj +RXfpBOosvtgMCrQoWGltaW4gTHVvIDxpbmZpbml0eTBAZnJlZW5ldHByb2plY3Qu +b3JnPokCfAQTAQoAZicaZ2l0Oi8vZ2l0aHViLmNvbS9pbmZpbml0eTAvcHVia2V5 +cy5naXQCGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQSkBeWKs3JbOW7RuFwT +GO+sX7vbzgUCWEdnSwUJDkBaeAAKCRATGO+sX7vbzrtWD/0Qr5tfmNd4lkiSG+7a +AnGpElB2pT0VFfGyn8lK4/QWFjexEwacoCoHXYmuh3yAsGrdY+zv67jWBIpz1+zp +nW0B9Y0fF9ZVE3K3Bs98s/A0bAzaVZYzM28JVbEnGugoEq66qqWpUHbH2Z1rBu/n +ysA0Mmkv5a7auPnHbyi5Y52cC4IqUfEgf4fEXHeGD6jKXIZtWngp9/K0u2x9J290 +X4wPvIYe3tAkq0riivAGinA7lj+Sfv6p/wW3e4ITm9NZ2XuNWlO9zYfJnRZ53Fiz +LvtVf9Gs5iR2sV66Hz1jrsRwQqRVQ52opMp56aaAT9u2JDEAhbZV7ohjmCEGa3S1 +AB/sr4NW5UMYa7/MDTsIuuYk94MiTgtkzECiO3KjBbK9p836zbA44nejDZ9cU2CN +1+RJtGFnFay19B0ELLLB1oF6zjB9QlmMWieOOwaApp/qm4tJiJ+AT0jK7a81EoAu +QPd38xG7cswmCfmhRYdYhzh7yG6ULFdgM/URmNvdDzQYUI1T6ELaeO+TFuzn+I4R ++1XPVW3HrZeffyA4hULlc1Ivnvl4Z/AFj83zU4QE6ZPrgl4VLtaEc3LvfN0d2TxA +It61ovPmbhcWJZUi/zSfB6HjqZhH+avs66iJgXdyDeJD8+WRatkena/lWvNNwLj3 +Xi71Lyohj0HB111XEj39YlfLHrQgWGltaW4gTHVvIDxpbmZpbml0eTBAZGViaWFu +Lm9yZz6JAnwEEwEKAGYnGmdpdDovL2dpdGh1Yi5jb20vaW5maW5pdHkwL3B1Ymtl +eXMuZ2l0AhsDBQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAFiEEpAXlirNyWzlu0bhc +ExjvrF+7284FAlhHZ0sFCQ5AWngACgkQExjvrF+7287oDw/+ObkZYTaxQrZi1rk9 +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 +=bVeS -----END PGP PUBLIC KEY BLOCK-----
