The package rpms/prewikka.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/prewikka.git/commit/?id=b1572e729ea9....
Change: -ExclusiveArch: %{ix86} x86_64
Thanks.
Full change: ============
commit b1572e729ea938a2de90612c80a19bb1047baa9c Author: Thomas Andrejak thomas.andrejak@gmail.com Date: Wed Oct 11 18:57:52 2017 +0200
Bump version 4.0.0
diff --git a/.gitignore b/.gitignore index 7c7977c..5ba8357 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/prewikka-3.1.0.tar.gz +/prewikka-4.0.0.tar.gz diff --git a/prewikka-4.0.0-fix_python3.patch b/prewikka-4.0.0-fix_python3.patch new file mode 100644 index 0000000..3428614 --- /dev/null +++ b/prewikka-4.0.0-fix_python3.patch @@ -0,0 +1,110 @@ +--- ./prewikka/dataprovider/__init__.py 2017-07-18 13:45:57.000000000 +0200 ++++ ./prewikka/dataprovider/__init__.py 2017-10-07 17:10:09.140721871 +0200 +@@ -22,12 +22,15 @@ + import copy + import time + import types ++import sys + from datetime import datetime + + from prewikka import error, hookmanager, pluginmanager + from prewikka.utils import AttrObj, CachingIterator, compat, json + from prewikka.utils.timeutil import parser + ++if sys.version_info >= (3, 0): ++ long = int + + def _str_to_datetime(date): + if date.isdigit(): +--- ./prewikka/session/session.py 2017-07-18 13:45:57.000000000 +0200 ++++ ./prewikka/session/session.py 2017-10-07 17:13:02.224865916 +0200 +@@ -23,6 +23,7 @@ + import os + import struct + import time ++import sys + + from prewikka import database, hookmanager, log, pluginmanager, usergroup, utils + from prewikka.error import PrewikkaUserError, RedirectionError +@@ -137,7 +138,11 @@ + t = time.time() + + self._db.delete_expired_sessions(t - self._expiration) +- sessionid = text_type(binascii.hexlify(os.urandom(16) + struct.pack(b">d", t))) ++ sessionid = binascii.hexlify(os.urandom(16) + struct.pack(b">d", t)) ++ if sys.version_info >= (3, 0): ++ sessionid = sessionid.decode('ascii') ++ ++ sessionid = text_type(sessionid) + + self._db.create_session(sessionid, user, int(t)) + self.__set_session(request, sessionid) +--- ./prewikka/utils/json.py 2017-07-18 13:45:57.000000000 +0200 ++++ ./prewikka/utils/json.py 2017-10-07 17:14:59.718248149 +0200 +@@ -21,6 +21,7 @@ + + import datetime + import json ++from six import with_metaclass + + from prewikka.utils import html + +@@ -36,8 +37,7 @@ + return nclass + + +-class JSONObject(object): +- __metaclass__ = _JSONMetaClass ++class JSONObject(with_metaclass(_JSONMetaClass, object)): + + def __jsonobj__(self): + return { "__prewikka_class__": (self.__class__.__name__, self.__json__()) } +--- ./prewikka/utils/url.py 2017-07-18 13:45:57.000000000 +0200 ++++ ./prewikka/utils/url.py 2017-10-07 17:16:41.927970738 +0200 +@@ -56,7 +56,11 @@ + else: + authority = tpl[0].encode('idna') + ":%s" % tpl[1] + +- return urlunsplit((scheme.encode(encoding), authority, ++ sc = scheme.encode(encoding) ++ if sys.version_info >= (3, 0): ++ sc = quote(sc, safe) ++ ++ return urlunsplit((sc, authority, + quote(path.encode(encoding), safe), + quote(query.encode(encoding), safe), + quote(frag.encode(encoding), safe))) +--- ./prewikka/web/request.py 2017-07-18 13:45:57.000000000 +0200 ++++ ./prewikka/web/request.py 2017-10-07 17:21:21.645737400 +0200 +@@ -40,7 +40,11 @@ + self._buffersize = buffersize + + def flush(self): +- self._wcb(''.join(self._dlist)) ++ if sys.version_info >= (3, 0): ++ self._wcb(''.join((x.decode('utf-8') for x in self._dlist)).encode('utf-8')) ++ else: ++ self._wcb(''.join(self._dlist)) ++ + self._dlist = [] + self._len = 0 + +@@ -97,10 +101,16 @@ + # Join is used in place of concatenation / formatting, because we + # prefer performance over readability in this place + if event: +- self._buffer.write("".join(["event: ", event.encode("utf8"), "\n"])) ++ if sys.version_info >= (3, 0): ++ self._buffer.write("".join(["event: ", text_type(event), "\n"]).encode("utf8")) ++ else: ++ self._buffer.write("".join(["event: ", event.encode('utf-8'), "\n"])) + + if data: +- self._buffer.write("".join(["data: ", data.encode("utf8"), "\n\n"])) ++ if sys.version_info >= (3, 0): ++ self._buffer.write("".join(["data: ", text_type(data), "\n\n"]).encode("utf8")) ++ else: ++ self._buffer.write("".join(["data: ", data.encode('utf-8'), "\n\n"])) + + if sync: + self._buffer.flush() diff --git a/prewikka.spec b/prewikka.spec index f150df5..081357e 100644 --- a/prewikka.spec +++ b/prewikka.spec @@ -1,31 +1,28 @@ Name: prewikka -Version: 3.1.0 -Release: 4%{?dist} +Version: 4.0.0 +Release: 1%{?dist} Summary: Graphical front-end analysis console for IDMEF License: GPLv2+ URL: https://www.prelude-siem.org/ -Source0: https://www.prelude-siem.org/pkg/src/3.1.0/%%7Bname%7D-%%7Bversion%7D.tar.gz +Source0: https://www.prelude-siem.org/pkg/src/%%7Bversion%7D/%%7Bname%7D-%%7Bversion%... +# https://www.prelude-siem.org/issues/912 +Patch0: prewikka-4.0.0-fix_python3.patch
BuildRequires: gettext BuildRequires: python2-devel -# For now, Prewikka works only with python2 +BuildRequires: python3-devel BuildRequires: pkgconfig(python2) +BuildRequires: pkgconfig(python3) BuildRequires: python2-configargparse -BuildRequires: python-cheetah -BuildRequires: python-lesscpy +BuildRequires: python3-configargparse +BuildRequires: python2-babel +BuildRequires: python3-babel +BuildRequires: python2-lesscpy +BuildRequires: python3-lesscpy BuildRequires: python2-setuptools +BuildRequires: python3-setuptools
-Requires: python2-babel -Requires: python-cheetah -Requires: python2-prelude >= %{version} -Requires: python2-preludedb >= %{version} -Requires: pytz -Requires: python2-dateutil - -# Cannot build as noarch until libprelude is ported. -# Comment out BuildArch: noarch for now. -# BuildArch: noarch -ExclusiveArch: %{ix86} x86_64 +Requires: python3-%{name} >= %{version}
# Since mass rebuild, debugpackage wont works for prewikka %define debug_package %{nil} @@ -37,25 +34,77 @@ provides alert aggregation and heartbeat views, and has user customization and configurable filters. Prewikka also provides access to external tools such as whois and traceroute.
+%package -n python2-%{name} +Summary: Graphical front-end analysis console for IDMEF +Requires: %{name} = %{version}-%{release} +Requires: python2-prelude >= %{version} +Requires: python2-preludedb >= %{version} +Requires: python2-babel +Requires: python2-mako +Requires: python2-pyyaml +Requires: python2-werkzeug +Requires: python2-dateutil +Requires: python2-pytz +%{?python_provide:%python_provide python2-%{name}} + +%description -n python2-%{name} +Prewikka is the backend of the web browser interface of Prelude SIEM. Providing +numerous features, Prewikka facilitates the work of users and analysts. It +provides alert aggregation and heartbeat views, and has user customization and +configurable filters. Prewikka also provides access to external tools such as +whois and traceroute. + +%package -n python3-%{name} +Summary: Graphical front-end analysis console for IDMEF +Requires: %{name} = %{version}-%{release} +Requires: python3-prelude >= %{version} +Requires: python3-preludedb >= %{version} +Requires: python3-babel +Requires: python3-mako +Requires: python3-PyYAML +Requires: python3-werkzeug +Requires: python3-dateutil +Requires: python3-pytz +%{?python_provide:%python_provide python3-%{name}} + +%description -n python3-%{name} +Prewikka is the backend of the web browser interface of Prelude SIEM. Providing +numerous features, Prewikka facilitates the work of users and analysts. It +provides alert aggregation and heartbeat views, and has user customization and +configurable filters. Prewikka also provides access to external tools such as +whois and traceroute. + %prep -%setup -q +%autosetup -p1
%build %py2_build +%py3_build
%install -# We have to use this because py2_install do other things and siteconfig.py +install -d -m 0755 %{buildroot}%{_sbindir} + +# We have to use this because py{2,3}_install do other things and siteconfig.py # will be not installed %{__python2} setup.py install --root=%{buildroot} +mv %{buildroot}%{_bindir}/%{name}-httpd %{buildroot}%{_sbindir}/%{name}-httpd-%{python2_version} +%{__python3} setup.py install --root=%{buildroot} +mv %{buildroot}%{_bindir}/%{name}-httpd %{buildroot}%{_sbindir}/%{name}-httpd-%{python3_version}
-install -d -m 0755 %{buildroot}%{_sbindir} -mv %{buildroot}%{_bindir}/%{name}-httpd %{buildroot}%{_sbindir}/%{name}-httpd +ln -s ./%{name}-httpd-%{python2_version} %{buildroot}%{_sbindir}/%{name}-httpd-2 +ln -s ./%{name}-httpd-%{python3_version} %{buildroot}%{_sbindir}/%{name}-httpd-3 +ln -s ./%{name}-httpd-3 %{buildroot}%{_sbindir}/%{name}-httpd + +rm %{buildroot}%{_sysconfdir}/%{name}/*-dist
## Language files; not under /usr/share/locale, need to move them install -d -m 0755 %{buildroot}%{_datadir}/locale cp -r %{buildroot}%{python2_sitelib}/%{name}/locale/* %{buildroot}%{_datadir}/locale/ rm -rf %{buildroot}%{python2_sitelib}/%{name}/locale ln -s %{_datadir}/locale %{buildroot}%{python2_sitelib}/%{name}/locale +cp -r %{buildroot}%{python3_sitelib}/%{name}/locale/* %{buildroot}%{_datadir}/locale/ +rm -rf %{buildroot}%{python3_sitelib}/%{name}/locale +ln -s %{_datadir}/locale %{buildroot}%{python3_sitelib}/%{name}/locale
%find_lang %{name}
@@ -64,12 +113,26 @@ ln -s %{_datadir}/locale %{buildroot}%{python2_sitelib}/%{name}/locale %doc AUTHORS NEWS README %dir %{_sysconfdir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf -%{_sbindir}/%{name}-httpd +%config(noreplace) %{_sysconfdir}/%{name}/menu.yml %{_datadir}/%{name} + +%files -n python2-%{name} +%{_sbindir}/%{name}-httpd-2 +%{_sbindir}/%{name}-httpd-%{python2_version} %{python2_sitelib}/%{name} %{python2_sitelib}/%{name}-%{version}-py%{python2_version}.egg-info
+%files -n python3-%{name} +%{_sbindir}/%{name}-httpd +%{_sbindir}/%{name}-httpd-3 +%{_sbindir}/%{name}-httpd-%{python3_version} +%{python3_sitelib}/%{name} +%{python3_sitelib}/%{name}-%{version}-py%{python3_version}.egg-info + %changelog +* Wed Oct 11 2017 Thomas Andrejak thomas.andrejak@gmail.com - 4.0.0-1 +- Bump version 4.0.0 + * Thu Aug 10 2017 Thomas Andrejak thomas.andrejak@gmail.com - 3.1.0-4 - Temporary disable debugsource since Mass rebuild
diff --git a/sources b/sources index 999d789..92641e0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (prewikka-3.1.0.tar.gz) = 7321e7383d6205f18dffd00a23d07e9154dd79e35eb58d04a6af77bc9f70e476b67a953eb5d09685b4a7c386ecdb9111d40c77bf3b570ffc27a1c90b612a4803 +SHA512 (prewikka-4.0.0.tar.gz) = 01e69b89543cac6b7a694a48cb184759641d37a5987530ce5b738a287a9cd72cc37f6bb85a621d6eb973e957730a6cb438fd302a33f2324359232e4325970bb6
arch-excludes@lists.fedoraproject.org