Package: glusterfs-common
Version: 5.2-1
Severity: serious
Justification: 8.2
Tags: patch
Control: block 881526 by -1
glusterfs-common combines shared libraries with a lot of other files and
even a glusterfs user. Doing so violates the Debian policy section 8.2:
| If your package contains files whose names do not change with each
| change in the library shared object version, you must not put them in
| the shared library package.
It is quite evident that the python module, firewalld integration,
logrotate.d snippet and many other files will not change with an soname
bump. Given that other packages (e.g. fio) link libglusterfs0, it is
evident that libglusterfs0 is not a private shared library. Therefore
glusterfs-common violates a policy must.
The attached patch fixes that. I'm filing it as a separate bug, because
the policy violation is much narrower in scope than #881526 is.
Helmut
diff --minimal -Nru glusterfs-5.2/debian/changelog
glusterfs-5.2/debian/changelog
--- glusterfs-5.2/debian/changelog 2018-12-27 12:47:15.0 +0100
+++ glusterfs-5.2/debian/changelog 2019-01-06 20:35:15.0 +0100
@@ -1,3 +1,10 @@
+glusterfs (5.2-1.1) UNRELEASED; urgency=medium
+
+ * Non-maintainer upload.
+ * Split out libglusterfs0. (Closes: #-1)
+
+ -- Helmut Grohne Sun, 06 Jan 2019 20:35:15 +0100
+
glusterfs (5.2-1) unstable; urgency=high
* New upstream release.
diff --minimal -Nru glusterfs-5.2/debian/control glusterfs-5.2/debian/control
--- glusterfs-5.2/debian/control2018-12-27 12:47:15.0 +0100
+++ glusterfs-5.2/debian/control2019-01-06 20:30:43.0 +0100
@@ -82,11 +82,9 @@
xfsprogs,
e2fsprogs,
psmisc
-Conflicts: libglusterfs0,
- libglusterfs-dev
+Conflicts: libglusterfs-dev
Breaks: glusterfs-server (<< 3.4.0~qa5)
Replaces: glusterfs-server (<< 3.4.0~qa5),
- libglusterfs0,
libglusterfs-dev
Description: GlusterFS common libraries and translator modules
GlusterFS is a clustered file-system capable of scaling to several
@@ -99,3 +97,22 @@
.
This package includes libglusterfs and glusterfs translator modules
common to both GlusterFS server and client framework.
+
+Package: libglusterfs0
+Architecture: any
+Pre-Depends: ${misc:Pre-Depends}
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+Breaks: glusterfs-common (<< 5.2-1.1)
+Replaces: glusterfs-common (<< 5.2-1.1)
+Description: GlusterFS shared library
+ GlusterFS is a clustered file-system capable of scaling to several
+ petabytes. It aggregates various storage bricks over Infiniband RDMA
+ or TCP/IP interconnect into one large parallel network file
+ system. GlusterFS is one of the most sophisticated file system in
+ terms of features and extensibility. It borrows a powerful concept
+ called Translators from GNU Hurd kernel. Much of the code in GlusterFS
+ is in userspace and easily manageable.
+ .
+ This package contains libglusterfs.
diff --minimal -Nru glusterfs-5.2/debian/glusterfs-common.install
glusterfs-5.2/debian/glusterfs-common.install
--- glusterfs-5.2/debian/glusterfs-common.install 2018-12-27
12:47:15.0 +0100
+++ glusterfs-5.2/debian/glusterfs-common.install 2019-01-06
20:34:11.0 +0100
@@ -3,7 +3,18 @@
usr/sbin/gluster-mountbroker
usr/sbin/gf_attach
usr/sbin/gluster-setgfid2path
-usr/lib/*
+usr/lib/firewalld
+usr/lib/ocf
+usr/lib/python3
+usr/lib/*/glusterfs
+usr/lib/*/*.so
+usr/lib/*/*.la
+usr/lib/*/libgfapi.so.*
+usr/lib/*/libgfchangelog.so.*
+usr/lib/*/libgfdb.so.*
+usr/lib/*/libgfrpc.so.*
+usr/lib/*/libgfxdr.so.*
+usr/lib/*/pkgconfig
usr/share/doc/glusterfs/glusterfs-mode.el usr/share/emacs/site-lisp/
usr/share/doc/glusterfs/benchmarking/
libglusterfs/src/*.h usr/include/glusterfs/
diff --minimal -Nru glusterfs-5.2/debian/glusterfs-common.lintian-overrides
glusterfs-5.2/debian/glusterfs-common.lintian-overrides
--- glusterfs-5.2/debian/glusterfs-common.lintian-overrides 2018-12-27
12:47:15.0 +0100
+++ glusterfs-5.2/debian/glusterfs-common.lintian-overrides 2019-01-06
20:34:46.0 +0100
@@ -1,8 +1,7 @@
glusterfs-common: spelling-error-in-binary
usr/lib/*/glusterfs/*/xlator/features/gfid-access.so withthe with the
glusterfs-common: spelling-error-in-binary
usr/lib/*/glusterfs/*/xlator/protocol/server.so ofthe of the
glusterfs-common: spelling-error-in-binary
usr/lib/*/glusterfs/*/xlator/features/locks.so onthe on the
-glusterfs-common: package-name-doesnt-match-sonames libgfapi0 libgfchangelog0
libgfdb0 libgfrpc0 libgfxdr0 libglusterfs0
-glusterfs-common: no-symbols-control-file usr/lib/*/libglusterfs.so.0.0.1
+glusterfs-common: package-name-doesnt-match-sonames libgfapi0 libgfchangelog0
libgfdb0 libgfrpc0 libgfxdr0
glusterfs-common: no-symbols-control-file usr/lib/*/libgfxdr.so.0.0.1
glusterfs-common: no-symbols-control-file usr/lib/*/libgfrpc.so.0.0.1
glusterfs-common: no-symbols-control-file usr/lib/*/libgfchangelog.so.0.0.1
diff --minimal -Nru glusterfs-5.2/debian/libglusterfs0.install
glusterfs-