Bug 1371158 - Review Request: ebtree - Elastic binary tree library
Summary: Review Request: ebtree - Elastic binary tree library
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-08-29 12:40 UTC by Ingvar Hagelund
Modified: 2017-01-20 20:48 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-01-13 02:23:39 UTC
Type: ---
ppisar: fedora-review+


Attachments (Terms of Use)

Description Ingvar Hagelund 2016-08-29 12:40:47 UTC
Spec URL: https://ingvar.fedorapeople.org/ebtree/ebtree.spec
SRPM URL: https://ingvar.fedorapeople.org/ebtree/ebtree-6.0.8-1.fc24.src.rpm

Description:
ebtree is a binary search tree specially optimized to very
frequently store, retrieve and delete discrete integer or binary
data without having to deal with memory allocation

Fedora Account System Username: ingvar

Extra information:

ebtree is a project from Willy Tarreau, who also leads the haproxy project. The library is very fast, implemented in pure C, dependant only on glibc. It is most often used as a drop in directory in other projects. This package creates shared library (libebtree.so) variant for dynamic linking.

Home page: http://1wt.eu/articles/ebtree/

Note: If this package is accepted into fedora, other projects using ebtree, including haproxy, should probably be rebuilt against the shared library.

For EPEL compatibility, the package defines the BuildRoot header. This is not necessary in Fedora, but if accepted, I plan to release the package also for EPEL.

Comment 1 Ingvar Hagelund 2016-08-29 13:36:04 UTC
COPR builds for EPEL: https://copr.fedorainfracloud.org/coprs/ingvar/hitch_with_session_cache/

Comment 2 Petr Pisar 2016-10-21 10:40:31 UTC
URL and Source0 addresses are usable. Ok.
Source archive is original (SHA-256: 17f8a7a88758f5fe67c3e2f304f549b1543c3abfadf1d01053b280369238005f). Ok.
The patch is good.
Summary is Ok.

FIX: While the library is LGPLv2, the examples files have different license (GPLv2+). You must add `License: LGPLv2 and GPLv2+' to the devel sub-package.

FIX: Add a full-stop symbol at the end of the descriptions.

FIX: Build-require `make' (ebtree.spec:41).
FIX: Build-require `coreutils' (ebtree.spec:42).
FIX: Build-require `gcc' (Makefile:13).

FIX: Do not package LICENSE file twice (both %doc and %license). Use only %license.

FIX: Export LDFLAGS for make. The linker command must use distribution flags from %{__global_ldflags} macro.

TODO: Execute tests from %check section. Upstream has tests. Actually it would be great if the tests used the dynamic library so they checked the bits the RPM package will deliver to users. They uses the static library now.

TODO: The library SONAME should be two-digit because this not an upstream versioning. It also does not make sense to start with "6". You could start with "0.1". <https://fedoraproject.org/wiki/Packaging:Guidelines#Downstream_.so_name_versioning>.

$ rpmlint ebtree.spec ../SRPMS/ebtree-6.0.8-1.fc26.src.rpm ../RPMS/x86_64/ebtree-*
ebtree.x86_64: E: library-without-ldconfig-postin /usr/lib64/libebtree.so.6.0
ebtree.x86_64: E: library-without-ldconfig-postun /usr/lib64/libebtree.so.6.0
ebtree-devel.x86_64: W: no-version-dependency-on ebtree/ebtree-libs/libebtree 6.0.8
ebtree-devel.x86_64: W: only-non-binary-in-usr-lib
4 packages and 1 specfiles checked; 2 errors, 2 warnings.
FIX: You have to call ldconfig from post and postun scriptlets <https://fedoraproject.org/wiki/Packaging:Guidelines#SharedLibraries>.

$ rpm -q -lv -p ../RPMS/x86_64/ebtree-6.0.8-1.fc26.x86_64.rpm 
lrwxrwxrwx    1 root    root                       16 Oct 21 11:24 /usr/lib64/libebtree.so.6 -> libebtree.so.6.0
-rwxr-xr-x    1 root    root                    19232 Oct 21 11:24 /usr/lib64/libebtree.so.6.0
drwxr-xr-x    2 root    root                        0 Oct 21 11:24 /usr/share/doc/ebtree
-rw-r--r--    1 root    root                    26436 Jun 11  2012 /usr/share/doc/ebtree/LICENSE
-rw-r--r--    1 root    root                    12297 Oct 21 11:24 /usr/share/doc/ebtree/README
-rw-r--r--    1 root    root                        6 Jun 11  2012 /usr/share/doc/ebtree/VERSION
drwxr-xr-x    2 root    root                        0 Oct 21 11:24 /usr/share/licenses/ebtree
-rw-r--r--    1 root    root                    26436 Jun 11  2012 /usr/share/licenses/ebtree/LICENSE

$ rpm -q -lv -p ../RPMS/x86_64/ebtree-devel-6.0.8-1.fc26.x86_64.rpm 
-rw-r--r--    1 root    root                     2954 Jun 11  2012 /usr/include/compiler.h
-rw-r--r--    1 root    root                    15744 Jun 11  2012 /usr/include/eb32tree.h
-rw-r--r--    1 root    root                    18643 Jun 11  2012 /usr/include/eb64tree.h
-rw-r--r--    1 root    root                    10710 Jun 11  2012 /usr/include/ebimtree.h
-rw-r--r--    1 root    root                    10966 Jun 11  2012 /usr/include/ebistree.h
-rw-r--r--    1 root    root                    26000 Jun 11  2012 /usr/include/ebmbtree.h
-rw-r--r--    1 root    root                     5520 Jun 11  2012 /usr/include/ebpttree.h
-rw-r--r--    1 root    root                    10802 Jun 11  2012 /usr/include/ebsttree.h
-rw-r--r--    1 root    root                    31130 Jun 11  2012 /usr/include/ebtree.h
lrwxrwxrwx    1 root    root                       14 Oct 21 11:24 /usr/lib64/libebtree.so -> libebtree.so.6
drwxr-xr-x    2 root    root                        0 Oct 21 11:24 /usr/share/doc/ebtree-devel
-rw-r--r--    1 root    root                    26436 Jun 11  2012 /usr/share/doc/ebtree-devel/LICENSE
-rw-r--r--    1 root    root                    12297 Oct 21 11:24 /usr/share/doc/ebtree-devel/README
-rw-r--r--    1 root    root                        6 Jun 11  2012 /usr/share/doc/ebtree-devel/VERSION
drwxr-xr-x    2 root    root                        0 Jun 11  2012 /usr/share/doc/ebtree-devel/examples
-rw-r--r--    1 root    root                     4217 Jun 11  2012 /usr/share/doc/ebtree-devel/examples/reduce.c
-rw-r--r--    1 root    root                     2529 Jun 11  2012 /usr/share/doc/ebtree-devel/examples/squidgrep.c
drwxr-xr-x    2 root    root                        0 Oct 21 11:24 /usr/share/licenses/ebtree-devel
-rw-r--r--    1 root    root                    26436 Jun 11  2012 /usr/share/licenses/ebtree-devel/LICENSE

I don't like the compiler.h directly in /usr/include. The file name does not sound ebtree specific. I recommend to move the header files into a subdirectory /usr/include/ebtree.

$ rpm -q --requires -p ../RPMS/x86_64/ebtree-6.0.8-1.fc26.x86_64.rpm | sort -f | uniq -c
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
      1 rtld(GNU_HASH)
$ rpm -q --requires -p ../RPMS/x86_64/ebtree-devel-6.0.8-1.fc26.x86_64.rpm | sort -f | uniq -c
      1 ebtree
      1 libebtree.so.6()(64bit)
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
FIX: Run-require exact ebtree package (NEVRA) from ebtree-devel package to keep them matching.

$ rpm -q --provides -p ../RPMS/x86_64/ebtree-6.0.8-1.fc26.x86_64.rpm | sort -f | uniq -c
      1 ebtree = 6.0.8-1.fc26
      1 ebtree(x86-64) = 6.0.8-1.fc26
      1 libebtree.so.6()(64bit)
$ rpm -q --provides -p ../RPMS/x86_64/ebtree-devel-6.0.8-1.fc26.x86_64.rpm | sort -f | uniq -c
      1 ebtree-devel = 6.0.8-1.fc26
      1 ebtree-devel(x86-64) = 6.0.8-1.fc26
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/x86_64/ebtree{,-devel}-6.0.8-1.fc26.x86_64.rpm 
Binary dependencies resolvable. Ok.

Package builds in F26 (http://koji.fedoraproject.org/koji/taskinfo?taskID=16148863). Ok.

Otherwise the package is in line with Fedora packaging guidelines.

Please correct all `FIX' items, consider fixing `TODO' items and provide a new spec file.
Resolution: package NOT approved.

Comment 3 Ingvar Hagelund 2016-12-06 14:41:21 UTC
Thanks Petr

Updated spec: https://ingvar.fedorapeople.org/ebtree/ebtree.spec
Updated srpm: https://ingvar.fedorapeople.org/ebtree/ebtree-6.0.8-2.fc25.src.rpm

> TODO: Execute tests from %check section. Upstream has tests. 

There are test binaries, but no test suite. I made a little script that runs the test with some random values, and checks that what comes in gets out. I guess that will do.

> Actually it would  be great if the tests used the dynamic library so they 
> checked the bits the RPM package will deliver to users. They uses the static 
> library now.

Do they?

[ingvar@netcat ~/rpmbuild/BUILD/ebtree-6.0.8]$ echo 42 | ./test32 42
./test32: error while loading shared libraries: libebtree.so.0: cannot open shared object file: No such file or directory

[ingvar@netcat ~/rpmbuild/BUILD/ebtree-6.0.8]$ ldd test32
	linux-vdso.so.1 (0x00007ffec21ee000)
	libebtree.so.0 => not found
	libc.so.6 => /lib64/libc.so.6 (0x00007fab965b2000)
	/lib64/ld-linux-x86-64.so.2 (0x000055a621bb4000)


[ingvar@netcat ~/rpmbuild/BUILD/ebtree-6.0.8]$ export LD_LIBRARY_PATH=.

[ingvar@netcat ~/rpmbuild/BUILD/ebtree-6.0.8]$ ldd test32
	linux-vdso.so.1 (0x00007ffd46de4000)
	libebtree.so.0 => ./libebtree.so.0 (0x00007f2668726000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f266832f000)
	/lib64/ld-linux-x86-64.so.2 (0x0000557a4ca2a000)

[ingvar@netcat ~/rpmbuild/BUILD/ebtree-6.0.8]$ echo 42 | ./test32 42
Dump of command line values :
node 0x1ec7010 = 42
Now enter lookup values, one per line.
eq: node=0x1ec7010, val=42
le: node=0x1ec7010, val=42
ge: node=0x1ec7010, val=42

Comment 4 Ralf Corsepius 2016-12-06 18:18:47 UTC
Building doesn't honor optflags correctly:

From build.log:
...
cc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -O3 -fPIC -o ebtree.o -c ebtree.c
...
cc -O3 -fPIC -o test32 test32.c -L. -lebtree
...

In the first call, the -O3 near to the end overrides -O2.

In the second call optflags isn't used at all.

Comment 5 Ingvar Hagelund 2016-12-07 08:45:00 UTC
Thanks again, Petr

I also added som basic hardening flags for epel5,6.

Updated spec: https://ingvar.fedorapeople.org/ebtree/ebtree.spec
Updated srpm: https://ingvar.fedorapeople.org/ebtree/ebtree-6.0.8-3.fc25.src.rpm

Ingvar

Comment 6 Petr Pisar 2016-12-07 15:20:41 UTC
> FIX: While the library is LGPLv2, the examples files have different license
> (GPLv2+). You must add `License: LGPLv2 and GPLv2+' to the devel sub-package.
> 
 %package devel
[...]
+License:       LGPLv2 and GPLv2+
Ok.

> FIX: Add a full-stop symbol at the end of the descriptions.
> 
-data without having to deal with memory allocation
+data without having to deal with memory allocation.
Ok.

> FIX: Build-require `make' (ebtree.spec:41).
> FIX: Build-require `coreutils' (ebtree.spec:42).
> FIX: Build-require `gcc' (Makefile:13).
> 
+BuildRequires: make
+BuildRequires: coreutils
+BuildRequires: gcc
Ok.

> FIX: Do not package LICENSE file twice (both %doc and %license). Use only
> %license.
> 
-%doc VERSION LICENSE README
+%doc VERSION README
Ok.

> FIX: Export LDFLAGS for make. The linker command must use distribution flags
> from %{__global_ldflags} macro.
> 
%build
[...]
+export LDFLAGS="%{__global_ldflags}"
+
+# Some hardening on epel5,6
+%if 0%{?rhel} == 5 || 0%{?rhel} == 6
+export CFLAGS="%{optflags} -fPIE"
+export LDFLAGS="-Wl,-z,relro -z,now"
+%endif

TODO: Here you still ignores %{__global_ldflags} for EPEL 5 and 6. The same applies to %check section. The macro is maybe empty there but still for the sake of consistency and those who redefines it locally it should be respected.

TODO: I recommend to add -fPIC -DPIC compiler options when building the shared library object files. They are required for building a shared library. The build passes only because /usr/lib/rpm/redhat/redhat-hardened-cc1 hardening configuration supplies -fPIE.

TODO: I recommend to build the tests in %build section.

+%check
> TODO: Execute tests from %check section. Upstream has tests. Actually it
> would be great if the tests used the dynamic library so they checked the
> bits the RPM package will deliver to users. They uses the static library now.
> 
FIX: Build-require util-linux because of uuidgen in tests.sh.

> TODO: The library SONAME should be two-digit because this not an upstream
> versioning. It also does not make sense to start with "6". You could start
> with "0.1".

+SOMIN = 0
+SOREL = 1
[...]
+libebtree.so: $(OBJS)
+       $(CC) $(LDFLAGS) -shared -Wl,-soname,libebtree.so.$(SOMIN) -o libebtree.so.$(SOMIN).$(SOREL) $(OBJS)
+       ln -sf libebtree.so.$(SOMIN).$(SOREL) libebtree.so.$(SOMIN)
+       ln -sf libebtree.so.$(SOMIN) libebtree.so
+

TODO: This is not a 2-digit SONAME. SONAME is what you pass to -soname linker option. 

> FIX: You have to call ldconfig from post and postun scriptlets
> <https://fedoraproject.org/wiki/Packaging:Guidelines#SharedLibraries>.
>
+%post
+/sbin/ldconfig
+
+%postun
+/sbin/ldconfig

TODO: You are missing dependency on /sbin/ldconfig for the scripts. Please use the "%post -p /sbin/ldconfig" notation the fixes it.

> I don't like the compiler.h directly in /usr/include. The file name does not
> sound ebtree specific. I recommend to move the header files into a
> subdirectory /usr/include/ebtree.
> 
-install -D -p -m 0644 -t %{buildroot}%{_includedir} *.h
+install -D -p -m 0644 -t %{buildroot}%{_includedir}/%{name} *.h
Ok.

> FIX: Run-require exact ebtree package (NEVRA) from ebtree-devel package to
> keep them matching.
> 
-Requires:      %{name}
+Requires:      %{name}%{?_isa} = %{version}-%{release}
Ok.

All tests pass. Ok.

$ rpmlint ebtree.spec ../SRPMS/ebtree-6.0.8-3.fc26.src.rpm ../RPMS/x86_64/ebtree-*-3.fc26.*
ebtree.x86_64: W: one-line-command-in-%post /sbin/ldconfig
ebtree.x86_64: W: one-line-command-in-%postun /sbin/ldconfig
ebtree-devel.x86_64: W: only-non-binary-in-usr-lib
4 packages and 1 specfiles checked; 0 errors, 3 warnings.
TODO: Use the %post -p /sbin/ldoconfig. Your code requires another shell execution.

The tests uses the dynamic library. You are right. I probably read the unpatched Makefile.

Package builds in F26 (http://koji.fedoraproject.org/koji/taskinfo?taskID=16788376). Ok.

Please consider fixing the `TODO' items before building this package.
Resolution: Package APPROVED.

Comment 7 Ingvar Hagelund 2017-01-04 00:19:36 UTC
(In reply to Petr Pisar from comment #6)

Thanks again, Petr. Updated srpm and spec here:
https://ingvar.fedorapeople.org/ebtree/ebtree.spec
https://ingvar.fedorapeople.org/ebtree/ebtree-6.0.8-4.fc25.src.rpm

> %build
> +# Some hardening on epel5,6
> +%if 0%{?rhel} == 5 || 0%{?rhel} == 6
> +export CFLAGS="%{optflags} -fPIE"
> +export LDFLAGS="-Wl,-z,relro -z,now"
> +%endif
> 
> TODO: Here you still ignores %{__global_ldflags} for EPEL 5 and 6. The same
> applies to %check section. The macro is maybe empty there but still for the
> sake of consistency and those who redefines it locally it should be
> respected.

I don't know how often anybody uses %{__global_ldflags} on epel5,6, but OK:

# Some hardening on epel5,6
%if 0%{?rhel} == 5 || 0%{?rhel} == 6
export CFLAGS="%{optflags} -fPIE"
export LDFLAGS="%{__global_ldflags} -fPIC -DPIC -Wl,-z,relro -z,now"
%endif
 
> TODO: I recommend to add -fPIC -DPIC compiler options when building the
> shared library object files. They are required for building a shared
> library. The build passes only because
> /usr/lib/rpm/redhat/redhat-hardened-cc1 hardening configuration supplies
> -fPIE.

Is it enough to just add them to LDFLAGS, like above?
 
> TODO: I recommend to build the tests in %build section.

Why? Isn't this exactly what %check is for?

> FIX: Build-require util-linux because of uuidgen in tests.sh.

OK.
 
> > TODO: The library SONAME should be two-digit because this not an upstream
> > versioning. It also does not make sense to start with "6". You could start
> > with "0.1".
> (...) 
> TODO: This is not a 2-digit SONAME. SONAME is what you pass to -soname
> linker option. 

Like this?

+SOREL = 0
+SOMIN = 1

(...)

+libebtree.so: $(OBJS)
+       $(CC) $(LDFLAGS) -shared -Wl,-soname,libebtree.so.$(SOREL).$(SOMIN) -o libebtree.so.$(SOREL).$(SOMIN) $(OBJS)
+       ln -sf libebtree.so.$(SOREL).$(SOMIN) libebtree.so.$(SOREL)
+       ln -sf libebtree.so.$(SOREL) libebtree.so
+


> TODO: You are missing dependency on /sbin/ldconfig for the scripts. Please
> use the "%post -p /sbin/ldconfig" notation the fixes it.
> (...)
> TODO: Use the %post -p /sbin/ldoconfig. Your code requires another shell
> execution.

Fixed

> Please consider fixing the `TODO' items before building this package.
> Resolution: Package APPROVED.

Comment 8 Ingvar Hagelund 2017-01-04 00:33:13 UTC
actually,

export LDFLAGS="%{?__global_ldflags} -fPIC -DPIC -Wl,-z,relro -z,now"

Comment 9 Petr Pisar 2017-01-04 08:09:15 UTC
(In reply to Ingvar Hagelund from comment #7)
> > %build
> > +# Some hardening on epel5,6
> > +%if 0%{?rhel} == 5 || 0%{?rhel} == 6
> > +export CFLAGS="%{optflags} -fPIE"
> > +export LDFLAGS="-Wl,-z,relro -z,now"
> > +%endif
> > 
> > TODO: Here you still ignores %{__global_ldflags} for EPEL 5 and 6. The same
> > applies to %check section. The macro is maybe empty there but still for the
> > sake of consistency and those who redefines it locally it should be
> > respected.
> 
> I don't know how often anybody uses %{__global_ldflags} on epel5,6, but OK:
> 
> # Some hardening on epel5,6
> %if 0%{?rhel} == 5 || 0%{?rhel} == 6
> export CFLAGS="%{optflags} -fPIE"
> export LDFLAGS="%{__global_ldflags} -fPIC -DPIC -Wl,-z,relro -z,now"
> %endif
>  
> > TODO: I recommend to add -fPIC -DPIC compiler options when building the
> > shared library object files. They are required for building a shared
> > library. The build passes only because
> > /usr/lib/rpm/redhat/redhat-hardened-cc1 hardening configuration supplies
> > -fPIE.
> 
> Is it enough to just add them to LDFLAGS, like above?
>
-fPIC -DPIC are compiler options. Not linker options. The should be added to CFLAGS. Not LDFLAGS.

  
> > TODO: I recommend to build the tests in %build section.
> 
> Why? Isn't this exactly what %check is for?
> 
I think %check is for running tests. Not for compiling code. But it does not matter much.

> > > TODO: The library SONAME should be two-digit because this not an upstream
> > > versioning. It also does not make sense to start with "6". You could start
> > > with "0.1".
> > (...) 
> > TODO: This is not a 2-digit SONAME. SONAME is what you pass to -soname
> > linker option. 
> 
> Like this?
> 
> +SOREL = 0
> +SOMIN = 1
> 
> (...)
> 
> +libebtree.so: $(OBJS)
> +       $(CC) $(LDFLAGS) -shared -Wl,-soname,libebtree.so.$(SOREL).$(SOMIN)
> -o libebtree.so.$(SOREL).$(SOMIN) $(OBJS)
> +       ln -sf libebtree.so.$(SOREL).$(SOMIN) libebtree.so.$(SOREL)
> +       ln -sf libebtree.so.$(SOREL) libebtree.so
> +
>
No. The SOREL should be "0.1", SOMIN whatever you want (actually you does not have to use it), and -soname option would be "libebtree.so.$(SOREL)" only.

The idea is to have soname different from whatever upstream could use when he decided to start using soname.

Comment 10 Ingvar Hagelund 2017-01-04 11:52:29 UTC
(In reply to Petr Pisar from comment #9)

Thanks again, Petr. I'll try again. Updated srpm and spec here (did not bump release tag)

https://ingvar.fedorapeople.org/ebtree/ebtree.spec
https://ingvar.fedorapeople.org/ebtree/ebtree-6.0.8-4.fc25.src.rpm


> -fPIC -DPIC are compiler options. Not linker options. The should be added to
> CFLAGS. Not LDFLAGS.

Right. Fixed

> I think %check is for running tests. Not for compiling code. But it does not
> matter much.

I can take away a few lines by moving it %build, and just run the check under %check, so it's an improvement as well. Fixed.

> (...)The SOREL should be "0.1", SOMIN whatever you want (actually you does
> not have to use it), and -soname option would be "libebtree.so.$(SOREL)"
> only.
> 
> The idea is to have soname different from whatever upstream could use when
> he decided to start using soname.

uh, ok. Something like this, then:

SOREL = 0.1
(...)
libebtree.so: $(OBJS)
	$(CC) $(LDFLAGS) -shared -Wl,-soname,libebtree.so.$(SOREL) -o libebtree.so.$(SOREL) $(OBJS)
	ln -sf libebtree.so.$(SOREL) libebtree.so

Better now?

Ingvar

Comment 11 Petr Pisar 2017-01-04 11:57:29 UTC
Yes, I think this is the best. Thank you for polishing the package.

Comment 12 Gwyn Ciesla 2017-01-04 13:13:28 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/ebtree

Comment 13 Fedora Update System 2017-01-04 14:06:07 UTC
ebtree-6.0.8-4.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-e10fdab597

Comment 14 Fedora Update System 2017-01-04 14:06:13 UTC
ebtree-6.0.8-4.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2017-2ed27ba719

Comment 15 Fedora Update System 2017-01-04 22:22:41 UTC
ebtree-6.0.8-4.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-2ed27ba719

Comment 16 Fedora Update System 2017-01-04 23:07:44 UTC
ebtree-6.0.8-4.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-4fdc54e965

Comment 17 Fedora Update System 2017-01-04 23:07:52 UTC
ebtree-6.0.8-4.el6 has been submitted as an update to Fedora EPEL 6. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-43aa73acbf

Comment 18 Fedora Update System 2017-01-04 23:07:58 UTC
ebtree-6.0.8-4.el5 has been submitted as an update to Fedora EPEL 5. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-7db3c27dd4

Comment 19 Fedora Update System 2017-01-04 23:29:35 UTC
ebtree-6.0.8-4.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-e10fdab597

Comment 20 Fedora Update System 2017-01-06 04:16:26 UTC
ebtree-6.0.8-4.el5 has been pushed to the Fedora EPEL 5 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-7db3c27dd4

Comment 21 Fedora Update System 2017-01-06 04:17:52 UTC
ebtree-6.0.8-4.el6 has been pushed to the Fedora EPEL 6 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-43aa73acbf

Comment 22 Fedora Update System 2017-01-06 04:19:24 UTC
ebtree-6.0.8-4.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-4fdc54e965

Comment 23 Fedora Update System 2017-01-13 02:23:39 UTC
ebtree-6.0.8-4.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 24 Fedora Update System 2017-01-13 07:20:56 UTC
ebtree-6.0.8-4.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 25 Fedora Update System 2017-01-20 15:20:37 UTC
ebtree-6.0.8-4.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2017-01-20 20:16:41 UTC
ebtree-6.0.8-4.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.

Comment 27 Fedora Update System 2017-01-20 20:48:12 UTC
ebtree-6.0.8-4.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.