Commit graph

44 commits

Author SHA1 Message Date
Sebastian Dröge cbfd80d75f Update for new GLib boxed deriving API 2020-03-19 11:18:17 +02:00
Sebastian Dröge b84831c94f reqwesthttpsrc: Switch back to hyperx
It was updated to the new versions of its dependencies and provides
typed header types for more of the headers that we're using.
2020-01-18 10:51:25 +00:00
Sebastian Dröge 6d2ab03f56 reqwesthttpsrc: Simplify code to block on futures 2019-12-31 14:19:04 +02:00
Sebastian Dröge b1e85c7fa0 reqwest: Update tests to hyper 0.13 2019-12-31 12:20:14 +02:00
Sebastian Dröge 672cb730a8 reqwest: Update to reqwest 0.10 / tokio 0.2 2019-12-31 11:49:09 +02:00
Sebastian Dröge 9772adbfbf Fix various new clippy warnings from 1.40 2019-12-22 11:35:01 +02:00
François Laignel bdadf25f5c Clippy pass 2019-12-19 20:44:00 +01:00
Sebastian Dröge 1ae57967ae Move debug categories from an instance member to lazy_static
Simplifies the code a bit and less state to carry around.
2019-10-31 23:35:11 +01:00
Sebastian Dröge bc34fbd2eb reqwesthttpsrc: Add support for parsing the Content-Type header
In iradio-mode we would put it as an additional field to the caps,
otherwise if it's audio/L16 we would create audio/x-unaligned-raw caps
accordingly.
2019-10-14 22:05:34 +03:00
Sebastian Dröge 5def817f75 reqwesthttpsrc: Extend tests and cover more code paths 2019-10-05 12:08:05 +03:00
Sebastian Dröge 99836709fa reqwesthttpsrc: Correctly forward Future errors instead of mapping them all to timeouts 2019-10-05 01:07:04 +03:00
Sebastian Dröge 120f85ac71 reqwesthttpsrc: Fix up context name 2019-10-05 01:07:04 +03:00
Sebastian Dröge c4e51d3e8c reqwesthttpsrc: Implement keep-alive property 2019-10-05 01:07:04 +03:00
Sebastian Dröge f9e5d67478 reqwesthttpsrc: Implement iradio-mode property and parsing of icecast headers 2019-10-05 01:07:04 +03:00
Sebastian Dröge 98127948af reqwesthttpsrc: Add support for extra-headers and cookies properties 2019-10-05 01:07:04 +03:00
Sebastian Dröge 2a6ee4b959 reqwesthttpsrc: Answer the SCHEDULING query correctly
We don't really want to operate in pull mode and also hint that we're
bandwidth limited.
2019-10-05 01:07:04 +03:00
Sebastian Dröge cecc0804d5 reqwesthttpsrc: Various cleanups, error handling improvements and better debug output 2019-10-05 01:07:04 +03:00
Sebastian Dröge e90099bad3 reqwesthttpsrc/s3: Unlock canceller while waiting for the future to be resolved
Otherwise nothing can ever access the canceller and unlocking does not
work.

meh
2019-10-05 01:07:04 +03:00
Sebastian Dröge 22982614d7 reqwesthttpsrc: Add property to enable/disable usage of compression 2019-09-30 11:10:33 +03:00
Sebastian Dröge 6888b08db2 reqwesthttpsrc: Fix debug output for received chunks 2019-09-30 11:00:07 +03:00
Sebastian Dröge fecf4bac2e reqwesthttpsrc: Add test for cookie storage and context/client sharing 2019-09-29 16:43:38 +03:00
Sebastian Dröge e3a92edd45 reqwesthttpsrc: Implement client context sharing, including cookie storage and connection re-use 2019-09-28 15:02:10 +03:00
Sebastian Dröge b05fb902f9 Remove usage of subclassing feature, it's the default now 2019-09-09 10:45:06 +03:00
Sebastian Dröge 83cc8104a1 Fix or silence all remaining clippy warnings
Also ignore common errors we don't care about when running clippy and
make clippy errors fail the CI.
2019-09-07 10:42:07 +03:00
ahamedsajeer.15 9119349c08 reqwesthttpsrc: add timeout 2019-08-13 17:41:06 +03:00
François Laignel 0e11ac87d3 Update for new {Value, StructureRef}::get signature
See https://github.com/gtk-rs/glib/pull/513
and https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/merge_requests/310
2019-08-13 15:29:28 +02:00
ahamedsajeer.15 f2dca12de6 reqwesthttpsrc: add http auth 2019-08-09 12:23:23 +05:30
ahamedsajeer.15 923f6e3a5c reqwesthttpsrc: add is-live property 2019-08-07 19:20:48 +00:00
ahamedsajeer.15 324b205926 reqwesthttpsrc: add user-agent header to request 2019-08-06 08:04:16 +00:00
Philippe Normand 0fcc0cb2d3 reqwest: Rename again reflecting the crate name
rshttp is too generic, so rename the plugin in a similar fashion as most other
GStreamer Rust plugins in this repository.
2019-08-02 16:34:53 +01:00
Charlie Turner a844d765da reqwesthttpsrc: name lib the same as plugin name
Otherwise it won't be discoverable by gst-inspect-1.0 or registry
lookup.
2019-08-02 10:45:17 +01:00
ahamedsajeer.15 4b4a2798b6 reqwesthttpsrc: Set offset field on outgoing buffers 2019-07-24 11:17:14 +00:00
ahamedsajeer.15 367ca9b996 reqwesthttpsrc: Map error response codes to the correct error messages 2019-07-24 11:17:14 +00:00
ahamedsajeer.15 542f68dd07 reqwesthttpsrc: Add a seeking test 2019-07-24 11:17:14 +00:00
Sebastian Dröge c888094f68 Update to url 2.0 where we can 2019-07-24 13:38:36 +03:00
Sebastian Dröge f149f8f1b5 Don't use ONCE_INIT anymore now that Once::new() is const 2019-07-11 16:41:42 +03:00
Sebastian Dröge acc4b6a7e2 Update versions to 0.6.0 2019-07-07 13:20:15 +03:00
ahamedsajeer.15 ce1ed81922 reqwesthttpsrc: Report correct error messages based on HTTP error status codes
404 is mapped to ResourceError::NotFound
401,402,403,407 are mapped to ResourceError::NotAuthorized
other error status codes are mapped to ResourceError::OpenRead
This mirrors the behavior in souphttpsrc
2019-07-05 18:54:10 +05:30
ahamedsajeer.15 e20a1ce947 reqwesthttpsrc: test for 404 error 2019-07-05 08:58:19 +05:30
Sebastian Dröge b4efa42d8f Fix various clippy warnings 2019-07-04 18:56:33 +03:00
Sebastian Dröge 0a008354a4 reqwesthttpsrc: Drop the receiver before stopping the element
Otherwise there might still some thread waiting for the receiver to
consume a message and we would deadlock here. Dropping the receiver
drops all messages and unblocks them all immediately.

Also don't panic when sending messages to a dropped receiver.
2019-07-04 18:13:36 +03:00
Sebastian Dröge 833b16def6 Update element/typefind factory ranks
The only None ranks now are:
- cdgdec/cdgparse: Primary
- rav1enc: Primary
- reqwesthttpsrc: Marginal
- s3sink/s3src: Primary
- mccenc/mccparse: Primary
- sccenc/sccparse: Primary

All other ranks are set to None until the elements are ready to replace
the existing C elements, or are otherwise production-ready and of a
element kind that should be autoplugged in one way or another.

For example the sodium elements are production-ready but can't be
autoplugged and as such should stay at a None rank.
2019-07-02 13:14:06 +03:00
Sebastian Dröge 6936ce11a7 reqwesthttpsrc: Add a basic unit test and a custom test harness 2019-07-01 02:03:20 +03:00
ahamedsajeer.15 42d4d10b43 rshttpsrc: rename to reqwesthttpsrc 2019-06-26 18:28:12 +05:30