You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by Christopher <ct...@apache.org> on 2017/02/14 01:34:25 UTC

Downstream packaging

Hi,

I'm trying to take over the downstream packaging for thrift in Fedora and
EPEL, and having some difficulties to get everything built correctly.

The previous package maintainer had packaged 0.9.1, but had a number of
patches and supplemental source files that were needed to fix some things.

In particular, the official source tarball release does not contain
everything needed to build the project. It is missing the bootstrap.sh
file, so we're having to pull that directly from the repository mirror on
GitHub in order to build from source. This is problematic... even your own
build instructions say to use this file to build from source:
http://thrift.apache.org/docs/BuildingFromSource Is this a known issue?
Will future thrift releases contain the full source code to build from, or
will it continue to ship only generated sources to bootstrap the build, due
to an intentional choice?

The next problem area is that the previous maintainer had been building
libfb303 from the contrib directory and shipping it as a sub-package
(secondary RPM built from the same source). Now, I'm not sure what fb303 is
(none of my projects have ever used it), but we had previously been
retrieving it's corresponding POM file from the Maven Central repository,
since it doesn't appear to be included in the tarball (at least for 0.9.1).
Now that we're on 0.10.0, I figured I'd have to do the same, but it looks
like nobody ever deployed fb303 0.10.0 to Maven Central on the last
release. Is this something you're planning on doing? Is this even an
actively maintained contrib project? Maybe I should just stop packaging it,
and stick to packaging the main thrift bits.

If there's any interest in testing, or improving the Fedora packaging for
thrift, I welcome the assistance from the existing thrift developers.
Downstream packaging is a great way to make thrift available to a wider
audience, as well as a great way to understand what you need to do to
improve the build system. It's also a great way to ensure integration with
the latest build tools and runtime libraries that desktop users are likely
to have on their modern OS installs.

Thanks!

-- 
Christopher