=== release 1.26.7 ===

2025-10-14 18:25:43 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.7

2025-09-08 17:50:32 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-pad-monitor.c:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/media-descriptor-writer.c:
	  gst: Don't use g_assert() around production code
	  If G_DISABLE_ASSERT is defined the code will not be compiled.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9721>

2025-09-08 17:47:48 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-pad-monitor.c:
	  validate: Check return from gst_pad_iterate_internal_links()
	  If G_DISABLE_CHECKS is defined, passing the NULL from
	  gst_pad_iterate_internal_links() to gst_iterator_next()
	  will cause a SIGSEGV.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9721>

2025-09-14 13:19:28 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.6

=== release 1.26.6 ===

2025-09-14 13:13:58 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.6

2025-09-01 21:02:22 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* meson.build:
	* validate/gst-libs/gst/video/meson.build:
	  meson: Convert all remaining fallback: usages to [provide]
	  Only commonly-used plugin deps like pango, orc, openh264, libvpx,
	  libnice are enabled by default.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1788
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9637>

2025-07-08 10:08:42 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Clarify list ref handling in gst_validate_action_set_done
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9636>

2025-06-11 01:43:55 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: fix memory leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9636>

2025-08-18 17:28:37 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-http-actions.c:
	  validate: http-actions: Replace GUri with GstURI for GLib 2.64 compatibility
	  GUri was added in GLib 2.66, but GStreamer claims to build with 2.64.
	  Replace GUri usage with equivalent GstURI functions to maintain
	  backward compatibility.
	  Fixes #4607
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9576>

2025-08-07 19:15:29 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.5

=== release 1.26.5 ===

2025-08-07 19:06:46 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.5

2025-07-16 15:33:19 +0200  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.4

=== release 1.26.4 ===

2025-07-16 15:26:21 +0200  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.4

2025-07-15 17:14:04 +0300  Sebastian Dröge <sebastian@centricular.com>

	* dots-viewer/Cargo.lock:
	* dots-viewer/Cargo.toml:
	  dots-viewer: Update Rust dependencies
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9399>

2025-06-26 21:29:34 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.3

=== release 1.26.3 ===

2025-06-26 21:25:24 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.3

2025-06-17 06:32:16 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Ignore error msgs when executing next action
	  When processing an expected error msg, the test for if the next action
	  was a message would trigger and we'd never execute the next action
	  causing a timeout.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-06-17 06:29:46 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Fix memory leaks
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-30 15:25:52 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-pad-monitor.c:
	  validate: Pass correct argument size to va_arg function
	  sizeof(int) != sizeof (GType) and can cause an invalid access.
	  Also one function call was missing the terminator altogether.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-30 15:29:23 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Fix a memory leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-30 15:30:10 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/validate.c:
	  validate: Reset mutex to NUL to allow re-init
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-28 08:53:21 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/tests/check/validate/expression_parser.c:
	* validate/tests/check/validate/monitoring.c:
	* validate/tests/check/validate/overrides.c:
	* validate/tests/check/validate/padmonitor.c:
	* validate/tests/check/validate/reporting.c:
	* validate/tests/check/validate/scenario.c:
	* validate/tests/check/validate/utilities.c:
	  validate: tests: use fixtures to init/deinit and fix leaks
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-28 09:08:05 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/flow/gstvalidateflow.c:
	* validate/gst/validate/gst-validate-internal.h:
	* validate/gst/validate/gst-validate-report.c:
	* validate/gst/validate/validate.c:
	  validate: cleanup several items on shutdown
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-28 09:01:08 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/flow/formatting.c:
	* validate/gst/validate/gst-validate-report.c:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/plugins/ssim/gstvalidatessim.c:
	* validate/tools/gst-validate-transcoding.c:
	  validate: Fix various memory leaks
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-28 09:04:21 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: ensure we shutdown execute_actions source
	  Actions are no longer always called directly from the main loop
	  so we can't depend on G_SOURCE_REMOVE to remove it. It's also
	  possible while returning up the call chain after running stop
	  to try to re-add it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9262>

2025-05-21 09:42:17 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/launcher/baseclasses.py:
	  validate: Escape '%' in Valgrind log filenames
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9154>

2025-05-21 09:41:14 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Fix marking actions done
	  Don't take extra ref during calling done() from 'stream-selection'
	  Mark as done actions that are completed immediately
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9154>

2025-05-21 09:37:30 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-report.c:
	  validate: Free log files
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9154>

2025-05-21 09:36:22 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/gst/validate/gst-validate-mockdecryptor.c:
	* validate/gst/validate/gst-validate-pipeline-monitor.c:
	* validate/gst/validate/gst-validate-reporter.c:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/validate.c:
	* validate/plugins/ssim/gstvalidatessim.c:
	* validate/tests/check/validate/monitoring.c:
	* validate/tests/check/validate/padmonitor.c:
	* validate/tests/check/validate/reporting.c:
	* validate/tests/check/validate/scenario.c:
	  validate: Various minor cleanups for lost memory or use after free
	  Includes several missing unref(), clear() or free() calls.
	  Reset current_seek since we just cleared all the seeks.
	  Reset all_configs to NULL to prevent double clearing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9154>

2025-05-30 00:03:12 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.2

=== release 1.26.2 ===

2025-05-29 23:56:43 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.2

2025-03-31 11:10:12 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: scenario: Fix race condition when ignoring EOS
	  The part of the code that is commented with:
	  ```
	  /* gst_validate_action_set_done() does not finish the action
	  * immediately. Instead, it posts a task to the main thread to do most
	  * of the work in _action_set_done().
	  *
	  * While the EOS handling lock guarantees that if an action had to call
	  * gst_validate_action_set_done() it has done so, it does not guarantee
	  * that _action_set_done() has been called.
	  *
	  * Is it possible that this handler is run before _action_set_done(), so
	  * we check at this point for actions that have a pending_set_done and
	  * call it before continuing. */
	  ```
	  was not being executed in the case where the scenario was 'ignoring EOS'
	  while it was also required.
	  Also fix potential use after free in that specific code path.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9098>

2025-05-17 20:23:56 -0400  Doug Nazar <nazard@nazar.ca>

	* validate/launcher/baseclasses.py:
	  validate: baseclasses: Reset Test timeouts between iterations
	  Several options (valgrind, gdb, rr) increase the timeout each time
	  the tests start. Eventually reaching inf and causing a conversion
	  to integer to throw an exception.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9091>

2025-04-01 18:24:10 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* dots-viewer/meson.build:
	  devtools: Fix meson warning when calling add_languages()
	  WARNING: add_languages is missing native:, assuming languages are wanted for both host and build.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8919>

2025-04-24 20:26:57 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.1
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8890>

=== release 1.26.1 ===

2025-04-24 20:20:14 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.1

2025-04-01 09:01:41 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/.gitignore:
	* dots-viewer/bundle-entry.js:
	* dots-viewer/package-lock.json:
	* dots-viewer/package.json:
	* dots-viewer/static/dist/bundle.css:
	* dots-viewer/static/dist/bundle.js:
	* dots-viewer/static/dist/bundle.js.LICENSE.txt:
	* dots-viewer/static/js/fuse.min.mjs:
	* dots-viewer/static/js/gstdots.js:
	* dots-viewer/static/js/viz-standalone.mjs:
	* dots-viewer/static/overlay.html:
	* dots-viewer/update_vendored.sh:
	* dots-viewer/webpack.config.js:
	  devtools: dots-viewer: Bundle js dependncies using webpack
	  And avoid relying on cdn's and require access to the network to use `dots-viewer`
	  And git ignore `node_modules`
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4334
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8847>

2025-03-23 01:59:48 +0100  Jan Tojnar <jtojnar@gmail.com>

	* validate/gst/validate/meson.build:
	  validate: Add gst-video to Requires in pkg-config
	  `gst/validate/validate.h` includes `gst/validate/gst-validate-media-info.h`,
	  which in turn includes `gst/pbutils/pbutils.h` but `gstreamer-pbutils-1.0`
	  was only listed in `Requires.private` field of `gstreamer-validate-1.0.pc`.
	  This would cause projects linking against `gstreamer-validate-1.0.pc` to fail to find
	  the headers when using alternative interpretation of pkg-config specification
	  that only considers private dependencies for include path during static builds,
	  such as the case e.g. on Nix.
	  https://gitlab.freedesktop.org/pkg-config/pkg-config/-/issues/28
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8708>

2025-03-12 19:16:03 +0200  Sebastian Dröge <sebastian@centricular.com>

	* dots-viewer/Cargo.lock:
	* dots-viewer/Cargo.toml:
	  devtools: dots-viewer: Update dependencies and make windows dependencies conditional
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8631>

2025-03-11 20:23:16 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.26.0
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8618>

=== release 1.26.0 ===

2025-03-11 20:14:44 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.26.0

2025-02-28 11:25:00 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* validate/gst/validate/gst-validate-http-actions.c:
	  validate: Do not use G_URI_FLAGS_NONE symbol from 2.66
	  The GStreamer project currently requires GLib 2.64,
	  so just avoid this new API for now.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8577>

2025-02-26 07:12:02 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/Cargo.toml:
	  dots-viewer: cargo: Mark as not being part of a workspace
	  Otherwise if GStreamer is checked out inside a directory that
	  has a `Cargo.toml` file, building fails with:
	  ```
	  error: current package believes it's in a workspace when it's not:
	  current rust-project/gstreamer/subprojects/gst-devtools/dots-viewer/Cargo.toml
	  workspace rust-project/Cargo.toml
	  This may be fixable by adding `gstreamer/subprojects/gst-devtools/dots-viewer`
	  to the `workspace.members` array of the manifest located at: rust-project/Cargo.toml
	  Alternatively, to keep it out of the workspace, add the package to the `workspace.exclude`
	  array, or add an empty `[workspace]` table to the package's manifest.
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8562>

2025-01-28 11:45:32 +0100  Jochen Henneberg <jochen@centricular.com>

	* validate/gst/validate/gst-validate-report.c:
	  validate: Don't print to stdout on bail out
	  Otherwise, if the output is multiline like from expected/actual file
	  comparison mismatch, meson will parse the lines for TAP formatted
	  strings and report an error. In that case the tests is accidently
	  SKIPPED instead of FAIL.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8376>

2025-01-28 11:43:50 +0100  Jochen Henneberg <jochen@centricular.com>

	* validate/gst/validate/flow/gstvalidateflow.c:
	  validate: Get proper error message on diff error instead of assert
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8376>

2025-01-28 11:42:19 +0100  Jochen Henneberg <jochen@centricular.com>

	* validate/gst/validate/flow/gstvalidateflow.c:
	  validate: 'bat' is optional
	  If 'bat' is not installed G_IS_SUBPROCESS (subprocess) fails and the
	  error message is misleading.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8376>

2025-02-24 14:08:59 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/cargo_wrapper.py:
	  dots-viewer: cargo_wrapper: Force log file to be written in utf-8
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8242>

2024-12-11 17:28:21 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-http-actions.c:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/meson.build:
	  validate: Implement a 'http-request' action type
	  Which is useable with our own HTTP server
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8128>

2024-12-10 23:42:56 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: scenario: Reset the pipeline on expected ERROR messages while executing actions
	  Otherwise the scenario gets into an inconsistent state and users won't
	  be able to properly recover.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8128>

2024-12-10 23:37:54 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: scenario: Better log expected Error messages on the bus
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8128>

2024-12-10 18:23:38 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/launcher/RangeHTTPServer.py:
	  validate: launcher: add HTTP server control endpoints
	  Add administrative REST API endpoints to RangeHTTPServer allowing tests to:
	  - Configure HTTP return codes for specific paths:
	  * PUT /admin/status-rules to set rules
	  * Support time-based expiry with "during" parameter
	  * Support count-based expiry with "repeat" parameter
	  * DELETE /admin/status-rules/<path> to remove rules
	  - Track failure statistics:
	  * PUT /admin/failure-counts/start to begin monitoring
	  * GET /admin/failure-counts/<path> to get current count
	  Useful for testing HTTP retry mechanisms, error handling and failure
	  recovery behaviors.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8128>

2024-12-10 13:00:32 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	* validate/launcher/RangeHTTPServer.py:
	* validate/launcher/baseclasses.py:
	  validate: scenario: Add an action type to start the http scenario
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8128>

2025-02-23 23:52:57 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.25.90

=== release 1.25.90 ===

2025-02-23 23:44:10 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.25.90

2024-12-06 18:13:07 +0100  Alicia Boya García <aboya@igalia.com>

	* validate/launcher/apps/gstvalidate.py:
	* validate/launcher/baseclasses.py:
	  validate: miscellaneous Python cleanups
	  I spent too much time trying to navigate validate Python code to figure
	  out where a test was coming from. Hoping that it's slightly easier for
	  the next person, this patch:
	  * Adds type annotations to setup_tests(), for the sake of code
	  navigation.
	  * Adds comments matching each test generator with the patterns of test
	  names it produces.
	  * Removes an if statement in `register_default_scenarios()` where both
	  branches have the same exact code with the same exact very long list.
	  * Removes NamedDic [sic] and replaces it with SimpleNamespace from the
	  standard library (3.3+) which has the same purpose and API.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8090>

2025-02-19 12:49:31 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/static/js/gstdots.js:
	  dots-viewer: Move away from forEach in js
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8521>

2025-02-19 12:27:08 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/src/main.rs:
	* dots-viewer/static/js/gstdots.js:
	  dots-viewer: Remove containing div when removing last dot file from a folder
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8521>

2025-02-14 10:39:24 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/static/overlay.html:
	  dots-viewer: Add `dragscroll` support for better UX
	  Patch suggested by Rubén Gonzalez
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2025-02-11 22:37:14 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/Cargo.toml:
	* dots-viewer/README.md:
	* dots-viewer/meson.build:
	* dots-viewer/src/gstdump.rs:
	  devtools: Remove the gstdump binary as the 'dots' tracer replaces it
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2025-02-11 22:22:30 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/Cargo.lock:
	* dots-viewer/Cargo.toml:
	* dots-viewer/src/main.rs:
	  devtools: dots-viewer: Reimplement get_user_cache_dir the same way as in the GLib
	  The 'dirs' crate doesn't behave the same which makes it harder to work with in rust
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2024-11-29 17:11:18 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/src/gstdump.rs:
	  devtools: gstdump: Check that `pipeline-snapshot` is present
	  And use the tracing crate for logging to make it cleaner
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2024-11-29 16:49:47 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/README.md:
	* dots-viewer/src/gstdump.rs:
	* dots-viewer/src/main.rs:
	* dots-viewer/src/protocol.rs:
	* dots-viewer/static/images/gst-dots-viewer.jpeg:
	* dots-viewer/static/index.html:
	* dots-viewer/static/js/gstdots.js:
	  dots-viewer: Add "Dump Pipelines" button
	  Add a button in the web interface to trigger pipeline dumps via websocket,
	  replacing the need to manually send SIGUSR1 to the process. Also set up
	  the pipeline-snapshot tracer with the proper websocket URL by default.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2024-11-28 22:06:58 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/static/index.html:
	  dots-viewer: Use a dark theme
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2024-11-27 13:42:02 -0300  Thibault Saunier <tsaunier@igalia.com>

	* dots-viewer/Cargo.lock:
	* dots-viewer/Cargo.toml:
	* dots-viewer/README.md:
	* dots-viewer/build.rs:
	* dots-viewer/cargo_wrapper.py:
	* dots-viewer/meson.build:
	* dots-viewer/package-lock.json:
	* dots-viewer/package.json:
	* dots-viewer/src/gstdump.rs:
	* dots-viewer/src/main.rs:
	* dots-viewer/static/css/graphviz.svg.css:
	* dots-viewer/static/images/favicon-120.png:
	* dots-viewer/static/images/favicon-128.png:
	* dots-viewer/static/images/favicon-152.png:
	* dots-viewer/static/images/favicon-16.png:
	* dots-viewer/static/images/favicon-180.png:
	* dots-viewer/static/images/favicon-192.png:
	* dots-viewer/static/images/favicon-196.png:
	* dots-viewer/static/images/favicon-228.png:
	* dots-viewer/static/images/favicon-32.png:
	* dots-viewer/static/images/favicon-57.png:
	* dots-viewer/static/images/favicon-76.png:
	* dots-viewer/static/images/favicon-96.png:
	* dots-viewer/static/images/favicon.png:
	* dots-viewer/static/images/gst-dots-viewer-video.jpeg:
	* dots-viewer/static/images/gst-dots-viewer.jpeg:
	* dots-viewer/static/index.html:
	* dots-viewer/static/js/fuse.min.mjs:
	* dots-viewer/static/js/gstdots.js:
	* dots-viewer/static/js/jquery.graphviz.svg.js:
	* dots-viewer/static/js/viz-standalone.mjs:
	* dots-viewer/static/overlay.html:
	* meson.build:
	* meson_options.txt:
	  devtools: Add dots-viewer set of tools
	  This adds `gstdump` and `gst-dots-viewer` server, see the
	  README for more details about what those tools do.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7999>

2025-02-09 17:47:32 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.25.50

=== release 1.25.50 ===

2025-02-09 17:35:17 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.25.50

2025-01-20 13:23:50 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/meson.build:
	  docs: explicitly list gir files as depends for generating configs
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8324>

2025-01-15 17:36:00 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/meson.build:
	  docs: generate hotdoc configs for libraries with our helper script
	  With this patch, configure time is identical no matter whether doc is
	  enabled or not.
	  The configuration files also now contain explicitly-listed sources with
	  no wildcards.
	  For the four libraries where hotdoc needs to use clang to generate the
	  documentation (as opposed to the rest of the libraries where hotdoc uses
	  the gir), the script will call pkg-config to determine the appropriate
	  C flags.
	  This means a side effect of this patch is that pkg-config files are now
	  generated for the gstadaptivedemux and gstopencv libraries.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312>

2025-01-16 10:04:17 +0100  Stéphane Cerveau <scerveau@igalia.com>

	* meson.build:
	  meson: set minimum version to 1.4
	  Since !8273 which introduces the use file.full_path(),
	  the meson minimum version should be 1.4
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8309>

2025-01-14 15:00:43 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.25.1

=== release 1.25.1 ===

2025-01-14 14:52:48 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-devtools.doap:
	* meson.build:
	  Release 1.25.1

2025-01-13 18:10:31 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/meson.build:
	* meson.build:
	* validate/gst/validate/meson.build:
	  docs: port plugins to explicit sources
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8273>

2025-01-10 08:58:42 +0100  Edward Hervey <edward@centricular.com>

	* meson.build:
	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Add more warning flags
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229>

2025-01-10 11:15:36 +0100  Edward Hervey <edward@centricular.com>

	* validate/gst/validate/flow/gstvalidateflow.c:
	* validate/gst/validate/gst-validate-extra-checks.c:
	* validate/gst/validate/gst-validate-report.c:
	  validate: Fix old style definition
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229>

2024-12-18 17:11:33 -0300  Thibault Saunier <tsaunier@igalia.com>

	* docs/meson.build:
	* meson.build:
	* validate/data/scenarios/meson.build:
	* validate/gst/validate/meson.build:
	* validate/meson.build:
	* validate/tests/meson.build:
	* validate/tools/meson.build:
	  meson: Give the same name for api_version in all modules
	  There were 2 version of it, apiversion and api_version, I chose the one
	  with most occurencies: `api_version`
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8178>

2024-12-10 12:52:33 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  meson: unset GST_TRACERS for g-ir-scanner to avoid warnings
	  People might have GST_TRACERS=leaks set in their environment
	  by default, which will now trigger criticals during the build
	  when calling g-ir-scanner, because we unset GST_PLUGIN_SYSTEM_PATH
	  so that the scanner doesn't load any plugins.
	  Fixes #4093
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8121>

2024-12-06 09:26:29 -0300  Thibault Saunier <tsaunier@igalia.com>

	* docs/gst-validate-transcoding.md:
	* docs/gst-validate.md:
	  typos: Fix avalaible/available typos
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8086>

2024-11-29 20:19:53 +0100  Alicia Boya García <aboya@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate-scenario: Fix busy waiting, missing lock
	  execute_next_action_full() logs that it removes the source when an
	  action returns ASYNC, but the code for that was incomplete, as it was
	  setting source_id to zero but not actually removing the source.
	  This lead to execute_next_action_full() being run continuously, only
	  alliviated by the default 10ms interval in the GSource from
	  `scenario->priv->action_execution_interval`.
	  This patch fixes that. As a drive-by fix it also adds locking to one
	  remaining unlocked usage of `priv->execute_actions_source_id`.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8014>

2024-11-13 17:02:00 +1100  Matthew Waters <matthew@centricular.com>

	* validate/plugins/gapplication/gstvalidategapplication.c:
	  validate/gapplication: silence a maybe-unitialized warning
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7875>

2024-11-15 11:46:14 -0300  Thibault Saunier <tsaunier@igalia.com>

	* meson.build:
	  meson: Bump minimum version to 1.3
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4025
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7899>

2024-08-15 17:58:14 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/flow/formatting.c:
	  validate: flow: Fix logging upstream events
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-08-20 10:45:50 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-internal.h:
	* validate/gst/validate/gst-validate-runner.c:
	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Add a way to force monitoring all pipelines in a .validatetest file
	  See documentation for more details
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-08-27 20:41:18 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Add a `deep-property-path` parameter to the `wait` signal
	  Allowing wait actions to wait on any property of any element in the pipeline,
	  even for elements that might be added later in the pipeline. This also
	  works for pads which can be pretty useful
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-08-27 17:48:25 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/doc/meta-features-rank.md:
	* validate/gst/validate/gst-validate-internal.h:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/gst-validate-utils.c:
	* validate/gst/validate/gst-validate-utils.h:
	* validate/gst/validate/validate.c:
	* validate/gst/validate/validate.res:
	  validate: Allow overriding features rank early in testfiles meta
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-09-24 09:48:54 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/launcher/baseclasses.py:
	* validate/launcher/main.py:
	  validate: launcher: Remove log files for passing tests by default
	  Adding an option to keep them no matter what.
	  Log files are often pretty large and keeping them around can be annoying,
	  usually people won't look at logs files for passing tests, and we do not
	  even print them out.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-03-06 16:37:48 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/tests/launcher_tests/test_validate.py:
	  validate: Remove some regex related python 3.12 warnings
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-02-15 17:22:23 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: scenario: Add a way to make the select-streams run several times
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-02-01 14:33:12 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-utils.c:
	* validate/gst/validate/validate.c:
	* validate/launcher/baseclasses.py:
	  validate: Add a way to retrieve HTTP server port in .validatetest files
	  By setting a `$(http_server_port)s` variable in a dedicated config file
	  and making sure that file can always be imported in `.validatetest`
	  files.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7700>

2024-11-03 17:30:40 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/meson.build:
	  meson: bail out earlier in docs subdir if docs are disabled
	  The gst_dep.get_variable('libexecdir') may fail in some scenarios
	  (e.g. building a module alone inside an uninstalled devenv) and
	  it shouldn't really be reached in the first place if docs are
	  disabled via options.
	  Also to avoid confusing meson messages when cross-compiling or
	  doing a static build.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7818>

2024-10-29 15:36:49 +0100  Edward Hervey <edward@centricular.com>

	* validate/gst-libs/gst/video/gssim.c:
	* validate/plugins/ssim/gstvalidatessim.c:
	  validate: Fix leaks in ssim components
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7782>

2024-10-27 12:49:40 -0300  Thibault Saunier <tsaunier@igalia.com>

	* meson.build:
	  meson: Remove c_std=gnu99 in validate and python
	  This is not needed and causes warning with latest meson
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7766>

2024-10-26 02:10:37 +0100  Tim-Philipp Müller <tim@centricular.com>

	* validate/launcher/testsuites/check.py:
	  validate: skip curlhttpsrc test_get_range when running in valgrind
	  Seems to reliably fail (timeout) when running in valgrind
	  on the post-F40 CI.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7753>

2024-10-26 02:09:44 +0100  Tim-Philipp Müller <tim@centricular.com>

	* validate/launcher/testsuites/check.py:
	  validate: add srtp test_roc to valgrind exclude list
	  Consistently fails on CI after F40 upgrade.
	  See #3939
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7753>

2024-10-26 00:18:51 +0100  Tim-Philipp Müller <tim@centricular.com>

	* validate/launcher/baseclasses.py:
	  validate: launcher: add --fair-sched=try to valgrind args
	  Enables fairer scheduling of threads in valgrind, possibly
	  at cost of performance though.
	  Hopefully helps with valgrind core/base jobs deadlocking or
	  timing out when runners are not under load.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7753>

2024-10-18 13:53:11 +0200  Edward Hervey <edward@centricular.com>

	* validate/launcher/testsuites/check.py:
	  tests: Blacklist more netsim test
	  They are know to be racy/failing
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/792
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7736>

2024-10-21 10:16:14 +0000  Corentin Damman <c.damman@intopix.com>

	* validate/tools/gst-validate.c:
	  validate: use real_main instead of main in run_test_from_file
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7704>

2024-10-18 17:50:40 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/flow/gstvalidateflow.c:
	  validate: flow: Display diffs properly
	  When called after writing the report we can't see them
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5035>

2024-08-29 20:09:52 +0300  Sebastian Dröge <sebastian@centricular.com>

	* validate/gst/validate/flow/formatting.c:
	* validate/gst/validate/gst-validate-pipeline-monitor.c:
	* validate/gst/validate/gst-validate-report.c:
	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/gst-validate-utils.c:
	* validate/gst/validate/validate.c:
	* validate/plugins/ssim/gstvalidatessim.c:
	  common: Stop using GQuark-based GstStructure field name API
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7432>

2024-09-09 11:07:48 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-pad-monitor.c:
	  validate: pad-monitor: Fix remaining pad functions data handling
	  That case was missed in a5717530899836cdc32e17edc8f8e47d2c14420d
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7477>

2024-05-08 11:34:34 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/launcher/baseclasses.py:
	* validate/launcher/main.py:
	* validate/launcher/utils.py:
	  validate: launcher: Add support for lldb
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7452>

2024-09-07 08:37:33 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-pad-monitor.c:
	  validate: pad-monitor: Fix pad function data properly
	  Until now we were overriding pad functions forgetting about the function
	  data (that are set using the _full variant of the functions setters), meaning
	  that the data was lost and any user of that feature would get empty data when
	  the wrapped function were called.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7466>

2024-09-04 17:16:09 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	* validate/gst/validate/gst-validate-scenario.h:
	  validate: scenario: Handle the fact that structs field names don't have a static lifetime anymore
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7453>

2024-09-04 20:13:23 +0300  Sebastian Dröge <sebastian@centricular.com>

	* validate/launcher/baseclasses.py:
	* validate/launcher/reporters.py:
	  validate: Properly use `errors = 'replace'` for handling invalid utf8 characters
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7453>

2024-08-21 09:24:58 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/launcher/testsuites/check.py:
	  ci: Fail tests if we forget to checkout expectation files
	  And add missing expectation files
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7400>

2024-08-15 17:58:14 -0400  Thibault Saunier <tsaunier@igalia.com>

	* docs/gst-validate-flow.md:
	* validate/gst/validate/flow/formatting.c:
	* validate/gst/validate/flow/formatting.h:
	* validate/gst/validate/flow/gstvalidateflow.c:
	* validate/gst/validate/gst-validate-pad-monitor.c:
	  validate: flow: Allow logging upstream events
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7382>

2024-08-09 11:17:01 +0300  Sebastian Dröge <sebastian@centricular.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Copy action structure before retrieving strings from it
	  The returned strings are only valid for as long as the structure is valid.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7333>

2024-08-09 11:08:36 +0300  Sebastian Dröge <sebastian@centricular.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  validate: Fix copying of action name
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7333>

2024-07-26 15:12:26 +0200  Edward Hervey <edward@centricular.com>

	* validate/gst/validate/gst-validate-reporter.c:
	  validate: reporter: Don't pollute logs
	  There was a stray g_printerr introduced by 2a4b9c8dc14b2330f764bbb50791720bb4c4f7d4
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7275>

2024-06-19 15:31:11 +0200  Alicia Boya García <aboya@igalia.com>

	* validate/gst/validate/gst-validate-scenario.c:
	  gst-validate: Don't treat FALSE when sending flushes as an error
	  gst_element_send_event(FLUSH_START / FLUSH_STOP) returns FALSE in cases
	  where any of the most downstream elements have unlinked pads, even if
	  the pipeline is successfully flushed.
	  Currently this is considered expected behavior in GStreamer. This patch
	  updates gst-validate to treat it as such and therefore not fail the test
	  for a "failing" flush.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7064>

2023-10-23 20:12:29 +0300  Jordan Petridis <jordan@centricular.com>

	* validate/gst/validate/gst-validate-report.c:
	  validate: Remove G_REGEX_OPTIMIZE usage
	  It's not needed and causes issues with valgrind (which doesn't support jit)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7112>

2024-06-18 09:53:27 -0400  Thibault Saunier <tsaunier@igalia.com>

	* validate/tools/gst-validate-images-check.c:
	* validate/tools/gst-validate-rtsp-server.c:
	* validate/tools/gst-validate-transcoding.c:
	* validate/tools/gst-validate.c:
	  validate: tool: Use gst_macos_main
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7056>

2024-04-16 13:11:02 +0100  Philippe Normand <philn@igalia.com>

	* debug-viewer/GstDebugViewer/Plugins/__init__.py:
	  debug-viewer: Fix plugin loading machinery
	  The previous code was failing at least with Python 3.11 and Python 3.12.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6659>

2024-02-08 13:42:31 +0100  Loïc Le Page <llepage@igalia.com>

	* validate/gst/validate/flow/formatting.c:
	  gst-validate: add formatting for GstAudioMeta
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6461>

2024-03-20 09:32:57 -0300  Thibault Saunier <tsaunier@igalia.com>

	* validate/gst/validate/gst-validate-reporter.c:
	  validate: reporter: Use an MT safe weak ref to reporter for GLog handling
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6412>

2024-03-05 12:58:57 +0000  Tim-Philipp Müller <tim@centricular.com>

	* RELEASE:
	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6261>

=== release 1.24.0 ===

