Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Admin message
The migration is almost done, at least the rest should happen in the background. There are still a few technical difference between the old cluster and the new ones, and they are summarized in this issue. Please pay attention to the TL:DR at the end of the comment.
This is an archived project. Repository and other project resources are read-only.
This one is funny. There's a leading space, and that is removed by get_c_value() from tests/abi.rs (autogenerated from gir). The space is there in the .gir file, the C header, the generated C test file.
So this needs the trimming to be removed, which unfortunately is not ideal either because the trimming was needed for some reason I assume. Needs a bug report against gir in any case.
: error: ‘GST_GL_DISPLAY_EGL_NAME’ undeclared (first use in this function); did you mean ‘GST_GL_DISPLAY_TYPE_NONE’? tests/constant.c:9:22: note: in expansion of macro ‘ABI_CONSTANT_NAME’ printf(_Generic((ABI_CONSTANT_NAME), ^~~~~~~~~~~~~~~~~
This is a bug in GStreamer in one way or another. That constant (and a few others) are added to the .gir file but are not included by the specified header. This constant would require explicit inclusion of gst/gl/egl/gstglmemoryegl.h or gst/gl/egl/gstgldisplay_egl.h. Needs a bug report against GStreamer.
In gstreamer-sys there are the following known issues
running 2 teststest cross_validate_layout_with_c ... ok/usr/bin/ld: /tmp/ccsdDS4p.o: in function `main':constant.c:(.text+0xe): undefined reference to `g_strerror'collect2: error: ld returned 1 exit statustest cross_validate_constants_with_c ... FAILED
From GST_ERROR_SYSTEM, which can't really be used outside C. Should get a (skip) annotation in GStreamer, i.e. GStreamer bug.
Constant value mismatch for GST_MESSAGE_ANYRust: "4294967295"C: "-1"constants ... 273 passed; 2 failed (compilation errors: 1)Constant value mismatch for GST_MESSAGE_DEVICE_ADDEDRust: "2147483649"C: "-2147483647"Constant value mismatch for GST_MESSAGE_DEVICE_REMOVEDRust: "2147483650"C: "-2147483646"Constant value mismatch for GST_MESSAGE_EXTENDEDRust: "2147483648"C: "-2147483648"Constant value mismatch for GST_MESSAGE_PROPERTY_NOTIFYRust: "2147483651"C: "-2147483645"Constant value mismatch for GST_MESSAGE_REDIRECTRust: "2147483654"C: "-2147483642"constants ... 293 passed; 7 failed (compilation errors: 1)Constant value mismatch for GST_MESSAGE_STREAMS_SELECTEDRust: "2147483653"C: "-2147483643"Constant value mismatch for GST_MESSAGE_STREAM_COLLECTIONRust: "2147483652"C: "-2147483644"
Mismatch between signed and unsigned values. They are the same in C, but Rust is a bit more picky about it :) See https://github.com/gtk-rs/gir/issues/572. It's not a problem in practice but it breaks the test.
constants ... 416 passed; 9 failed (compilation errors: 1)Constant value mismatch for GST_PTR_FORMATRust: "paA"C: "p\u{7}A"constants ... 440 passed; 10 failed (compilation errors: 1)constants ... 465 passed; 10 failed (compilation errors: 1)constants ... 490 passed; 10 failed (compilation errors: 1)Constant value mismatch for GST_SEGMENT_FORMATRust: "paB"C: "p\u{7}B"constants ... 514 passed; 11 failed (compilation errors: 1)Constant value mismatch for GST_STIME_FORMATRust: "c%"C: "c%u:%02u:%02u.%09u"
These format specifiers can't really be used from outside C. Needs (skip) annotation in GStreamer, so GStreamer bug. There are also some more of these IIRC.
constants ... 688 passed; 12 failed (compilation errors: 1)Constant value mismatch for GST_VERSION_MICRORust: "1"C: "4"
We shouldn't really test the version defines, or otherwise things will fail when running with a different version than the .gir file. This should simply be ignored on our side via the .toml file. I think there's a mechanism for that. If you can't find it, just let me know.
running 2 teststests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifClient’ undeclared (first use in this function); did you mean ‘GstRTSPClient’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifClientClass’ undeclared (first use in this function); did you mean ‘GstRTSPClientClass’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifMedia’ undeclared (first use in this function); did you mean ‘GstRTSPMedia’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifMediaClass’ undeclared (first use in this function); did you mean ‘GstRTSPMediaClass’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifMediaFactory’ undeclared (first use in this function); did you mean ‘GstRTSPMediaFactory’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifMediaFactoryClass’ undeclared (first use in this function); did you mean ‘GstRTSPMediaFactoryClass’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifServer’ undeclared (first use in this function); did you mean ‘GstRTSPServer’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/layout.c: In function ‘main’:<command-line>: error: ‘GstRTSPOnvifServerClass’ undeclared (first use in this function); did you mean ‘GstRTSPServerClass’?tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~<command-line>: note: each undeclared identifier is reported only once for each function it appears intests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~tests/constant.c: In function ‘main’:<command-line>: error: ‘GST_RTSP_ONVIF_BACKCHANNEL_REQUIREMENT’ undeclared (first use in this function); did you mean ‘GST_RTSP_STS_PAYMENT_REQUIRED’?<command-line>: note: in definition of macro ‘ABI_CONSTANT_NAME’<command-line>: note: each undeclared identifier is reported only once for each function it appears in<command-line>: note: in definition of macro ‘ABI_CONSTANT_NAME’test cross_validate_constants_with_c ... FAILEDtest cross_validate_layout_with_c ... FAILEDfailures:---- cross_validate_constants_with_c stdout ----constants ... 25 passed; 0 failed (compilation errors: 0)compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_CONSTANT_NAME=GST_RTSP_ONVIF_BACKCHANNEL_REQUIREMENT""tests/constant.c""-o""/tmp/abi.DAtHvZOfnIS4/constant" failed, exit code: 1thread 'cross_validate_constants_with_c' panicked at 'FAILED: 41 passed; 1 failed (compilation errors: 1)', gstreamer-rtsp-server-sys/tests/abi.rs:126:13note: Run with `RUST_BACKTRACE=1`for a backtrace.---- cross_validate_layout_with_c stdout ----compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifClient""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifClientClass""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifMedia""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifMediaClass""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifMediaFactory""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1layout ... 20 passed; 5 failed (compilation errors: 5)compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifMediaFactoryClass""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifServer""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1compilation command"cc""-Wno-deprecated-declarations""-D__USE_MINGW_ANSI_STDIO""-I/usr/include/gstreamer-1.0""-I/usr/include/glib-2.0""-I/usr/lib64/glib-2.0/include""-pthread""-DABI_TYPE_NAME=GstRTSPOnvifServerClass""tests/layout.c""-o""/tmp/abi.o9fJk60nOsfs/layout" failed, exit code: 1layout ... 42 passed; 8 failed (compilation errors: 8)thread 'cross_validate_layout_with_c' panicked at 'FAILED: 42 passed; 8 failed (compilation errors: 8)', gstreamer-rtsp-server-sys/tests/abi.rs:126:13failures: cross_validate_constants_with_c cross_validate_layout_with_ctest result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered outerror: test failed, to rerun pass '-p gstreamer-rtsp-server-sys --test abi'
Currently missing the required deps to test the following:
kv_data should be a [*mut u8; 2] instead. In the .gir file it looks correct, compare with the e.g. salt_data field (which is a *mut u8, not as an array).
tests/layout.c: In function ‘main’: : error: ‘GstRTSPOnvifClient’ undeclared (first use in this function); did you mean ‘GstRTSPClient’? tests/layout.c:10:31: note: in expansion of macro ‘ABI_TYPE_NAME’ printf("%zu\n%zu", sizeof(ABI_TYPE_NAME), alignof(ABI_TYPE_NAME)); ^~~~~~~~~~~~~
This is because you're using GStreamer 1.12 and the gst-rtsp-server headers are not marking the version correctly for all the GstRTSPOnvif types. Bug in GStreamer, they should all get a Since: 1.14 marker.
Currently missing the required deps to test the following:
* gstreamer-mpegts-sys* gstreamer-webrtc-sys
What do you mean with missing required deps? Not available in Fedora? Both are in gst-plugins-bad, mpegts since a long time and webrtc since version 1.14 (you seem to be using 1.12 so that would be the problem for that one). webrtc has no errors, mpegts has one error.
What do you mean with missing required deps? Not available in Fedora? Both are in gst-plugins-bad, mpegts since a long time and webrtc since version 1.14 (you seem to be using 1.12 so that would be the problem for that one). webrtc has no errors, mpegts has one error.
For mpegts I get the following errors recurring thousands of times:
running 2 testsIn file included from tests/manual.h:3, from tests/constant.c:5:/usr/include/gstreamer-1.0/gst/mpegts/mpegts.h:28:2: warning: #warning "The GStreamer mpegts library is unstable API and may change in future." [-Wcpp] #warning "The GStreamer mpegts library is unstable API and may change in future." ^~~~~~~In file included from tests/manual.h:3, from tests/layout.c:5:/usr/include/gstreamer-1.0/gst/mpegts/mpegts.h:28:2: warning: #warning "The GStreamer mpegts library is unstable API and may change in future." [-Wcpp] #warning "The GStreamer mpegts library is unstable API and may change in future." ^~~~~~~/usr/include/gstreamer-1.0/gst/mpegts/mpegts.h:29:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." [-Wcpp] #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." ^~~~~~~/usr/include/gstreamer-1.0/gst/mpegts/mpegts.h:29:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." [-Wcpp] #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." ^~~~~~~In file included from tests/manual.h:3, from tests/layout.c:5:
and for wertc the following, also recurring:
running 2 testsIn file included from /usr/include/gstreamer-1.0/gst/webrtc/webrtc.h:24, from tests/manual.h:3, from tests/layout.c:5:/usr/include/gstreamer-1.0/gst/webrtc/webrtc_fwd.h:24:2: warning: #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." [-Wcpp] #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." ^~~~~~~/usr/include/gstreamer-1.0/gst/webrtc/webrtc_fwd.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." [-Wcpp] #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." ^~~~~~~In file included from /usr/include/gstreamer-1.0/gst/webrtc/webrtc.h:24, from tests/manual.h:3, from tests/constant.c:5:/usr/include/gstreamer-1.0/gst/webrtc/webrtc_fwd.h:24:2: warning: #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." [-Wcpp] #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." ^~~~~~~/usr/include/gstreamer-1.0/gst/webrtc/webrtc_fwd.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." [-Wcpp] #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." ^~~~~~~In file included from /usr/include/gstreamer-1.0/gst/webrtc/webrtc.h:24, from tests/manual.h:3, from tests/layout.c:5:/usr/include/gstreamer-1.0/gst/webrtc/webrtc_fwd.h:24:2: warning: #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." [-Wcpp] #warning "The WebRTC library from gst-plugins-bad is unstable API and may change in future." ^~~~~~~
This is because you're using GStreamer 1.12 and the gst-rtsp-server headers are not marking the version correctly for all the GstRTSPOnvif types. Bug in GStreamer, they should all get a Since: 1.14 marker.
I am on fedora 28 and gst 1.14
➜ gstreamer-sys git:(master) ✗ sudo dnf info gstreamer1Last metadata expiration check: 2:02:18 ago on Tue 23 Oct 2018 11:36:20 AM EEST.Installed PackagesName : gstreamer1Version : 1.14.1Release : 2.fc28Arch : x86_64Size : 4.2 MSource : gstreamer1-1.14.1-2.fc28.src.rpmRepo : @SystemFrom repo : updatesSummary : GStreamer streaming media framework runtimeURL : http://gstreamer.freedesktop.org/License : LGPLv2+Description : GStreamer is a streaming media framework, based on graphs of filters which : operate on media data. Applications using this library can do anything : from real-time sound processing to playing videos, and just about anything : else media-related. Its plugin-based architecture means that new data : types or processing capabilities can be added simply by installing new : plugins.
/usr/include/gstreamer-1.0/gst/mpegts/mpegts.h:28:2: warning: #warning "The GStreamer mpegts library is unstable API and may change in future." [-Wcpp] #warning "The GStreamer mpegts library is unstable API and may change in future." ^~~~~~~
These are warnings you can safely ignore. You can #define GST_USE_UNSTABLE_API to prevent that but it does not seem worth it. They're just warnings after all :)
I am on fedora 28 and gst 1.14
Also gst-rtsp-server 1.14? Are the onvif headers not included by gst/rtsp-server/rtsp-server.h then? That would be a bug :)
Did you find the webrtc and mpegts library in the meantime?
This is because you're using GStreamer 1.12 and the gst-rtsp-server headers are not marking the version correctly for all the GstRTSPOnvif types. Bug in GStreamer, they should all get a Since: 1.14 marker.
Also gst-rtsp-server 1.14? Are the onvif headers not included by gst/rtsp-server/rtsp-server.h then? That would be a bug :)
This is because you're using GStreamer 1.12 and the gst-rtsp-server headers are not marking the version correctly for all the GstRTSPOnvif types. Bug in GStreamer, they should all get a Since: 1.14 marker.
Also gst-rtsp-server 1.14? Are the onvif headers not included by gst/rtsp-server/rtsp-server.h then? That would be a bug :)
This is because you're using GStreamer 1.12 and the gst-rtsp-server headers are not marking the version correctly for all the GstRTSPOnvif types. Bug in GStreamer, they should all get a Since: 1.14 marker.
Also gst-rtsp-server 1.14? Are the onvif headers not included by gst/rtsp-server/rtsp-server.h then? That would be a bug :)
@alatiera this is still a problem. While they are marked as not introspectable in the .gir file, we still generate bindings for them. That flag is ignored in gir because Rust is closer to C and almost all things marked as not introspectable can be handled by Rust.
@alatiera this should probably be split into separate issues for the individual tasks and then we change this one to a tracker issue
@slomo I thought this was already turned into a tracking issue, most of the things are upstream bugs no?
True, but I was thinking of turning the description at the top into a task list with links to the relevant issues :) Want to do that or shall I?