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 - avindra@opensuse.org
+
+- 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
#include
-#define DISORDERFS_VERSION "0.5.1"
+#define DISORDERFS_VERSION "0.5.2"
namespace {
std::vectorstd::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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
-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
+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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-----