Commit graph

1508 commits

Author SHA1 Message Date
Guillaume Desmottes
f28a92c46c ci: update ci template
Prevent creating a second useless layer, see
https://gitlab.freedesktop.org/freedesktop/ci-templates/-/merge_requests/26

Update image tag to ensure building images is still working.
2020-04-28 16:08:56 +02:00
Guillaume Desmottes
fe30b4a388 ci: improve docker image layering
At the moment we are building 3 independent images, each one having a different
Rust version. This works perfectly fine but we can save storage space and
bandwith by making a smarter use of Docker's layering system.

Introducing a new 'base' image containing all the deps, including
GStreamer, acting as a base for the actual images.
As a result most of the actual content is now shared accross the same
Docker layer. This would save us from downloading/building all the deps
when updating images and will reduce storage and transfers for runners.
2020-04-28 15:25:48 +02:00
Guillaume Desmottes
33dbedf59c deny: fail on multiple versions
Will ensure to keep the ignore list up to date.
2020-04-28 12:18:17 +02:00
Guillaume Desmottes
2aa529fbdf ci: remove cargo-audit
It's been replaced by cargo-deny in all modules.

Don't regenerate images for now, it's not a problem to keep it around
until the next images update round.
2020-04-28 11:40:14 +02:00
Guillaume Desmottes
a6c20922ff update documentation links 2020-04-28 11:17:24 +02:00
Jordan Petridis
cc0775388f CI: Build docs and deploy them with gitlab pages 2020-04-27 16:54:41 +02:00
Guillaume Desmottes
466e0901bb rtp: add dox feature 2020-04-27 16:54:41 +02:00
Guillaume Desmottes
d31a9fece4 ci: install cargo-audit
Not needed for gstreamer-rs as it uses 'cargo deny' but still used by
gst-plugins-rs and gstreamer-rs-sys.
2020-04-27 14:12:26 +02:00
Guillaume Desmottes
e23ca02261 ci: fix trigger update request
Forgot to change the branch to 'master' instead of my custom test
branch.
2020-04-27 14:01:50 +02:00
Guillaume Desmottes
1567513e8a ci: force images rebuild
No change, will be used to ensure that gst-plugins-rs images are
actually updated.
2020-04-27 12:41:47 +02:00
Guillaume Desmottes
0d2829d955 ci: add deploy jobs triggering gst-plugins-rs image updates
Those jobs will trigger a rebuild of gst-plugins-rs when our images are
updated.
2020-04-27 11:14:29 +02:00
Guillaume Desmottes
e40e23b82c ci: move image tags to its own file
Will be used by gst-plugins-rs to reference gstreamer-rs images as
bases.
2020-04-24 14:00:11 +02:00
Sebastian Dröge
6e431ce060 Run everything through rustfmt again
It got some improvements for applying consistent formatting to code
blocks in macros.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/468>
2020-04-24 12:46:16 +03:00
Sebastian Dröge
020e2a4464 ci: Rebuild CI images for Rust 1.43
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/468>
2020-04-24 12:31:10 +03:00
Sebastian Dröge
834b6d8d69 gstreamer/proxypad: Convert default pad functions to plain functions on ProxyPad instead of a trait
This allows to use them properly when overriding these functions.
2020-04-23 15:37:18 +03:00
Sebastian Dröge
47cc80b1ef video: Assert if caption data passed when adding caption metas is empty
It will cause a critical warning otherwise.
2020-04-22 21:42:39 +03:00
alleynb
86e6d3afa4 tutorials/tutorial-6: Improve caps output
Fixed printing of pad capabilites in tutorial6.
Output now displays the capability lists eg:
  layout:{ (string)interleaved, (string)non-interleaved }

The origional broken output was being displayed as:
  layout:SendValue(Value(GString(Foreign(0x557140c99d00, 40))))
2020-04-21 12:01:41 +01:00
Guillaume Desmottes
932d4720c0 ci: fix CARGO_HOME caching
CARGO_HOME's semantic depends on when it's used in the pipeline:
- it's the install prefix when installing Cargo
- it's the crate cache location when building jobs

env.sh is sourced at the start of all jobs and was overidding the
CARGO_HOME path defined in the CI template for caching. Fix this by
moving the prefix install path to install-rust.sh.
2020-04-21 09:35:33 +00:00
Guillaume Desmottes
38b64473e9 ci: make clippy warnings fatal 2020-04-21 11:06:46 +02:00
Guillaume Desmottes
6a72f65b3b gstreamer: ignore cognitive_complexity warnings
Those are just long tests.
2020-04-21 10:17:46 +02:00
Guillaume Desmottes
a12b51abd6 gstreamer: stream_collection: ignore new_ret_no_self clippy warning 2020-04-21 09:00:35 +02:00
Guillaume Desmottes
872024c372 fix option_as_ref_deref clippy warnings 2020-04-21 09:00:35 +02:00
Guillaume Desmottes
20b672eae3 ci: force git-fetch-with-cli
Workaround so fdo redirects actually work.

Fix https://gitlab.freedesktop.org/gstreamer/gst-ci/-/issues/71
2020-04-20 18:19:23 +02:00
Guillaume Desmottes
1295d9fc6a ci: remove target/ as manual clean up
It seems that when a job is failing, target/ is not properly wiped out
from the ci container triggering later jobs to fail, see for example
https://gitlab.freedesktop.org/gdesmott/gstreamer-rs/-/jobs/2349943

Manually clean it up as after_script to hopefully workaround this
problem.
2020-04-20 18:04:55 +02:00
Guillaume Desmottes
932c940102 gstreamer: caps: add new_from_iter(_with_features)() 2020-04-20 17:12:24 +02:00
Guillaume Desmottes
97026d7f86 gstreamer: structure: add new_from_iter()
Allow to easily create a new Structure from an iterator.

Fix #250
2020-04-20 15:53:28 +02:00
Sebastian Dröge
caae679d6f gstreamer: Add some API to calculate the next state convert state changes into their component states and back 2020-04-18 09:23:08 +03:00
Guillaume Desmottes
77af65634f deny: ignore duplicated because of outdated glutin 2020-04-16 12:20:21 +02:00
Sebastian Dröge
47d839e58a Switch from cargo-audit to cargo-deny
This provides a superset of the features, including license checks.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/238
2020-04-16 12:12:45 +02:00
Guillaume Desmottes
99f91167af ci: build GStreamer instead of importing tarball
Makes it much easier to update to a new gst version.
2020-04-16 09:47:15 +02:00
Guillaume Desmottes
23545fcf7d ci: no need to fetch gtk-rs checker history 2020-04-16 09:46:59 +02:00
Guillaume Desmottes
429962bdd7 ci: use fdo ci template
Build our own images instead of manually installing everything we need
for each job. This should hopefully speed up our ci and make it more
robust.
2020-04-16 09:46:57 +02:00
Sebastian Dröge
ada06502b5 gstreamer: Remove redundant stream/stream collection property getters
There are also actual functions for these and we had both enabled
because the properties are missing the "Since: 1.10" markers.
2020-04-15 14:40:37 +03:00
Sebastian Dröge
aea43c428c gstreamer: Add Stream::debug() and StreamCollection::debug()
These provide more helpful debug output than just the pointer when
printing.
2020-04-14 17:31:54 +00:00
Sebastian Dröge
2ef7d70ba3 gstreamer: Enforce that stream collections are immutable after creation by using the builder pattern 2020-04-14 17:31:54 +00:00
Sebastian Dröge
78a81e2c73 gstreamer-video: ValidVideoTimeCode::add_interval() is guaranteed to return a valid timecode again
So change the return type from VideoTimeCode to ValidVideoTimeCode.
2020-04-14 17:24:11 +03:00
Sebastian Dröge
185eb188ca Fix various signal handler trampoline usages 2020-04-13 19:24:04 +03:00
Sebastian Dröge
5021994237 Regenerate everything 2020-04-13 19:11:33 +03:00
Sebastian Dröge
ac27258478 Revert "gstreamer-editing-services: Move Asset::request_async method into manual code to add missing init assert"
This reverts commit 6db70eaa4b. Not needed
anymore with latest gir.
2020-04-13 19:09:12 +03:00
Sebastian Dröge
adb6f66df2 Update gir 2020-04-13 19:06:24 +03:00
Guillaume Desmottes
5de8fa89c4 ci: allow outdated job to fail
glutin and winit updates are pending.
2020-04-13 11:03:19 +02:00
Sebastian Dröge
92faaeacdb Update minimum supported Rust version to 1.40 2020-04-12 19:47:49 +03:00
Sebastian Dröge
76a0410d41 Replace unneeded transmute calls with a safer alternative 2020-04-12 19:47:49 +03:00
Sebastian Dröge
d1665b8114 Regenerate with latest gir 2020-04-12 18:55:06 +03:00
Sebastian Dröge
83f2748eb9 Update gir 2020-04-12 18:42:57 +03:00
Guillaume Gomez
1ef3bf52d2 gstreamer: Add missing init calls in tests 2020-04-12 17:25:54 +03:00
Guillaume Gomez
6db70eaa4b gstreamer-editing-services: Move Asset::request_async method into manual code to add missing init assert
See https://github.com/gtk-rs/gir/issues/898
2020-04-12 17:25:54 +03:00
Guillaume Gomez
c07fe14191 gstreamer*: Add missing init checks 2020-04-12 17:25:54 +03:00
Guillaume Gomez
2f72261360 gitlab-ci: Add checks for missing init asserts 2020-04-12 17:25:52 +03:00
Guillaume Gomez
bfb4ec25c5 gitlab-ci: Add manual traits check 2020-04-12 17:25:30 +03:00