git bisect of gst-plugins-bad

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

git bisect of gst-plugins-bad

Russel Winder
Hi,

I think I have managed to come to terms with using gst-build for creating
builds of the whole of gstreamer and plugins for a given tag. There are
irritants such as having to manually update all the git repositories that get
pulled in prior to running "ninja -C Build update" – since update doesn't seem
to update :-(

However trying to use "git bisect" on the whole thing is problematic since
many critical commits do not result in a usable build – wrong dependencies,
etc. Also for my problem I am told the right way forward is to leave the bulk
of GSteamer at 1.18 and just git bisect on gst-plugins-bad. Sounds good in
principle, but I cannot see how to do it. If I set up gst-build to 1.18 and
build, I get a usable build. If I then start a bisect session and move gst-
plugins-bad only to 1.17.1, I get:

gst-plugins-bad: NO Subproject gst-plugins-bad version is 1.17.1 but >= 1.18.0.1 required.

The requirement that all git repositories are at the same tag seems to be
hardwired into the Meson build.

So the question is how to create a 1.18 build of GStreamer and get do a git
bisect of gst-plugins-bad?

If I have missed a webpage that tells me how to do this please feel free to
say "read <url>".


--
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: git bisect of gst-plugins-bad

Nirbheek Chauhan
Hi Russel,

Yeah, git bisect of gst-build is very painful right now. I think you
can workaround the version restriction by setting `match_gst_version:
false` in meson.build. It's done for other subprojects, so you can use
that as an example.

However, you will still hit build issues due to API changes across
modules which you will have to resolve manually.

Cheers,
Nirbheek

PS: inb4 someone says that this would be less of a problem with a monorepo ;)


On Sun, Oct 25, 2020 at 11:45 PM Russel Winder <[hidden email]> wrote:

>
> Hi,
>
> I think I have managed to come to terms with using gst-build for creating
> builds of the whole of gstreamer and plugins for a given tag. There are
> irritants such as having to manually update all the git repositories that get
> pulled in prior to running "ninja -C Build update" – since update doesn't seem
> to update :-(
>
> However trying to use "git bisect" on the whole thing is problematic since
> many critical commits do not result in a usable build – wrong dependencies,
> etc. Also for my problem I am told the right way forward is to leave the bulk
> of GSteamer at 1.18 and just git bisect on gst-plugins-bad. Sounds good in
> principle, but I cannot see how to do it. If I set up gst-build to 1.18 and
> build, I get a usable build. If I then start a bisect session and move gst-
> plugins-bad only to 1.17.1, I get:
>
> gst-plugins-bad: NO Subproject gst-plugins-bad version is 1.17.1 but >= 1.18.0.1 required.
>
> The requirement that all git repositories are at the same tag seems to be
> hardwired into the Meson build.
>
> So the question is how to create a 1.18 build of GStreamer and get do a git
> bisect of gst-plugins-bad?
>
> If I have missed a webpage that tells me how to do this please feel free to
> say "read <url>".
>
>
> --
> Russel.
> ===========================================
> Dr Russel Winder      t: +44 20 7585 2200
> 41 Buckmaster Road    m: +44 7770 465 077
> London SW11 1EN, UK   w: www.russel.org.uk
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: git bisect of gst-plugins-bad

Russel Winder
On Mon, 2020-10-26 at 21:09 +0530, Nirbheek Chauhan wrote:
> Hi Russel,
>
> Yeah, git bisect of gst-build is very painful right now. I think you
> can workaround the version restriction by setting `match_gst_version:
> false` in meson.build. It's done for other subprojects, so you can use
> that as an example.

Adding this to the gst-plugins-bad entry in the top-level meson.build did the
job. I was able to ignore the few errors of compilation as they were not
connected to the problem or the code under test. Thanks for the pointer.

> However, you will still hit build issues due to API changes across
> modules which you will have to resolve manually.

Fortunately not a problem :-)

git bisect done. Problematic commit discovered. Now the question is how to get
a fix in place for a GStreamer 1.18.2 release.

Anyone interested please fgeel free to take a look at:

https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1419

--
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (849 bytes) Download Attachment