=== release 1.27.2 ===

2025-09-07 20:34:55 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-python.doap:
	* meson.build:
	  Release 1.27.2

2025-09-01 18:39:56 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gi/overrides/Gst.py:
	  gst-python: Add workaround for pygobject handling nullability in gst_init() wrong
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9524>

2025-08-18 14:13:55 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gi/overrides/gstmodule.c:
	  python: Handle buffer PTS/DTS/duration/offset/offset-end as unsigned long long
	  Previously these fields were truncated to 32 bits on 32 bit platforms and
	  64 bit Windows because of using `unsigned long`.
	  Thanks to Tim Williams for reporting and debugging this issue.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4603
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9567>

2025-07-30 18:24:49 -0400  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/meson.build:
	  scripts: git-hooks: ci: Add GES children properties documentation check
	  Add a pre-commit hook that automatically checks if GES children properties
	  documentation is up to date when GES source files are modified. The hook
	  runs the document-children-props.py script and warns if the generated
	  documentation files have changes that need to be committed.
	  This ensures that children properties documentation stays synchronized
	  with code changes and prevents outdated documentation from being merged.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5987>

2025-07-08 20:00:07 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.27.1

=== release 1.27.1 ===

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

	* NEWS:
	* RELEASE:
	* gst-python.doap:
	* meson.build:
	  Release 1.27.1

2025-06-10 14:41:22 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* scripts/gen-changelog.py:
	  gstreamer-vaapi: remove subproject
	  It's almost superseded by va plugin in gst-plugins-bad.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9200>

2025-01-09 16:26:50 +0100  Edward Hervey <edward@centricular.com>

	* testsuite/meson.build:
	  gst-python/tests: don't depend on webrtc and rtsp-server
	  They might not be built, nor are they needed for the tests
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8292>

2025-05-30 12:41:24 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/GstApp.py:
	* gi/overrides/gstmodule.c:
	* gi/overrides/meson.build:
	* testsuite/meson.build:
	* testsuite/test_appsink.py:
	  python: Fix pulling events from appsink
	  appsink.pull_object() is introspectable, but it needs a way to convert
	  the GstMiniObject to its GstEvent/GstSample subclass.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>

2025-06-01 15:31:12 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/Gst.py:
	  python: Inherit MiniObject first
	  This ensures methods it overrides takes precedence over
	  gi's Gst.MiniObject. Python's MRO resolves in leftmost class first.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>

2025-06-01 16:29:09 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/Gst.py:
	* testsuite/test_gst.py:
	  python: Fix API break by not forcing usage of context manager
	  caps.get_structure(0).get_name() used to work, but the usage of
	  StructureWrapper broke it but forcing to wrap it in a "with" statement.
	  We already have a Structure subclass, simply make it reference its
	  parent Gst.Caps object.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>

2025-05-30 11:34:00 -0400  Xavier Claessens <xclaessens@netflix.com>

	* testsuite/meson.build:
	  python: Fix unit tests running against system libgstreamer
	  Unit tests for which `i.get(2, [])` is empty were not adding
	  testsenv_ld_library_path to LD_LIBRARY_PATH.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>

2025-05-29 15:52:24 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* testsuite/test_gst.py:
	  python: Convert buffer metadata API to use @property decorators
	  Convert buffer metadata getter/setter methods to Python properties for
	  more intuitive access. This makes the API more Pythonic by allowing
	  direct property assignment (buf.pts = 42) instead of method calls
	  (buf.set_pts(42)).
	  Updated properties: flags, pts, dts, duration, offset, offset_end
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9134>

2025-05-23 13:09:04 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* gi/overrides/gstmodule.c:
	* testsuite/test_gst.py:
	  python: Make use of the new structure.is_writable method
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>

2025-05-23 00:25:53 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* gi/overrides/gstmodule.c:
	* testsuite/test_gst.py:
	  python: Add overrides for Buffer/Query/Event/Context to handle writability
	  And make them look more like proper MiniObject
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>

2025-05-22 23:26:23 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* gi/overrides/gstmodule.c:
	* testsuite/test_gst.py:
	  python: Factor out a MiniObject class that all mini object will be based on
	  Making the API closer to what it should be as Caps are MiniObject
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>

2025-05-22 19:19:27 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* gi/overrides/gstmodule.c:
	* testsuite/test_gst.py:
	  python: Add a Caps.get_value variant that does not copy the structures
	  Keeping the __getitem__ implementation the same way
	  This also now make structure.set_value() raise an exception if the structure
	  was not writable
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>

2025-05-18 15:25:00 +0200  Thibault Saunier <tsaunier@igalia.com>

	* gi/overrides/Gst.py:
	* gi/overrides/gstmodule.c:
	* testsuite/test_gst.py:
	  python: Add overrides to be able to write into the GstStructure inside GstCaps
	  Add Python bindings for allowing to modify GstCaps structures with proper
	  writability checks.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>

2025-05-09 11:14:03 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/Gst.py:
	* testsuite/test_types.py:
	  python: Add Gst.Float wrapper
	  When the float python type is used inside a GstValueArray, it is
	  converted to a G_TYPE_DOUBLE GValue. Sometimes it is important to be
	  able to force G_TYPE_FLOAT GValue, for instance to set the the
	  "mix-matrix" property on audioconvert.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8957>

2025-05-09 08:53:31 -0400  Xavier Claessens <xclaessens@netflix.com>

	* meson.build:
	  python: Fix usage of our overrides from devenv
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952>

2025-05-09 08:23:13 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/Gst.py:
	  python: Optimize ValueArray.get_size()
	  There is no need to call into C layer as we have the python list
	  already.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952>

2025-05-08 13:19:06 -0400  Xavier Claessens <xclaessens@netflix.com>

	* gi/overrides/Gst.py:
	* testsuite/test_types.py:
	  python: override Gst.ValueArray.append_value()
	  This ensures that self.array is kept up to date.
	  Add append() method that is more natural than the static method.
	  Allow creating empty ValueArray by omitting the constructor parameter.
	  Fixes: #3114
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952>

2025-05-08 14:06:32 -0400  Xavier Claessens <xclaessens@netflix.com>

	* testsuite/test_types.py:
	  python: Fix coding style errors in unit tests
	  Otherwise pre-commit does not pass.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952>

2025-03-15 20:56:17 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.options:
	  meson: rename meson_options.txt to meson.options
	  Which is supported since Meson 1.1:
	  https://mesonbuild.com/Release-notes-for-1-1-0.html#support-for-reading-options-from-mesonoptions
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8651>

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

	* plugin/meson.build:
	  gst-python: Fix warning about not specifying gst_plugins in the
	  ../meson.build:231: WARNING: DEPRECATED use of the `plugins` variable in gst-python.
	  ../meson.build:232: WARNING: The variable should now be called `gst_plugins` and use:
	  ../meson.build:233: WARNING: `declare_dependency( link_with: <plugin_target>,
	  variable: {'full_path': <plugin_target>.full_path()})` instead
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>

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

	* meson.build:
	  gst-python: Use allow_fallback instead of fallback
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>

2025-02-11 11:39:43 +0530  Santosh Mahto <santosh.mahto@collabora.com>

	* gi/overrides/GstAnalytics.py:
	* gi/overrides/gstanalyticsmodule.c:
	* testsuite/test_analytics.py:
	  python analytics: Add api iter_on_type to iterate over specific Mtd types
	  This adds new Python api `iter_on_type()` to GstAnalyticsRelationMeta
	  to iterate over mtd type specified by argument.
	  usage:
	  ```
	  for i in rmeta.iter_on_type(GstAnalytics.ODMtd):
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8459>

2025-02-24 19:46:12 +0530  Santosh Mahto <santosh.mahto@collabora.com>

	* gi/overrides/GstAnalytics.py:
	* gi/overrides/gstanalyticsmodule.c:
	* testsuite/test_analytics.py:
	  analytics: Add python api to get relation path
	  A new api `Mtd.relation_path()` is added to get relation chain
	  between two Mtd in RelationMeta.
	  Usage:
	  ```
	  for i in mtd1.relation_path(mtd2, max_span=4, relation_type=...):
	  pass
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8556>

2025-02-11 19:01:06 +0530  Santosh Mahto <santosh.mahto@collabora.com>

	* gi/overrides/GstAnalytics.py:
	* gi/overrides/gstanalyticsmodule.c:
	* testsuite/test_analytics.py:
	  gstanalytics: Add api iter_direct_related python to GstAnalyticsMeta
	  The API `iter_direct_related` allows to iterate over directly related
	  Mtd objects.
	  Usage:
	  ```
	  for i in mtd.iter_direct_related(GstAnalytics.RELATE_TO,
	  GstAnalytics.ODMtd)
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8461>

2025-03-20 10:09:21 +0100  Matteo Bruni <matteo.bruni@gmail.com>

	* plugin/gstpythonplugin.c:
	  gst-python: fix compatibility with PyGObject>=3.52.0
	  PyGObject 3.52.0 moved OverridesProxyModule _introspection_module to __slots__,
	  causing Segmentation Faults when accessing the field.
	  Since _introspection_module is used to get Gst.Element but is never actually
	  used afterward, we fix the issue by removing this part.
	  Fixes #4314
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8653>

2025-03-12 13:59:45 +0100  Tim-Philipp Müller <tim@centricular.com>

	* RELEASE:
	* meson.build:
	  Back to development in main branch after 1.26.0
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8621>

=== release 1.26.0 ===

