Bug 1706042 - libprelude FTBFS with Python 3.8
Summary: libprelude FTBFS with Python 3.8
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: libprelude
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Thomas Andrejak
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON38
TreeView+ depends on / blocked
 
Reported: 2019-05-03 12:37 UTC by Miro Hrončok
Modified: 2019-07-12 09:05 UTC (History)
4 users (show)

Fixed In Version: libprelude-5.0.0-4.fc31
Clone Of:
Environment:
Last Closed: 2019-07-12 09:05:32 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Full log from Copr (663.26 KB, text/plain)
2019-05-03 12:37 UTC, Miro Hrončok
no flags Details

Description Miro Hrončok 2019-05-03 12:37:11 UTC
Created attachment 1562394 [details]
Full log from Copr

libprelude 5.0.0-2.fc31 fails to build with Python 3.8:

_preludedb.cxx:3130:3: error: ‘_PyObject_GC_UNTRACK’ was not declared in this scope; did you mean ‘PyObject_GC_UnTrack’?
 3130 |   _PyObject_GC_UNTRACK(descr);
      |   ^~~~~~~~~~~~~~~~~~~~
      |   PyObject_GC_UnTrack
_preludedb.cxx: In function ‘int IDMEFValue_to_SWIG(PyObject*, const Prelude::IDMEFValue&, void*, PyObject**)’:
_preludedb.cxx:5782:58: warning: enum constant in boolean context [-Wint-in-bool-context]
 5782 |                 else if ( t == IDMEF_DATA_TYPE_UINT32 || IDMEF_DATA_TYPE_INT )
      |                                                          ^~~~~~~~~~~~~~~~~~~
_preludedb.cxx: In instantiation of ‘static Type swig::traits_as<Type, swig::pointer_category>::as(PyObject*, bool) [with Type = Prelude::IDMEFValue; PyObject = _object]’:
_preludedb.cxx:4680:64:   required from ‘Type swig::as(PyObject*, bool) [with Type = Prelude::IDMEFValue; PyObject = _object]’
_preludedb.cxx:5247:20:   required from ‘swig::SwigPySequence_Ref<T>::operator T() const [with T = Prelude::IDMEFValue]’
_preludedb.cxx:5997:30:   required from ‘void swig::assign(const SwigPySeq&, Seq*) [with SwigPySeq = swig::SwigPySequence_Cont<Prelude::IDMEFValue>; Seq = std::vector<Prelude::IDMEFValue>]’
_preludedb.cxx:6019:12:   required from ‘static int swig::traits_asptr_stdseq<Seq, T>::asptr(PyObject*, swig::traits_asptr_stdseq<Seq, T>::sequence**) [with Seq = std::vector<Prelude::IDMEFValue>; T = Prelude::IDMEFValue; PyObject = _object; swig::traits_asptr_stdseq<Seq, T>::sequence = std::vector<Prelude::IDMEFValue>]’
_preludedb.cxx:6080:52:   required from ‘static int swig::traits_asptr<std::vector<T> >::asptr(PyObject*, std::vector<T>**) [with T = Prelude::IDMEFValue; PyObject = _object]’
_preludedb.cxx:4572:37:   required from ‘int swig::asptr(PyObject*, Type**) [with Type = std::vector<Prelude::IDMEFValue>; PyObject = _object]’
_preludedb.cxx:9996:41:   required from here
_preludedb.cxx:4655:8: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘class Prelude::IDMEFValue’ with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
 4655 |  memset(v_def,0,sizeof(Type));
      |  ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/libprelude/idmef.hxx:29,
                 from /usr/include/libprelude/prelude-client.hxx:27,
                 from /usr/include/libprelude/prelude.hxx:29,
                 from ../../bindings/c++/include/preludedb-sql.hxx:8,
                 from ../../bindings/c++/include/preludedb.hxx:5,
                 from _preludedb.cxx:5472:
/usr/include/libprelude/idmef-value.hxx:36:15: note: ‘class Prelude::IDMEFValue’ declared here
   36 |         class IDMEFValue {
      |               ^~~~~~~~~~
_preludedb.cxx: In instantiation of ‘static Type swig::traits_as<Type, swig::pointer_category>::as(PyObject*, bool) [with Type = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; PyObject = _object]’:
_preludedb.cxx:4680:64:   required from ‘Type swig::as(PyObject*, bool) [with Type = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; PyObject = _object]’
_preludedb.cxx:5247:20:   required from ‘swig::SwigPySequence_Ref<T>::operator T() const [with T = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >]’
_preludedb.cxx:5307:14:   required from ‘swig::SwigPySequence_ArrowProxy<T> swig::SwigPySequence_InputIterator<T, Reference>::operator->() const [with T = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; Reference = const swig::SwigPySequence_Ref<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >]’
_preludedb.cxx:6463:25:   required from ‘void swig::assign(const SwigPySeq&, std::map<K, T, Compare, Alloc>*) [with SwigPySeq = swig::SwigPySequence_Cont<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >; K = std::__cxx11::basic_string<char>; T = std::__cxx11::basic_string<char>; Compare = std::less<std::__cxx11::basic_string<char> >; Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >]’
_preludedb.cxx:6019:12:   required from ‘static int swig::traits_asptr_stdseq<Seq, T>::asptr(PyObject*, swig::traits_asptr_stdseq<Seq, T>::sequence**) [with Seq = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; T = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; PyObject = _object; swig::traits_asptr_stdseq<Seq, T>::sequence = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >]’
_preludedb.cxx:6479:64:   required from ‘static int swig::traits_asptr<std::map<_Key, _Tp, _Compare, _Alloc> >::asptr(PyObject*, swig::traits_asptr<std::map<_Key, _Tp, _Compare, _Alloc> >::map_type**) [with K = std::__cxx11::basic_string<char>; T = std::__cxx11::basic_string<char>; Compare = std::less<std::__cxx11::basic_string<char> >; Alloc = std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >; PyObject = _object; swig::traits_asptr<std::map<_Key, _Tp, _Compare, _Alloc> >::map_type = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >]’
_preludedb.cxx:4572:37:   required from ‘int swig::asptr(PyObject*, Type**) [with Type = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; PyObject = _object]’
_preludedb.cxx:11980:41:   required from here
_preludedb.cxx:4655:8: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ with no trivial copy-assignment; use assignment instead [-Wclass-memaccess]
 4655 |  memset(v_def,0,sizeof(Type));
      |  ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:64,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/string:40,
                 from /usr/include/c++/9/stdexcept:39,
                 from _preludedb.cxx:3843:
/usr/include/c++/9/bits/stl_pair.h:208:12: note: ‘struct std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ declared here
  208 |     struct pair
      |            ^~~~
setup.py:34: SyntaxWarning: invalid escape sequence \s
  return re.split("\s+", s.strip())
error: command 'g++' failed with exit status 1
make[3]: *** [Makefile:1227: python-build] Error 1
make[2]: *** [Makefile:1131: all-recursive] Error 1
make[1]: *** [Makefile:1390: all-recursive] Error 1
make: *** [Makefile:1201: all] Error 2


Full log attached.

Comment 1 Miro Hrončok 2019-07-10 10:39:32 UTC
Please respond.

Comment 2 Thomas Andrejak 2019-07-10 10:45:45 UTC
Hello

Sorry for the late answer. I will do that before the end of this month.

Regards

Comment 3 Thomas Andrejak 2019-07-12 08:04:17 UTC
Hello

This should now be OK : https://koji.fedoraproject.org/koji/taskinfo?taskID=36197841

Can you confirm that ?

Thanks

Comment 4 Miro Hrončok 2019-07-12 09:05:32 UTC
Thank You.


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