Subject: Packaging request - pgvector

From: Paul De Audney <[email-masked]>
Date: Thu, 13 Apr 2023 10:33:22 +1000

Hello maintainers,

Thank you for all the work you do maintaining the packages.

I was wondering what is the correct way to make a packaging request for
https://github.com/pgvector/pgvector?

The yum repo has this already packaged, is there any shared
infrastructure/packaging targets between the packaging formats/repos?

Kind regards,

Paul

---

From: Bradford Boyle <[email-masked]>
Date: Wed, 12 Apr 2023 20:13:49 -0700

On Wed, Apr 12, 2023 at 5:33 PM Paul De Audney <[email-masked]> wrote:
> I was wondering what is the correct way to make a packaging request for https://github.com/pgvector/pgvector?
>
> The yum repo has this already packaged, is there any shared infrastructure/packaging targets between the packaging formats/repos?
>
> Kind regards,
>
> Paul

Hi Paul,

I'm not a member of the PostgreSQL Debian packaging team and my
knowledge comes from looking at the various package repos and the code
for pgapt -- it's entirely possible that my knowledge is incorrect.
With that said, my understanding of how the PostgreSQL APT repo is
populated is that it takes upstream packages from Debian unstable and
rebuilds source and binary packages for all supported Debian and
Ubuntu distributions. The first step would be to prepare a Debian
package for pgvector and submit it for inclusion in Debian unstable.
Once that is done, a job can be added to pgapt to populate the repo
with rebuilds of this package.

I just checked and it doesn't look like there is an existing package
for pgvector, nor is there an intent to package (ITP) in the Debian
bug tracking system (BTS). I can help with creating a Debian package
for pgvector and preparing a patch for pgapt, but I'd need a Debian
developer to sponsor the upload to unstable and someone with commit
privileges to pgapt. If there's no objection, I can take a first pass
at this over the weekend.

-- Bradford

---

From: Christoph Berg <[email-masked]>
Date: Wed, 12 Apr 2023 22:56:20 -0700

Re: Bradford Boyle
> at this over the weekend.

That sounds excellent.

Would you want to maintain it within the PostgreSQL team on
salsa.debian.org where the other team-maintained packages live? I can
give you commit access there.

Christoph

---

From: Bradford Boyle <[email-masked]>
Date: Wed, 12 Apr 2023 23:52:10 -0700

> give you commit access there.

I think maintaining it within the PostgreSQL team on salsa.debian.org
makes sense; my username is bradfordboyle. Let me know if you need any
other information, otherwise I'll follow up here when I have something
ready for review.

mfg,
--Bradford

---

From: Christoph Berg <[email-masked]>
Date: Thu, 13 Apr 2023 11:16:07 -0700

Re: Bradford Boyle
> other information, otherwise I'll follow up here when I have something

I sent you an invite, let me know if I can help with anything.

Thanks,
Christoph

---

From: Bradford Boyle <[email-masked]>
Date: Thu, 13 Apr 2023 23:05:30 -0700

Hi Christoph,

I got around to working on this before the weekend. Here is a summary of what I
have done so far and where you can find the different pieces.

* Opened an ITP bug [1] for pgvector
  * Wasn't sure if I should use 'X-Debbugs-Cc' to send the bug to either
    pgsql-pkg-debian or team+postgresql; I erred on the side of caution and not
    spamming lists
* Used 'dh make_pgxs' to create the initial source package
  * d/control has me listed as uploader; I think this is correct given my
    understanding of Debian policy [2]
  * d/changelog contains 'UNRELEASED'; my experience with the Debian Go team is
    that it should remain 'UNREALEASED' until its actually uploaded
* Addressed all FIXMEs in the initial source package
* Verified the package builds locally w/ sbuild
* Created new project on salsa [3], update CI/CD settings to point
  d/gitlab-ci.yml
  * For now, I've pushed my work to 'develop' and not 'master' so I can
    incorporate any feedback before squashing and pushing to 'master'
* Added a job for pgvector to the pgapt Jenkins jobs (attached as a patch)

[1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1034391
[2]: https://www.debian.org/doc/debian-policy/ch-controlfields.html#uploaders
[3]: https://salsa.debian.org/postgresql/pgvector

---

From: Christoph Berg <[email-masked]>
Date: Fri, 14 Apr 2023 10:57:35 -0700

Re: Bradford Boyle
> have done so far and where you can find the different pieces.

Hi Bradford,

I'm currently travelling so I can't promise to look at it now, but
what you said sounds very promising. Will check asap.

>     understanding of Debian policy [2]

Uploaders has been misnamed forever, it's really "Co-Maintainers", so
your name in there is correct and welcome.

Christoph

---

From: Bradford Boyle <[email-masked]>
Date: Sun, 14 May 2023 13:17:20 -0700

Hi Christoph,

I wanted to follow up on this thread and see if there are any
outstanding items that I can work on addressing.

Thanks,
--Bradford

---

From: Christoph Berg <[email-masked]>
Date: Wed, 17 May 2023 17:08:08 +0200

Re: Bradford Boyle

Hi Bradford,

sorry I simply forgot to follow up.

The packaging looks very good, I just had to do a minor tweak in
debian/watch to make it download the tarball.

Unfortunately there's a problem with i386:
https://github.com/pgvector/pgvector/issues/131
... but depending on what upstream thinks, we might simply ignore it.

Another bit was to make it work on ppc64el:
https://salsa.debian.org/postgresql/pgvector/-/blob/develop/debian/patches/no-native

Apart from the i386 issue, it looks good now:
https://pgdgbuild.dus.dg-i.net/job/pgvector-binaries/2/

I'll push the architectures that built to apt.pg.o so people can
already have a look in the *-pgdg-testing distributions.

Thanks,
Christoph

---

From: Christoph Berg <[email-masked]>
Date: Mon, 22 May 2023 19:08:01 +0200

Re: To Bradford Boyle

Hi Bradford,

with the recent upstream changes, everything looks good now.

Thanks for such an excellent packaging!

(Feel free to also wander into other packages if you want to.)

Christoph