On Thu Mar 21, 2024 at 3:44 AM CDT, Peter Eisentraut wrote:
Here is an updated version of this patch set.

You should add 'disabler: true' to the git find_program in Meson. If Git doesn't exist on the system with the way your patch is currently written, the targets would be defined, even though they would never succeed.

You may also want to make sure that we are actually in a Git repository. I don't think git-archive works outside one.

Re the autoclrf, is this something we could throw in a .gitattributes files?

I have removed the "dirty check" stuff. It didn't really work well/was buggy under meson, and it failed mysteriously on the Linux CI tasks. So let's just drop that functionality for now.

I have also added a more complete commit message and some more code comments.

Meson has its own distribution building command (meson dist), but we
are not using that at this point.  The main problem is that the way
they have implemented it, it is not deterministic in the above sense.
Also, we want a "make" version for the time being.  But the target
name "dist" in meson is reserved for that reason, so we call the
custom target "pgdist" (so call something like "meson compile -C build
pgdist").

I would suggest poisoning `meson dist` in the following way:

if not meson.is_subproject()
# Maybe edit the comment...Maybe tell perl to print this message # instead and then exit non-zero?
        #
        # Meson has its own distribution building command (meson dist), but we
        # are not using that at this point.  The main problem is that the way
        # they have implemented it, it is not deterministic in the above sense.
        # Also, we want a "make" version for the time being.  But the target
        # name "dist" in meson is reserved for that reason, so we call the
        # custom target "pgdist" (so call something like "meson compile -C build
        # pgdist").
        #
# We don't poison the dist if we are a subproject because it is # possible that the parent project may want to create a dist using # the builtin Meson method.
        meson.add_dist_script(perl, '-e', 'exit 1')
endif

I have extracted the freebsd CI script fix into a separate patch (0002). I think this is useful even if we don't take the full CI patch (0003).

0002 looks pretty reasonable to me.

About the 0003 patch: It seems useful in principle to test these things continuously. The dist script runs about 10 seconds in each task, and takes a bit of disk space for the artifacts. I'm not sure to what degree this might bother someone.

0003 works for me :).

--
Tristan Partin
Neon (https://neon.tech)


Reply via email to