Blob Blame History Raw
# Recently, I split fedmsg into a number of subpackages in order to facilitate
# the rise of python3.  Here's a rough sketch of the deps between the
# subpackages.
#
#
#                   fedmsg-base
#                       |
#     +-----------------+-------------+
#     V                               V
# python2-fedmsg-core        python3-fedmsg-core
#     |
#     |
#     +----------------+-------------------------+
#     |                |                         |
#     |                V                         V
#     |      python2-fedmsg-consumers   python2-fedmsg-commands
#     |                |                         |
#     |                |                         |
#   fedmsg <-----------+-------------------------+
#     |
#     V
#   fedmsg-hub,relay,gateway,etc...

# We're not **quite** ready to build python34 on epel yet.
%if 0%{?fedora}
%global with_python3 1
%endif

%if 0%{?fedora}
%{!?python3_pkgversion: %global python3_pkgversion 3}
%else
%{!?python3_pkgversion: %global python3_pkgversion 34}
%endif

%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%{!?pyver: %global pyver %(%{__python} -c "import sys ; print sys.version[:3]")}

%global modname fedmsg

Name:           fedmsg
Version:        0.18.0
Release:        1%{?dist}
Summary:        Tools for Fedora Infrastructure real-time messaging
License:        LGPLv2+
URL:            http://github.com/fedora-infra/fedmsg
Source0:        https://pypi.io/packages/source/f/%{modname}/%{modname}-%{version}.tar.gz
Source1:        %{name}-tmpfiles.conf

# https://github.com/fedora-infra/fedmsg/pull/389
Patch0:         fedmsg-m2crypto.patch

BuildArch:      noarch

# This is an old command/subpackage that has since been retired
Obsoletes:      fedmsg-tweet

BuildRequires:  python-devel
BuildRequires:  python-setuptools

# For tests
BuildRequires:  python-nose
BuildRequires:  python-six
BuildRequires:  python-mock
# Only for the test-replay test which is patched out
#BuildRequires:  python-sqlalchemy

BuildRequires:  python-moksha-hub >= 1.3.2
BuildRequires:  python-requests
BuildRequires:  m2crypto
BuildRequires:  python-m2ext
BuildRequires:  python-pygments
BuildRequires:  python-psutil
BuildRequires:  python-arrow
BuildRequires:  python-kitchen

%if 0%{?with_python3}
BuildRequires:  python%{python3_pkgversion}-devel
BuildRequires:  python%{python3_pkgversion}-setuptools
BuildRequires:  python%{python3_pkgversion}-devel
BuildRequires:  python%{python3_pkgversion}-setuptools
#BuildRequires:  python%{python3_pkgversion}-moksha-hub >= 1.3.2
BuildRequires:  python%{python3_pkgversion}-requests
BuildRequires:  python%{python3_pkgversion}-cryptography
BuildRequires:  python%{python3_pkgversion}-arrow
BuildRequires:  python%{python3_pkgversion}-kitchen
%endif

# This doesn't exist on F21.
%if 0%{?fedora} && 0%{?fedora} >= 22
BuildRequires:  python3-pkgversion-macros
%endif

%if 0%{?rhel} && 0%{?rhel} >= 7
BuildRequires:  python3-pkgversion-macros
%endif

%if 0%{?rhel} && 0%{?rhel} <= 6
BuildRequires:  python-ordereddict
BuildRequires:  python-argparse
BuildRequires:  python-logutils
%endif

%if 0%{?rhel} && 0%{?rhel} <= 6
# On rhel, we don't need systemd to build.  but we do on fedora.
%else
BuildRequires:  systemd
%endif

# Finally, make the 'fedmsg' master package require all these components
Requires:       python2-fedmsg-core = %{version}-%{release}
Requires:       python2-fedmsg-commands = %{version}-%{release}
Requires:       python2-fedmsg-consumers = %{version}-%{release}

%description
Python API used around Fedora Infrastructure to send and receive messages with
zeromq.  Includes some CLI tools.

%package -n python2-fedmsg-core
Summary:        Core python API for fedmsg
%{?python_provide:%python_provide python2-fedmsg-core}

Requires:       python-six
Requires:       python-zmq
Requires:       python-requests
Requires:       python-arrow
Requires:       python-kitchen
Requires:       m2crypto
Requires:       python-m2ext
Requires:       fedmsg-base = %{version}-%{release}

%if 0%{?rhel} && 0%{?rhel} <= 6
Requires:       python-ordereddict
Requires:       python-argparse
%endif

%description -n python2-fedmsg-core
Core Python API used around Fedora Infrastructure to send and receive messages
with zeromq.

%if 0%{?with_python3}
%package -n python%{python3_pkgversion}-fedmsg-core
Summary:    Core python%{python3_pkgversion} API for fedmsg

Requires:       python%{python3_pkgversion}-six
Requires:       python%{python3_pkgversion}-zmq
Requires:       python%{python3_pkgversion}-requests
Requires:       python%{python3_pkgversion}-arrow
Requires:       python%{python3_pkgversion}-kitchen
Requires:       python%{python3_pkgversion}-cryptography
Requires:       fedmsg-base = %{version}-%{release}

%description -n python%{python3_pkgversion}-fedmsg-core
Core python%{python3_pkgversion} API used around Fedora Infrastructure to send
and receive messages with zeromq.
%endif

%package -n python2-fedmsg-commands
Summary:        Basic fedmsg commands
%{?python_provide:%python_provide python2-fedmsg-commands}

Requires:       python-pygments
Requires:       python-psutil
Requires:       python2-fedmsg-core = %{version}-%{release}

%if 0%{?rhel} && 0%{?rhel} <= 6
Requires:       python-logutils
%endif

%description -n python2-fedmsg-commands
Basic CLI commands for fedmsg

%package -n python2-fedmsg-consumers
Summary:        Basic fedmsg consumers
%{?python_provide:%python_provide python2-fedmsg-consumers}

Requires:       python-moksha-hub >= 1.3.2
Requires:       python-pygments
Requires:       python-psutil
Requires:       python-daemon
Requires:       python2-fedmsg-core = %{version}-%{release}

%description -n python2-fedmsg-consumers
Moksha consumer API for fedmsg

%package base
Summary: Base file system layout for other fedmsg packages

%description base
This package contains some of the common filesystem layout shared by the
python2 and python3 versions of the fedmsg package.

%package announce
Summary: The fedmsg-announce command
Requires: %{name} = %{version}-%{release}

%description announce
This package contains the fedmsg-announce command for sending announcements.

%package collectd
Summary: A fedmsg plugin for collectd
Requires: %{name} = %{version}-%{release}

%description collectd
This package contains the fedmsg-collectd command which produces output
suitable for consumption by a collectd plugin.

%package hub
Summary: The FedMsg Hub
Requires: %{name} = %{version}-%{release}

%description hub
This package contains configuration and init scripts for the FedMsg hub.

%package relay
Summary: The FedMsg Relay
Requires: %{name} = %{version}-%{release}

%description relay
This package contains configuration and init scripts for the FedMsg relay.

%package irc
Summary: The FedMsg IRC Bot
Requires: %{name} = %{version}-%{release}
Requires: python-twisted-words

%description irc
This package contains configuration and init scripts for the FedMsg IRC bot.

%package gateway
Summary: The FedMsg Gateway daemon.
Requires: %{name} = %{version}-%{release}

%description gateway
This package contains configuration and init scripts for the FedMsg Gateway.
It will rebroadcast messages from the bus to a specially designated ZMQ pub
socket.  Useful for repeating messages outside a firewall.

%prep
%setup -q -n %{modname}-%{version}

%patch0 -p1

# This only got shipped with fedmsg-0.6.3
rm -f fedmsg.d/_tweet-real.py

# These are failing in mock for fedora.  Investigate why.
# We probably just need a new BuildReq
rm -f fedmsg/tests/test_replay.py
rm -f fedmsg/tests/test_crypto_gpg.py
# Also, sqlalchemy is required for those tests we're knocking out,
# so knock it out too.
sed -i "/'sqlalchemy.*$/d" setup.py

sed -i "/cryptography/d" setup.py
sed -i "/daemon/d" setup.py

# Copy the development config into the tests dir for the check section
cp -rf fedmsg.d fedmsg/tests/.

%if 0%{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}

# And.. these three aren't really required for python3 core stuff...
sed -i "/pygments/d" setup.py
sed -i "/psutil/d" setup.py

%endif

%build
%{__python} setup.py build

# Create this temporary symlink that's only needed for the test suite.
ln -s fedmsg/tests/test_certs dev_certs

# Unfortunately, neither of these tests will run on koji since they require
# some network connectivity.  With a note of sadness, we destroy them.
rm fedmsg/tests/test_hub.py
rm fedmsg/tests/test_threads.py

%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py build
popd
%endif

%check
%if 0%{?rhel} && 0%{?rhel} <= 6
# Check section removed until a RHEL6 bug with python-repoze-what-plugins-sql
# can be fixed.  It causes a fatal error in the test suite.
# https://bugzilla.redhat.com/show_bug.cgi?id=813925
%else
PYTHONPATH=$(pwd) python setup.py test
# Remove compiled .py files from config
rm -f %{buildroot}%{_sysconfdir}/fedmsg.d/*.py{c,o}
%endif

## XXX - no python3 tests for now until python-cryptography can do everything
## we need with regard to x509.
##%if 0%{?with_python3}
##pushd %{py3dir}
##PYTHONPATH=. nosetests-%{python3_version} tests/*.py
##popd
##%endif

%install
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py install -O1 --skip-build --root %{buildroot}

# These two modules aren't ready for python3 yet (due mostly to the absence of
# python3-twisted-core in Fedora).
rm -rf %{buildroot}%{python3_sitelib}/%{modname}/commands/
rm -rf %{buildroot}%{python3_sitelib}/%{modname}/consumers/

# Nuke all the commands.  Let the python2 install step re-install them.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268497
rm -rf %{buildroot}%{_bindir}/fedmsg-*

popd
%endif

%{__python} setup.py install -O1 --skip-build \
    --install-data=%{_datadir} --root %{buildroot}

%{__mkdir_p} %{buildroot}%{_sysconfdir}/fedmsg.d/
%{__cp} fedmsg.d/*.py %{buildroot}%{_sysconfdir}/fedmsg.d/.

%{__mkdir_p} %{buildroot}/%{_var}/run/%{modname}
%{__mkdir_p} %{buildroot}/%{_var}/log/%{modname}

%if 0%{?rhel} && 0%{?rhel} <= 6
%{__mkdir_p} %{buildroot}%{_sysconfdir}/init.d
%{__install} initsys/sysv/fedmsg-hub.init %{buildroot}%{_sysconfdir}/init.d/fedmsg-hub
%{__install} initsys/sysv/fedmsg-relay.init %{buildroot}%{_sysconfdir}/init.d/fedmsg-relay
%{__install} initsys/sysv/fedmsg-irc.init %{buildroot}%{_sysconfdir}/init.d/fedmsg-irc
%{__install} initsys/sysv/fedmsg-gateway.init %{buildroot}%{_sysconfdir}/init.d/fedmsg-gateway
%else
%{__mkdir_p} %{buildroot}%{_unitdir}
%{__install} -pm644 initsys/systemd/fedmsg-hub.service \
    %{buildroot}%{_unitdir}/fedmsg-hub.service
%{__install} -pm644 initsys/systemd/fedmsg-relay.service \
    %{buildroot}%{_unitdir}/fedmsg-relay.service
%{__install} -pm644 initsys/systemd/fedmsg-irc.service \
    %{buildroot}%{_unitdir}/fedmsg-irc.service
%{__install} -pm644 initsys/systemd/fedmsg-gateway.service \
    %{buildroot}%{_unitdir}/fedmsg-gateway.service
%endif

# Logrotate configuration
%{__mkdir_p} %{buildroot}/%{_sysconfdir}/logrotate.d
%{__install} logrotate %{buildroot}/%{_sysconfdir}/logrotate.d/%{modname}
chmod 0644 %{buildroot}/%{_sysconfdir}/logrotate.d/%{modname}

# tmpfiles.d
%{__install} -Dm0644 %{SOURCE1} %{buildroot}%{_prefix}/lib/tmpfiles.d/%{name}.conf

# Remove compiled .py files from config
rm -f %{buildroot}%{_sysconfdir}/fedmsg.d/*.py{c,o}


%pre base
%{_sbindir}/groupadd -r %{modname} &>/dev/null || :
%{_sbindir}/useradd  -r -s /sbin/nologin -d %{_datadir}/%{modname} -M \
                     -c 'FedMsg' -g %{modname} %{modname} &>/dev/null || :


%if 0%{?rhel} && 0%{?rhel} <= 6
%preun hub
if [ $1 -eq 0 ]; then
    /sbin/service fedmsg-hub stop >/dev/null 2>&1
    /sbin/chkconfig --del fedmsg-hub
fi

%preun relay
if [ $1 -eq 0 ]; then
    /sbin/service fedmsg-relay stop >/dev/null 2>&1
    /sbin/chkconfig --del fedmsg-relay
fi

%preun irc
if [ $1 -eq 0 ]; then
    /sbin/service fedmsg-irc stop >/dev/null 2>&1
    /sbin/chkconfig --del fedmsg-irc
fi

%preun gateway
if [ $1 -eq 0 ]; then
    /sbin/service fedmsg-gateway stop >/dev/null 2>&1
    /sbin/chkconfig --del fedmsg-gateway
fi
%endif

%files
%doc doc/ README.rst LICENSE

%files -n python2-fedmsg-core
%doc doc/ README.rst LICENSE

%dir %{python2_sitelib}/%{modname}/

%{python2_sitelib}/%{modname}/__init__.py*
%{python2_sitelib}/%{modname}/config.py*
%{python2_sitelib}/%{modname}/core.py*
%{python2_sitelib}/%{modname}/utils.py*

%{python2_sitelib}/%{modname}/crypto/
%{python2_sitelib}/%{modname}/encoding/
%{python2_sitelib}/%{modname}/meta/
%{python2_sitelib}/%{modname}/replay/
%{python2_sitelib}/%{modname}/tests/
%{python2_sitelib}/%{modname}/text

%{python2_sitelib}/%{modname}-%{version}-py%{pyver}.egg-info/

%if 0%{?with_python3}
%files -n python%{python3_pkgversion}-fedmsg-core
%doc doc/ README.rst LICENSE

%dir %{python3_sitelib}/%{modname}/

%{python3_sitelib}/%{modname}/__init__.py*
%{python3_sitelib}/%{modname}/config.py*
%{python3_sitelib}/%{modname}/core.py*
%{python3_sitelib}/%{modname}/utils.py*

%{python3_sitelib}/%{modname}/crypto/
%{python3_sitelib}/%{modname}/encoding/
%{python3_sitelib}/%{modname}/meta/
%{python3_sitelib}/%{modname}/replay/
%{python3_sitelib}/%{modname}/tests/
%{python3_sitelib}/%{modname}/text

%{python3_sitelib}/%{modname}/__pycache__/

%{python3_sitelib}/%{modname}-%{version}-py%{python3_version}.egg-info/
%endif

%files -n python2-fedmsg-commands
%doc doc/ README.rst LICENSE
%{python2_sitelib}/%{modname}/commands/
%{_bindir}/fedmsg-logger
%{_bindir}/fedmsg-tail
%{_bindir}/fedmsg-trigger
%{_bindir}/fedmsg-config
%{_bindir}/fedmsg-dg-replay

%files -n python2-fedmsg-consumers
%doc doc/ README.rst LICENSE
%{python2_sitelib}/%{modname}/consumers/

%files base
%doc doc/ README.rst LICENSE

%attr(755, %{modname}, %{modname}) %dir %{_var}/log/%{modname}
%attr(775, %{modname}, %{modname}) %dir %{_var}/run/%{modname}

%dir %{_sysconfdir}/fedmsg.d/

# Own these only on rhel6 due to some byte-compiling I can't seem to control
%if 0%{?rhel} && 0%{?rhel} <= 6
%config(noreplace) %{_sysconfdir}/fedmsg.d/base.py*
%config(noreplace) %{_sysconfdir}/fedmsg.d/endpoints.py*
%config(noreplace) %{_sysconfdir}/fedmsg.d/logging.py*
%config(noreplace) %{_sysconfdir}/fedmsg.d/ssl.py*
%else
%config(noreplace) %{_sysconfdir}/fedmsg.d/base.py
%config(noreplace) %{_sysconfdir}/fedmsg.d/endpoints.py
%config(noreplace) %{_sysconfdir}/fedmsg.d/logging.py
%config(noreplace) %{_sysconfdir}/fedmsg.d/ssl.py
%endif

%config(noreplace) %{_sysconfdir}/logrotate.d/%{modname}

%{_prefix}/lib/tmpfiles.d/%{name}.conf

%files announce
%{_bindir}/fedmsg-announce

%files collectd
%{_bindir}/fedmsg-collectd

%files hub
%{_bindir}/fedmsg-hub
%if 0%{?rhel} && 0%{?rhel} <= 6
%{_sysconfdir}/init.d/fedmsg-hub
%else
%{_unitdir}/fedmsg-hub.service
%endif

%files relay
%{_bindir}/fedmsg-relay
%if 0%{?rhel} && 0%{?rhel} <= 6
%{_sysconfdir}/init.d/fedmsg-relay
%config(noreplace) %{_sysconfdir}/fedmsg.d/relay.py*
%else
%{_unitdir}/fedmsg-relay.service
%config(noreplace) %{_sysconfdir}/fedmsg.d/relay.py
%endif


%files irc
%{_bindir}/fedmsg-irc
%if 0%{?rhel} && 0%{?rhel} <= 6
%{_sysconfdir}/init.d/fedmsg-irc
%config(noreplace) %{_sysconfdir}/fedmsg.d/ircbot.py*
%else
%{_unitdir}/fedmsg-irc.service
%config(noreplace) %{_sysconfdir}/fedmsg.d/ircbot.py
%endif

%files gateway
%{_bindir}/fedmsg-gateway
%if 0%{?rhel} && 0%{?rhel} <= 6
%{_sysconfdir}/init.d/fedmsg-gateway
%config(noreplace) %{_sysconfdir}/fedmsg.d/gateway.py*
%else
%{_unitdir}/fedmsg-gateway.service
%config(noreplace) %{_sysconfdir}/fedmsg.d/gateway.py
%endif

%changelog
* Thu Nov 10 2016 Ralph Bean <rbean@redhat.com> - 0.18.0-1
- new version

* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.17.2-2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

* Mon Apr 04 2016 Ralph Bean <rbean@redhat.com> - 0.17.2-1
- new version

* Thu Mar 03 2016 Ralph Bean <rbean@redhat.com> - 0.16.4-1
- new version

* Thu Mar 03 2016 Ralph Bean <rbean@redhat.com> - 0.16.3-1
- new version

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Nov 20 2015 Ralph Bean <rbean@redhat.com> - 0.16.2-6
- Replace manual Provides with the python_provide macro.

* Sun Nov 15 2015 Ralph Bean <rbean@redhat.com> - 0.16.2-5
- Rename subpackges to explicit python2 prefixes and add Provides
  on the old names.

* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.16.2-4
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5

* Thu Oct 29 2015 Ralph Bean <rbean@redhat.com> - 0.16.2-3
- Only pull in python3-pkgversion-macros on f22 and later and epel7.

* Sat Oct 24 2015 Ralph Bean <rbean@redhat.com> - 0.16.2-2
- Create the fedmsg user in the fedmsg-base subpackage for rhbz#1274973.

* Thu Oct 08 2015 Ralph Bean <rbean@redhat.com> - 0.16.2-1
- new version

* Fri Oct 02 2015 Ralph Bean <rbean@redhat.com> - 0.16.1-4
- Remove commands after py3 installation step.  Let the python2
  install step re-install them.

* Wed Sep 23 2015 Ralph Bean <rbean@redhat.com> - 0.16.1-3
- Knock 'daemon' out of setuptools requirements as it's only
  really needed on el6.

* Wed Sep 23 2015 Ralph Bean <rbean@redhat.com> - 0.16.1-2
- Knock 'cryptography' out of the setuptools requirements for epel7.

* Wed Sep 23 2015 Ralph Bean <rbean@redhat.com> - 0.16.1-1
- new version

* Sat Sep 05 2015 Ralph Bean <rbean@redhat.com> - 0.16.0-1
- new version

* Thu Aug 27 2015 Nathaniel Yazdani <nyazdani@redhat.com> - 0.15.0-3
- Move duplicate fedmsg-collectd out of python-fedmsg-commands
- Remove unneeded python-daemon and python-moksha-hub dependencies from python-fedmsg-commands
- Add missing python-daemon dependency to python-fedmsg-consumers

* Wed Aug 26 2015 Ralph Bean <rbean@redhat.com> - 0.15.0-2
- Swap order of py2 and py3 in the install section for #1255974.

* Wed Aug 19 2015 Ralph Bean <rbean@redhat.com> - 0.15.0-1
- new version

* Mon Jun 29 2015 Ralph Bean <rbean@redhat.com> - 0.14.1-1
- new version

* Mon Jun 29 2015 Ralph Bean <rbean@redhat.com> - 0.14.0-4
- Added dep on python-kitchen.

* Thu Jun 25 2015 Ralph Bean <rbean@redhat.com> - 0.14.0-3
- Try getting the package ready for EPEL7 + python34.

* Thu Jun 25 2015 Ralph Bean <rbean@redhat.com> - 0.14.0-2
- Add omitted 'fedmsg' package back in.

* Thu Jun 25 2015 Ralph Bean <rbean@redhat.com> - 0.14.0-1
- Enable python3 subpackage
- Split fedmsg into lots of smaller subpackages to accomodate python3.

* Tue Jun 23 2015 Ralph Bean <rbean@redhat.com> - 0.13.3-1
- new version

* Tue Jun 23 2015 Ralph Bean <rbean@redhat.com> - 0.13.2-1
- new version

* Wed Jun 17 2015 Ralph Bean <rbean@redhat.com> - 0.13.1-4
- Re-enable cert validation for end clients.

* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.13.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Tue May 26 2015 Ralph Bean <rbean@redhat.com> - 0.13.1-2
- Fix logrotate mode.

* Thu Apr 23 2015 Ralph Bean <rbean@redhat.com> - 0.13.1-1
- new version
- add dep on python-six
- adjust ownership of fedmsg.d/ files.

* Wed Apr 15 2015 Ralph Bean <rbean@redhat.com> - 0.13.0-1
- new version

* Tue Mar 24 2015 Ralph Bean <rbean@redhat.com> - 0.12.3-1
- new version

* Sun Mar 22 2015 Ralph Bean <rbean@redhat.com> - 0.12.2-2
- No longer package compiled py files in /etc/fedmsg.d/

* Thu Feb 19 2015 Ralph Bean <rbean@redhat.com> - 0.12.2-1
- new version

* Thu Feb 19 2015 Ralph Bean <rbean@redhat.com> - 0.12.1-1
- new version

* Tue Feb 10 2015 Ralph Bean <rbean@redhat.com> - 0.12.0-2
- rebuilt

* Tue Feb 10 2015 Ralph Bean <rbean@redhat.com> - 0.12.0-1
- new version
- Drop test suite patch.

* Fri Nov 07 2014 Ralph Bean <rbean@redhat.com> - 0.11.1-1
- Latest upstream.
- Systemd services now restart on failure.
- Items in the conglomerators are now de-duplicated (bodhi).
- You can now call .tail_messages() while configured for active mode (koschei).
- Apply patch to try and get tests passing in koji again.

* Thu Oct 30 2014 Luke Macken <lmacken@redhat.com> - 0.11.0-3
- Add a tmpfiles.d configuration for /var/run/fedmsg
- Make the runtime path group-writable

* Wed Oct 22 2014 Luke Macken <lmacken@redhat.com> - 0.11.0-2
- Fix the permissions on the systemd service files

* Thu Oct 09 2014 Ralph Bean <rbean@redhat.com> - 0.11.0-1
- Fix harmless error about twisted.words at daemon startup.
- Optional shortening of links in IRC.
- IRC bot now reconnects when dropped.
- New fedmsg.meta.msg2long_form API.

* Wed Aug 27 2014 Ralph Bean <rbean@redhat.com> - 0.10.0-1
- New conglomerate API.
- New dep on python-arrow.

* Fri Aug 08 2014 Ralph Bean <rbean@redhat.com> - 0.9.3-1
- Fix broken default config.  Disable backlog out of the box.

* Fri Aug 08 2014 Ralph Bean <rbean@redhat.com> - 0.9.2-1
- Remove patches.

* Thu Jul 24 2014 Ralph Bean <rbean@redhat.com> - 0.9.1-3
- Update patch.

* Thu Jul 24 2014 Ralph Bean <rbean@redhat.com> - 0.9.1-2
- Bring in two patches from upstream to fix issues on el7.

* Fri Jul 18 2014 Ralph Bean <rbean@redhat.com> - 0.9.1-1
- Upstream releases with fixes for el6.

* Fri Jul 18 2014 Ralph Bean <rbean@redhat.com> - 0.9.0-1
- Daemons can now process backlog at startup.
- New fedmsg-dg-replay command for debugging.
- Reorganized docs, especially the topics section.
- New dep on python-psutil.

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Wed Apr 30 2014 Ralph Bean <rbean@redhat.com> - 0.8.0-1
- Latest upstream with new monitoring capabilities.
- fedmsg-tweet is retired.

* Tue Mar 25 2014 Ralph Bean <rbean@redhat.com> - 0.7.7-2
- Added ownership of /etc/fedmsg.d/

* Tue Mar 25 2014 Ralph Bean <rbean@redhat.com> - 0.7.7-1
- fedmsg-config and fedmsg-tail now share the --query option.
- Added a deployment doc.
- New fedmsg.crypto.validate_signed_by convenience function.
- Username is now automatically appended to the fedmsg-logger meta subtitle.
- A UserWarning is now issued if no fedmsg.meta plugins are found.
- Fixed the fedmsg.meta __name__ regex.
- Removed TCP_KEEPALIVE debug statements.

* Fri Feb 21 2014 Ralph Bean <rbean@redhat.com> - 0.7.6-2
- Copy test config into the test directory before building.

* Fri Feb 21 2014 Ralph Bean <rbean@redhat.com> - 0.7.6-1
- Latest upstream.
- New option to fedmsg-config to query for particular values.
- Avoid pkg_resources warning.

* Sun Feb 09 2014 Ralph Bean <rbean@redhat.com> - 0.7.5-1
- Latest upstream.
- Gource tail is removed.
- Fixes to fedmsg-tail.
- Updated documentation.
- Messages now carry a 'crypto' field indicating their sig type.
- Seamless switching between x509 and gpg crypto validation.

* Wed Jan 15 2014 Ralph Bean <rbean@redhat.com> - 0.7.4-1
- Latest upstream.
- Protect against NotImplementedError in fedmsg-tail.
- Fix documentation templates for broader compatibility with python tools.
- Scrub "None" links from the irc bot.

* Fri Dec 06 2013 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.7.2-2
- Change BuildRequires from python-setuptools-devel to python-setuptools
  See https://fedoraproject.org/wiki/Changes/Remove_Python-setuptools-devel

* Wed Nov 13 2013 Ralph Bean <rbean@redhat.com> - 0.7.2-1
- Latest upstream.
- Cap message timestamp at the second-level precision.
- Automatically listify endpoints.
- Code cleaning.

* Fri Sep 27 2013 Ralph Bean <rbean@redhat.com> - 0.7.1-2
- Remove old patch.

* Fri Sep 27 2013 Ralph Bean <rbean@redhat.com> - 0.7.1-1
- Bugfix to parsing certificate revocation list serials.

* Fri Sep 06 2013 Ralph Bean <rbean@redhat.com> - 0.7.0-5
- Fix that messed up sed statement.

* Fri Sep 06 2013 Ralph Bean <rbean@redhat.com> - 0.7.0-4
- Temporarily disable message validation by default.

* Thu Sep 05 2013 Ralph Bean <rbean@redhat.com> - 0.7.0-3
- Patch tests to use socket.gethostname consistently.

* Thu Sep 05 2013 Ralph Bean <rbean@redhat.com> - 0.7.0-2
- Knock out sqlalchemy test dep.

* Thu Sep 05 2013 Ralph Bean <rbean@redhat.com> - 0.7.0-1
- Latest upstream.
- Add new fedmsg-trigger command.
- Remove the gpg and replay tests for now.
- Conditionalize systemd requirement.

* Tue Aug 06 2013 Dennis Gilmore <dennis@ausil.us> - 0.6.8-6
- BuildRequire systemd

* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Tue May 14 2013 Ralph Bean <rbean@redhat.com> - 0.6.8-4
- Make file ownership over /etc/fedmsg.d explicit per sub-package.

* Mon Mar 25 2013 Ralph Bean <rbean@redhat.com> - 0.6.8-3
- Added forgotten mkdir for %%{buildroot}%%{_unitdir}

* Mon Mar 25 2013 Ralph Bean <rbean@redhat.com> - 0.6.8-2
- Moved .service files from a dbus folder to a systemd folder
  https://github.com/fedora-infra/fedmsg/issues/125
- Marked .service files as no longer %%config files.

* Mon Mar 04 2013 Ralph Bean <rbean@redhat.com> - 0.6.8-1
- New fedmsg-tail --gource option for visualizations.
- fedmsg-tweet reorganized to be more similar to other daemons.

* Thu Jan 31 2013 Ralph Bean <rbean@redhat.com> - 0.6.7-1
- Configurable colors for fedmsg-irc
- Better error checking in fedmsg-tweet
- Enhanced docs.

* Sun Jan 27 2013 Ralph Bean <rbean@redhat.com> - 0.6.6-2
- Disable sysv %%preun sections for Fedora

* Mon Jan 21 2013 Ralph Bean <rbean@redhat.com> - 0.6.6-1
- Typofix.
- Support loading remote CA cert for end-user message validation.

* Mon Jan 21 2013 Ralph Bean <rbean@redhat.com> - 0.6.5-1
- Latest upstream
- Fix JSON encoding between php and python
- Stop fedmsg-tweet from falling over.
- Improved logging.
- Improved crl cache location; don't keep it in /tmp/
- Fix a crl permissions issue with fedmsg-tail.
- Remove duplicate help strings for commands.
- Added systemd service files.
- Multiple outbound relay endpoints are now possible.
- Removed old chkconfig statements.

* Fri Dec 07 2012 Ralph Bean <rbean@redhat.com> - 0.6.3-2
- Removed a file that shouldn't have been included.

* Wed Dec 05 2012 Ralph Bean <rbean@redhat.com> - 0.6.3-1
- Use python-logutils for dictConfig on py2.6.
- Attempt to fixup rhel conditionals.
- Added test dependency on python-six and python-mock.

* Wed Dec 05 2012 Ralph Bean <rbean@redhat.com> - 0.6.2-1
- New support for zmq_tcp_keepalive.
- New logging config.
- Simplified fedmsg.commands internally.

* Tue Nov 27 2012 Ralph Bean <rbean@redhat.com> - 0.6.1-1
- Stripped fedmsg.text out into its own plugin module.
- Commands are now defined as classes and use the logging module.
- Bugfixes to fedmsg-collectd.
- Renamed fedmsg-tweet.ini to fedmsg-tweet.init.

* Thu Nov 15 2012 Ralph Bean <rbean@redhat.com> - 0.6.0-1
- New upstream version.
- New service and subpackage: fedmsg-tweet.
- New command and subpackage: fedmsg-announce.
- New command and subpackage: fedmsg-collectd.
- New routing_policy config and extension of fedmsg.crypto.
- New functions in fedmsg.text to extract usernames and packages for a msg.
- Updated docs
- Pull in logrotate configuration from upstream.
- Updated rhel conditionals.
- Remove old temporary BR on orbited

* Wed Nov 14 2012 Ralph Bean <rbean@redhat.com> - 0.5.6-2
- Added a logrotate configuration.

* Thu Oct 25 2012 Ralph Bean <rbean@redhat.com> - 0.5.6-1
- More fedmsg.text enhancements.
- New fedmsg-collectd command.
- Reenabled test_text.py

* Tue Oct 23 2012 Ralph Bean <rbean@redhat.com> - 0.5.5-1
- Lots of work on enhancing and simplifying fedmsg.text from Luke Macken.
- Remove test_text.py since it now depends on test_hub.py

* Tue Oct 09 2012 Ralph Bean <rbean@redhat.com> - 0.5.4-4
- Disable those few tests that require network connectivity for koji.

* Tue Oct 09 2012 Ralph Bean <rbean@redhat.com> - 0.5.4-3
- BuildRequires on python-pygments.

* Tue Oct 09 2012 Ralph Bean <rbean@redhat.com> - 0.5.4-2
- BuildRequires on python-pygments.

* Mon Oct 08 2012 Ralph Bean <rbean@redhat.com> - 0.5.4-1
- New mediawiki, tagger, and git icons in fedmsg.text.
- Create symlink of dev_certs in build section so tests can pass.
- Re-enable the test suite in %%check again.
- fedmsg.text entries for tagger rank changes.
- Updated default FI endpoints (for staging).
- Remove full text from mediawiki messages to reduce spam.
- Recursively merge dicts in /etc/fedmsg.d/

* Fri Oct 05 2012 Ralph Bean <rbean@redhat.com> - 0.5.3-1
- Icons and fedmsg.text support for fedmsg-notify
- Re-disabled the tests to get a quick release out for fedmsg-notify.

* Thu Oct 04 2012 Luke Macken <lmacken@redhat.com> - 0.5.2-2
- Re-enable the test suite in %%check which got accidently removed.

* Wed Oct 03 2012 Ralph Bean <rbean@redhat.com> - 0.5.2-1
- Allow timeout when connecting to a non-existant fedmsg-relay
- fedmsg.text entries for new lookaside messages
- fedmsg.text groundwork support for icons
- Enhancements to the docs
- Fixed regression in fedmsg-irc

* Thu Sep 27 2012 Ralph Bean <rbean@redhat.com> - 0.5.1-1
- Fixed links in meetbot reprs
- fedmsg.text entries for pkgdb2branch and releng
- unicode bugfix for fedmsg-tail --terse
- Fix bug alongside python-moksha-hub-1.0.3-1
- New defaults fedora-infrastructure endpoints
- Improved docs
- Links to real diffs for mediawiki messages
- Specifiable and longer default tcp timeout for fedmsg-irc
- Improved config parsing for fedmsg-irc
- Bugfix to git-hook; ignore pushed tags instead of crashing
- Allow inner context to be destroyed and recreated inside a thread

* Thu Sep 27 2012 Ralph Bean <rbean@redhat.com> - 0.5.0-2
- Require python-pygments.

* Wed Sep 19 2012 Ralph Bean <rbean@redhat.com> - 0.5.0-1
- Depend on new Moksha
- Massive docs improvement.
- Minor API simplification.
- Suppress some annoying warnings from fedmsg-tail.

* Fri Aug 31 2012 Ralph Bean <rbean@redhat.com> - 0.4.0-1
- Bugfix to fedmsg.encoding.

* Fri Aug 31 2012 Ralph Bean <rbean@redhat.com> - 0.3.9-1
- Bugfix to fedmsg-gateway.
- to_json utility for sqlalchemy.
- More convenient default config for end users.

* Thu Aug 23 2012 Ralph Bean <rbean@redhat.com> - 0.3.8-1
- fedmsg-gateway command, new!
- Improved thread cleanup with weakref.
- --terse option for fedmsg-tail
- Meetbot text processing support.
- Update to consumer API.. systematized enablement.

* Fri Aug 17 2012 Ralph Bean <rbean@redhat.com> - 0.3.6-1
- Expanded reprs.  Support for fedoratagger-0.2.2-1 messages.
- Unicode bugfix.

* Tue Aug 14 2012 Ralph Bean <rbean@redhat.com> - 0.3.5-1
- IRC colors
- fedmsg2repr updates (Luke Macken)
- Removed fedmsg-status and the heartbeat producer

* Mon Aug 13 2012 Ralph Bean <rbean@redhat.com> - 0.3.4-1
- Threadsafety bugfixes to fedmsg-tail
- New fedmsg.text items from Luke Macken.

* Sun Aug 12 2012 Ralph Bean <rbean@redhat.com> - 0.3.3-1
- thread safety (for bodhi masher)

* Wed Aug 08 2012 Ralph Bean <rbean@redhat.com> - 0.3.2-1
- msg2repr updates for scm.

* Wed Aug 08 2012 Ralph Bean <rbean@redhat.com> - 0.3.1-1
- msg2repr updates
- fedmsg-logger grepping.

* Tue Aug 07 2012 Ralph Bean <rbean@redhat.com> - 0.3.0-1
- Bugfix to fedmsg.text.

* Tue Aug 07 2012 Ralph Bean <rbean@redhat.com> - 0.2.9-1
- Upstream update including nicer message for fedmsg-irc.
- fedmsg.text.msg2repr

* Mon Aug 06 2012 Ralph Bean <rbean@redhat.com> - 0.2.7-4
- Remove unnecessary %%ghost on /var/run/fedmsg.

* Mon Aug 06 2012 Ralph Bean <rbean@redhat.com> - 0.2.7-3
- Hopefully fix to creation of /var/run/fedmsg.

* Mon Aug 06 2012 Ralph Bean <rbean@redhat.com> - 0.2.7-2
- Added a forgotten new requirement on python-requests.

* Sun Aug 05 2012 Ralph Bean <rbean@redhat.com> - 0.2.7-1
- Upstream bugfix to -logger and enhancement to -irc.

* Mon Jul 30 2012 Ralph Bean <rbean@redhat.com> - 0.2.6-2
- Require moksha >= 0.8.8

* Mon Jul 30 2012 Ralph Bean <rbean@redhat.com> - 0.2.6-1
- Upstream bugfixes and API enhancements.

* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Sun Jul 15 2012 Ralph Bean <rbean@redhat.com> - 0.2.5-1
- Upstream crypto updates in preparation for a more realistic X509 setup.

* Fri Jul 13 2012 Ralph Bean <rbean@redhat.com> - 0.2.4-1
- Upstream bugfix for when ssl is disabled.

* Wed Jul 11 2012 Ralph Bean <rbean@redhat.com> - 0.2.3-1
- Upstream bump that fixes some typos.

* Tue Jul 10 2012 Ralph Bean <rbean@redhat.com> - 0.2.2-3
- Added deps on python-argparse for py < 2.7 (rhel6)

* Sat Jul 07 2012 Ralph Bean <rbean@redhat.com> - 0.2.2-2
- Added deps on m2crypto and python-m2ext

* Sat Jul 07 2012 Ralph Bean <rbean@redhat.com> - 0.2.2-1
- Update to fedmsg-irc to fix lineRate issues
- fedmsg.crypto module - sign and validate messages

* Mon Jun 11 2012 Ralph Bean <rbean@redhat.com> - 0.2.1-2
- Require moksha >= 0.8.3

* Mon Jun 11 2012 Ralph Bean <rbean@redhat.com> - 0.2.1-1
- Override producers and consumers entry-points in the hub.  Should fix a
  collision that fedmsg-irc is having with fedoracommunity.

* Mon Jun 11 2012 Ralph Bean <rbean@redhat.com> - 0.2.0-4
- Introduce temporary hard dep on orbited.

* Mon Jun 11 2012 Ralph Bean <rbean@redhat.com> - 0.2.0-3
- /var/log/fedmsg wasn't being created correctly.

* Sat Jun 09 2012 Ralph Bean <rbean@redhat.com> - 0.2.0-2
- Split package into different daemonizable components.

* Thu Jun 07 2012 Ralph Bean <rbean@redhat.com> - 0.1.8-1
- Split config up into /etc/fedmsg.d/
- Removed tests.

* Wed Jun 06 2012 Ralph Bean <rbean@redhat.com> - 0.1.7-1
- Bugfix and tests.
- Added %%check section.

* Mon Jun 04 2012 Ralph Bean <rbean@redhat.com> - 0.1.6-1
- Support multiple endpoints per node-service.

* Tue May 29 2012 Ralph Bean <rbean@redhat.com> - 0.1.5-1
- Support multiple nodes-per-service.

* Fri May 25 2012 Ralph Bean <rbean@redhat.com> - 0.1.4-1
- Fresh version with removed shebang for packaging.
- %%define -> %%global
- Fixed end-of-line encodings in doc/conf.py

* Fri May 25 2012 Ralph Bean <rbean@redhat.com> - 0.1.3-2
- Renamed to just 'fedmsg' from python-fedmsg.

* Fri May 25 2012 Ralph Bean <rbean@redhat.com> - 0.1.3-1
- Integrating various pieces.  IRC bot fixes.
- Fixed a few specfile typos.

* Fri May 25 2012 Ralph Bean <rbean@redhat.com> - 0.1.2-1
- Version bump.

* Wed May 02 2012 Ralph Bean <rbean@redhat.com> - 0.1.1-2
- Removed clean section
- Removed defattr in files section
- Removed unnecessary references to buildroot

* Thu Apr 26 2012 Ralph Bean <rbean@redhat.com> - 0.1.1-1
- Support for busmon websocket options.

* Sat Apr 14 2012 Ralph Bean <rbean@redhat.com> - 0.1.0-1
- Initial packaging.