Marijn Suijten
bdc26746b6
treewide/gir: Mark Gst.Structure as ref
instead of ref-mut
mode
...
The only bindings using this type show up in v1.20 and use `&mut` which
lacks a matching `.to_glib_full()` implementation.
2021-06-03 20:35:35 +02:00
Marijn Suijten
3d8d1ffb19
Update gir and regenerate with automated enum/flag member versioning
...
https://github.com/gtk-rs/gir/pull/1180
2021-06-03 20:33:34 +02:00
Marijn Suijten
7fcd560d18
Update gir and regenerate
...
- Doc aliases for types;
- ffi constants for bitflags too;
- Completely overhauled docs generation under the hood (only emitting
valid links, more types receive documentation now).
2021-06-02 09:47:51 +02:00
Marijn Suijten
170f7214eb
Regen with extended Gir.toml
2021-06-01 13:40:52 +00:00
Marijn Suijten
5ebf6de6eb
base/gir: Document manually implemented types and functions
2021-06-01 13:40:52 +00:00
Marijn Suijten
1e58dd553c
treewide: Add missing external external types to manual
list
...
Gir now uses analyzed objects to generate documentation, and to know
exactly what is available. Additionally, this allows more bindings to
be generated.
2021-06-01 13:40:52 +00:00
Guillaume Gomez
5ba79976a9
Generate missing doc aliases for newtypes
2021-06-01 15:15:59 +02:00
Sebastian Dröge
b23bb2039e
base: Rename basesink's is_drop_out_of_segment() to drops_out_of_segment()
2021-05-30 20:59:16 +03:00
Sebastian Dröge
a21f334290
base: Remove duplicated setters/getters for basesink/basetransform properties
...
The functions are named non-standard and because of that can't be
automatically ignored in favour of the properties.
2021-05-30 20:59:16 +03:00
Sebastian Dröge
34f3e7710c
Point to the new documentation location everywhere
2021-05-29 19:00:50 +03:00
Bilal Elmoussaoui
b2083d0973
gir-files: drop broken commit & regen
2021-05-28 14:16:15 +02:00
Marijn Suijten
eaed54e279
Update gir and regenerate with simplified trait bounds
...
Trait bounds moved from `where T: Foo` directly into the type parameter
definition at `<T: Foo>`: https://github.com/gtk-rs/gir/pull/1160 .
2021-05-27 00:02:42 +02:00
Sebastian Dröge
88c4f70195
Regenerate with latest gir
2021-05-23 16:27:57 +00:00
Marijn Suijten
540062b97c
Add missing doc aliases to manual code
...
Using the same script as [1], called with:
python3 add_doc_alias.py gstreamer*/**/src
[1]: https://github.com/gtk-rs/gtk-rs-core/pull/83
2021-05-19 22:36:18 +02:00
Guillaume Gomez
6fdf35846e
Update repository URL for gtk-rs "core" crates
2021-05-12 21:21:18 +02:00
Marijn Suijten
d50d7b4a95
Update gir and regenerate
...
This version adds a `--strip-docs` flag to `generator.py`, used in
conjunction with `--strip-docs --embed-docs` to clean documentation
first before re-embedding it (otherwise the same text would show up
multiple times). It is also used in the CI to check that no
documentation disappears on stripping, ie. all documentation is properly
annotated with `// rustdoc-stripper-ignore-next`.
2021-05-05 12:23:40 +02:00
François Laignel
5505715cc4
Manual code updates for *Return types
2021-05-04 11:33:51 +00:00
François Laignel
2364361f6b
regen: use TryFromGlib for *Return types
2021-05-04 11:33:51 +00:00
François Laignel
4b2e001f8e
Gir.toml: use TryFromGlib for *Return types
2021-05-04 11:33:51 +00:00
François Laignel
9c86aa9f76
rename remaining connect_property_...
2021-05-03 20:46:57 +02:00
François Laignel
49583597ed
manual code: fix-getters-def doc aliases
2021-05-03 20:46:57 +02:00
François Laignel
01b6d342a4
regen: prop alias + connect_*_notify signal + add fn doc alias
2021-05-03 20:46:56 +02:00
Marijn Suijten
a36fe2a3f5
base: Fix all clippy::use_self warnings
2021-04-30 10:02:55 +02:00
Marijn Suijten
980304ce36
Replace T::type_data with Self::type_data for clippy::use_self
2021-04-30 10:02:55 +02:00
Marijn Suijten
e52e4328b3
Allow clippy::use_self on auto module
2021-04-30 10:02:47 +02:00
Marijn Suijten
e8f340c60a
Update gir and regenerate with clippy::use_self fixes
...
`Self` is now used in more places, shortening the code and making it
more readable at the same time.
2021-04-30 10:02:44 +02:00
Marijn Suijten
f89e840d27
Remove redundant prelude imports
...
When importing the prelude of a crate like `gst` the `glib` prelude is
provided too. Shedding these imports saves quite a few lines and
adheres to keeping it simple; we're not reexporting base/parent preludes
for no reason :)
2021-04-29 12:05:13 +02:00
Marijn Suijten
e6a81edb3c
prelude: Remove redundant reexports already provided by other preludes
...
For cleanliness the prelude module only needs to reexport preludes from
direct, "top-most" crates, which themselves take care of reexporting
preludes from its dependencies again. This shaves off some code while
maintaining the same set of exports.
2021-04-29 11:44:35 +02:00
Bilal Elmoussaoui
890cd03632
manual renames of to_glib into into_glib
2021-04-27 19:44:41 +02:00
Bilal Elmoussaoui
060a7df448
regen with renamed ToGlib into IntoGlib
2021-04-27 19:14:52 +02:00
Marijn Suijten
da156e8ce7
Update gir and regenerate without unused glib::ToValue
imports
2021-04-27 10:14:19 +02:00
Sebastian Dröge
1d59ea91c5
Clean up various imports everywhere
2021-04-26 15:16:58 +03:00
Marijn Suijten
1a07bfc710
Update gir
and regenerate without trait reexports in crate root
2021-04-26 13:24:02 +02:00
Marijn Suijten
827ff99965
lib: Only export traits (Ext and ExtManual) from prelude
...
In gir it was brought up [1] that some traits (in particular
`*ExtManual`) are exported from the crate root in addition to the
prelude, cluttering the environment unnecessarily. This commit removes
all these reexports, leaving those in prelude (that were already there)
only.
After this commit everything matching `Ext(Manual)?\b` in `lib.rs` sits
within `pub mod prelude {};`.
[1]: https://github.com/gtk-rs/gir/pull/1111
2021-04-26 11:25:23 +02:00
Sebastian Dröge
eda1d3d4a7
Update for Value trait refactoring
2021-04-25 14:45:08 +03:00
Sebastian Dröge
0eb5845934
Regenerate with latest gir
2021-04-25 14:45:01 +03:00
Marijn Suijten
1b2b3a75bc
Update gir with generator.py included and regenerate
...
The `gir` repository now includes `generator.py` for easier sharing of
improvements with other projects like `gtk(4)-rs`.
2021-04-24 09:39:04 +02:00
Marijn Suijten
3f508963e7
gstreamer: Remove now-unused build.rs from "normal" crates
...
The `lgpl-docs` and documentation embedding step is now solely invoked
from `./gir/generator.py` in the CI, and does not need the embed/purge
build features anymore.
2021-04-24 09:39:04 +02:00
Marijn Suijten
e62558dde4
Remove docs/
crate and references to it
...
The `lgpl-docs` crate and all precompiled (easy to get outdated!)
docmentation files are removed in favour of being generated at runtime
by the improved generator, both during local development as well as in
the CI.
2021-04-24 09:39:02 +02:00
Marijn Suijten
7ede94fec8
Replace all girs_dir with girs_directories and add gst-gir-files dir
...
The previous commit reinstantiated `girs_dir`, and this commit applies
the rename to `girs_directories` and adds the new/missing
`gst-gir-files` directory where GStreamer-specific `.gir` files live.
2021-04-23 22:01:23 +02:00
Marijn Suijten
666ea908a5
Revert "Gir.toml: Drop unused/renamed girs_dir in favour of gir -d
"
...
This reverts commit 7f9fcb09e2
.
`generator.py` is in the process of being moved to a generic place in
the `gir` repository for reuse across crates. This means `-d` cannot be
passed for our GStreamer-specific `gst-gir-files` directory anymore, and
should be configured from `Gir.toml` instead.
2021-04-23 21:59:33 +02:00
François Laignel
6ab9164dca
fix-getters-calls 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
e80a29372a
fix-getters-def 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
b8b944b72b
subclass: remove get prefix where applicable
2021-04-20 18:18:02 +02:00
François Laignel
f7472c82e3
regen: relaxed get fn identification
2021-04-20 18:18:02 +02:00
François Laignel
172a4d47ab
regen: use type_ for glib macros
...
This also includes a new substitution for bool getters:
get_need_... -> needs_...
2021-04-20 18:18:02 +02:00
François Laignel
53be8e5f58
fix-getters-{def,calls} pass
2021-04-13 17:54:40 +02:00
François Laignel
08545cbefc
regen - remove get prefix for getters
2021-04-13 17:54:38 +02:00
Marijn Suijten
6ec0e3ac4b
Update gir and regenerate with extended gir-dirs comments
...
Gir now prints all directories and their hashes in the version file and
comments; useful now that gstreamer-rs is being generated from both
gir-files/ and gst-gir-files/ submodules.
2021-04-01 15:58:41 +02:00
Marijn Suijten
7f9fcb09e2
Gir.toml: Drop unused/renamed girs_dir in favour of gir -d
...
We were already using `gir -d` and especially now that our files are
separated across two directories that are relative to the directory
containing Gir.toml this only becomes cumbersome. Besides `gir` lacks
functionality to normalize the path, leading to ie.
gstreamer-gl/egl/sys/../../../gir-files in the version comment as a
result.
2021-04-01 15:53:23 +02:00
Marijn Suijten
a38561fbcd
Update gir and regenerate with redundant #[cfg]/#[cfg_attr] removed
...
Also ignores `clippy::upper_case_acronyms` introduced with 1.51 which
can't be adhered to in bindings.
2021-04-01 15:53:18 +02:00
Sebastian Dröge
4804da1273
gstreamer-base/basesrc: Use the correct pointer for retrieving the allocated buffer in BaseSrc::alloc
2021-03-09 18:06:06 +02:00
Sebastian Dröge
ea239c587e
Store panic information not in a custom instance struct but in the instance data provided by the subclassing infrastructure
...
This scales better as there will only be only such data instead of two
or more when having deeper class hierarchies with multiple Rust
elements, and also makes it unnecessary to use a special instance struct
so the default works well.
2021-03-09 16:36:35 +02:00
Sebastian Dröge
6fa48890bc
Update for the subclassing glib bindings API changes
2021-03-09 16:04:32 +02:00
Sebastian Dröge
a311591310
Regenerate with latest gir
2021-03-08 12:25:37 +02:00
Sebastian Dröge
0803dd411e
Update for glib subclass API cleanup
2021-03-08 12:18:24 +02:00
Sebastian Dröge
5822785191
Regenerate with latest gir
2021-02-28 18:30:54 +02:00
Sebastian Dröge
2b0b3910ee
Regenerate everything with latest gir
2021-02-22 17:13:45 +02:00
Sebastian Dröge
5f5218e1ab
Update CHANGELOG.md for 0.16.7
2021-02-13 14:04:37 +02:00
Sebastian Dröge
3d076c05e1
Regenerate with gir to update system-deps dependency and get rid of clippy warning in the ABI tests
2021-02-10 13:11:49 +02:00
Vivia Nikolaidou
0a119cada6
gstreamer-audio: Add AudioConverterConfig
2021-02-09 19:13:30 +02:00
Sebastian Dröge
9d86cef2da
Regenerate everything with latest gir
2021-02-07 17:07:17 +02:00
Marijn Suijten
fb55cdfeff
Remove allow(unused_imports)
from mod auto
...
gir has been fixed to omit all unnecessary imports from objects, enums
and flags which currently are the only offenders of this linter warning.
Hence disallow this warning from now on which is anyway not applied to
every crate - like gstreamer-gl - where such issues have been uncovered.
2021-01-30 15:49:49 +01:00
Marijn Suijten
1ffa02fc1f
Update gir to c85699a with import cleanups; regenerate
...
Apply import cleanups from https://github.com/gtk-rs/gir/pull/1043 ,
omitting `use` statements where unnecessary or guarding them with
versioning constraints to prevent `unused_imports` warnings.
Removes unnecessary `mut_override` with
https://github.com/gtk-rs/gir/pull/1044 as well.
2021-01-30 15:49:38 +01:00
Sebastian Dröge
e11b12df7c
gstreamer: Provide class metadata, pad templates and basetransform configuration via trait methods
...
This is closer to how this works in Python and also how properties and
signals work now in the glib bindings.
class_init() only has to be implemented for more special uses now.
2021-01-25 13:56:55 +02:00
Marijn Suijten
3c610e12e5
gst,base,sdp: Use specific copy/free or (un)ref instead of g_boxed
...
SDPMessage, FlowCombiner and ParseContext have specific functions
available to perform copying, freeing and (un)ref'ing. Calling them
directly on versions where they are supported prevents us from going
through GType machinery and locks that end up the same functions in the
end.
2021-01-08 10:41:06 +01:00
Sebastian Dröge
3428e5c0c7
Update CHANGELOG.md for 0.16.6
2020-12-20 20:50:51 +02:00
Sebastian Dröge
477b00cce8
Update CHANGELOG.md for 0.16.5
2020-12-20 20:50:48 +02:00
Sebastian Dröge
68839c0e79
Re-export all dependency crates and their preludes
...
This makes code in examples potentially simpler.
2020-12-20 19:40:34 +02:00
Sebastian Dröge
53aae7ddba
Remove gst_ prefix from all macros except for the logging macros
...
The latter stay e.g. gst_debug! to be more clear and not conflict with
e.g. the debug! macro from the log crate.
2020-12-20 19:40:34 +02:00
Guillaume Gomez
2f0e386037
Regen with more doc alias for enums and consts
2020-12-18 15:23:05 +01:00
Sebastian Dröge
ce1148b474
Update everything for glib macro renamings
2020-12-18 00:56:47 +02:00
Sebastian Dröge
d0b0006d27
Regenerate
2020-12-18 00:34:53 +02:00
Sebastian Dröge
38b94abc59
Add COPYRIGHT file as links into all crates and change LICENSE files to links too
2020-12-16 12:49:49 +02:00
Guillaume Gomez
ff5a36561a
Fix license header situation
2020-12-15 11:53:31 +01:00
Marijn Suijten
132477f51f
cargo.toml: Add v1_20 feature to all crates
2020-12-12 13:17:20 +01:00
Marijn Suijten
0ff16c589f
Regenerate sys Cargo.toml with 1.20 version
2020-12-12 13:17:03 +01:00
Marijn Suijten
1d726d6a1e
gir.toml: Add 1.20 to extra_versions
2020-12-12 13:15:11 +01:00
Guillaume Gomez
fb56af8d84
Update from_glib calls and put them in unsafe blocks
2020-12-08 15:50:15 +01:00
Guillaume Gomez
959568f124
regen
2020-12-08 14:00:17 +01:00
Marijn Suijten
15d8774e6b
Update gir to 1c1a8d7 and regenerate with associated enum/flag functions
2020-12-07 12:11:27 +01:00
Marijn Suijten
2447664df6
Replace Result<(), fmt::Error> with fmt::Result
2020-12-07 12:09:39 +01:00
Sebastian Dröge
f6700f1ff1
gstreamer-base/adapter: Replace various error cases with Rust assertions
...
These are assertions on the C side too and are programmer errors, not
something that can be handled gracefully.
2020-12-07 10:48:28 +02:00
Sebastian Dröge
1199e89dca
gstreamer-base/adapter: Add error checking at the bindings level
...
Instead of running into (inconsistent even) assertions inside the C
code.
Also don't return uninitialized data and signed offsets from the
masked_scan() functions.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/298
2020-12-06 20:11:18 +02:00
Marijn Suijten
5afca49a7b
gstreamer: Propagate nullability changes into manual code
2020-12-04 19:37:07 +01:00
Marijn Suijten
92df13eeb1
Regenerate with trusted nullability
2020-12-04 19:37:06 +01:00
Marijn Suijten
ceeaf97793
gst,base,check,net: Trust return value nullability
2020-12-04 19:36:22 +01:00
Marijn Suijten
47102b0e76
Regenerate with fresh gir files
2020-12-04 19:34:09 +01:00
Marijn Suijten
9577965782
sys/Gir.toml: Drop default target_path in current directory
2020-11-28 11:07:48 +01:00
Marijn Suijten
a87cc4c3a3
cargo: Update ffi crate paths to direct "./sys" subdirectory
2020-11-28 11:05:51 +01:00
Guillaume Gomez
8f9d76bb8c
Revert "Remove unnecessary dox feature"
...
This reverts commit 9dd8bd9095
.
2020-11-27 14:37:49 +01:00
Guillaume Gomez
2d87561193
Revert "Remove unnecessary dox feature in cargo files"
...
This reverts commit 128b3b251e
.
2020-11-27 14:37:40 +01:00
Guillaume Gomez
7daac635c4
regen
2020-11-27 14:37:24 +01:00
Guillaume Gomez
128b3b251e
Remove unnecessary dox feature in cargo files
2020-11-25 16:02:51 +01:00
Guillaume Gomez
9dd8bd9095
Remove unnecessary dox feature
2020-11-25 15:54:02 +01:00
Guillaume Gomez
28438d245a
regen
2020-11-25 15:53:45 +01:00
Sebastian Dröge
7dc5a90b8a
Remove unneeded extern crate
2020-11-22 19:15:21 +02:00
Sebastian Dröge
88a7c18746
gstreamer-base: Update manual code to 2018 edition
2020-11-22 19:15:20 +02:00
Sebastian Dröge
80b4cb590e
gstreamer-base: Regenerate
2020-11-22 19:15:20 +02:00
Sebastian Dröge
9889bc990a
sys: Update to Rust 2018
2020-11-22 19:15:20 +02:00