Skip to content

[REL_2_STABLE] License: register PostgreSQL components under their own notices - #2086

Merged
tuhaihe merged 3 commits into
apache:REL_2_STABLEfrom
tuhaihe:license-register-pg-components
Oct 7, 2026
Merged

tuhaihe merged 3 commits into
apache:REL_2_STABLEfrom
tuhaihe:license-register-pg-components

Conversation

@tuhaihe

@tuhaihe tuhaihe commented Oct 7, 2026

Copy link
Copy Markdown
Member

Several files inherited from PostgreSQL carry a copyright notice and licence of their own, but LICENSE did not list them. Add entries, with the notices copied verbatim under licenses/:

  • BSD-3: BSD libc code under University of California notices (getopt, getopt_long, mkdtemp, pgmkdirp, fls, bsearch_arg, sort_template.h), the KAME MD5 and SHA-1 code, and pgcrypto's crypt-des.c.
  • BSD-2: the pgcrypto files copyright Marko Kreen.
  • ISC: strlcat.c, inet_net_ntop.c and timingsafe_bcmp.c.
  • MIT: pgcrypto's Blowfish (from PuTTY) and imath.
  • PostgreSQL-style: pageinspect, pgrowlocks and pgstattuple files copyright Tatsuo Ishii and Satoshi Nagayasu.
  • Public domain: pgcrypto's bcrypt code and five message catalogs.
  • Other permissive notices: pgcrypto's Rijndael, the GEQO operators adopted from Genitor, erand48.c and the pg_dump archiver.
  • fuzzystrmatch's dmetaphone.c, which carries both a notice placing the Text::DoubleMetaphone portions under the same terms as Perl and a PostgreSQL-style notice for the rest.

Also list src/include/regex under the regex entry, and register Greenplum's gp_hyperloglog (BSD-2). Exclude the four licence texts that RAT does not recognize.

Assisted-by: Claude Code

Fixes #ISSUE_Number

What does this PR do?

Type of Change

  • Bug fix (non-breaking change)
  • New feature (non-breaking change)
  • Breaking change (fix or feature with breaking changes)
  • Documentation update

Breaking Changes

Test Plan

  • Unit tests added/updated
  • Integration tests added/updated
  • Passed make installcheck
  • Passed make -C src/test installcheck-cbdb-parallel

Impact

Performance:

User-facing changes:

Dependencies:

Checklist

Additional Context

CI Skip Instructions


Several files inherited from PostgreSQL carry a copyright notice and
licence of their own, but LICENSE did not list them.  Add entries, with
the notices copied verbatim under licenses/:

- BSD-3: BSD libc code under University of California notices
  (getopt, getopt_long, mkdtemp, pgmkdirp, fls, bsearch_arg,
  sort_template.h), the KAME MD5 and SHA-1 code, and pgcrypto's
  crypt-des.c.
- BSD-2: the pgcrypto files copyright Marko Kreen.
- ISC: strlcat.c, inet_net_ntop.c and timingsafe_bcmp.c.
- MIT: pgcrypto's Blowfish (from PuTTY) and imath.
- PostgreSQL-style: pageinspect, pgrowlocks and pgstattuple files
  copyright Tatsuo Ishii and Satoshi Nagayasu.
- Public domain: pgcrypto's bcrypt code and five message catalogs.
- Other permissive notices: pgcrypto's Rijndael, the GEQO operators
  adopted from Genitor, erand48.c and the pg_dump archiver.
- fuzzystrmatch's dmetaphone.c, which carries both a notice placing
  the Text::DoubleMetaphone portions under the same terms as Perl and
  a PostgreSQL-style notice for the rest.

Also list src/include/regex under the regex entry, and register
Greenplum's gp_hyperloglog (BSD-2).  Exclude the four licence texts
that RAT does not recognize.

Assisted-by: Claude Code
@tuhaihe tuhaihe changed the title License: register PostgreSQL components under their own notices [REL_2_STABLE] License: register PostgreSQL components under their own notices Oct 7, 2026
@tuhaihe

tuhaihe commented Oct 7, 2026

Copy link
Copy Markdown
Member Author

Several files inherited from PostgreSQL carry a copyright notice and licence of
their own that LICENSE did not list. This registers them, with each notice copied
verbatim under licenses/. It addresses findings from a releasecheck pass over
2.2.0-rc2, of the same kind as the tabulate gap raised on rc1.

Licence Files
BSD-3 BSD libc code under UC notices (getopt.c, getopt_long.c, mkdtemp.c, pgmkdirp.c, fls.c, bsearch_arg.c, sort_template.h); KAME MD5/SHA-1 (src/common/md5*, sha1*); pgcrypto crypt-des.c
BSD-2 the 28 pgcrypto files copyright Marko Kreen
ISC strlcat.c, src/port/inet_net_ntop.c (added to the existing entries), timingsafe_bcmp.c
MIT pgcrypto Blowfish (from PuTTY) and imath
PostgreSQL-style pageinspect / pgrowlocks / pgstattuple files by Tatsuo Ishii and Satoshi Nagayasu
Public domain pgcrypto bcrypt (Solar Designer); five .po catalogs that declare themselves public domain
Other permissive pgcrypto Rijndael (Brian Gladman), GEQO operators adopted from Genitor (Darrell Whitley), erand48.c, the pg_dump archiver (Philip Warner)
Perl + PostgreSQL-style contrib/fuzzystrmatch/dmetaphone.c, which carries both notices

Also:

  • src/include/regex is added to the existing regex entry, which listed only src/backend/regex.
  • Greenplum's gp_hyperloglog (BSD-2) is registered in the Greenplum section.
  • pom.xml excludes the four licence texts RAT does not recognize (geqo, rijndael, erand48, pg_dump).

Fourteen ORCA files that Greenplum added in 2024 carry a "Copyright
(C) 2024 Broadcom" or "VMware by Broadcom" notice, while the Greenplum
section of LICENSE names only VMware's 2004-2020 copyright.  Say that
these files are part of Greenplum Database under the same licence.

src/bin/gpfdist/regress/data/gpfdist2/lineitem.tbl.zst is compressed
TPC-H text used by the gpfdist tests, like the .gz and .bz2 copies
next to it, but README.apache.md did not list it and the binary check
never looked at .zst files.  List it, add zst to the checked
extensions, and allowlist it.

Assisted-by: Claude Code
@tuhaihe tuhaihe added this to the 2.2 milestone Oct 7, 2026

@leborchuk leborchuk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@tuhaihe
tuhaihe enabled auto-merge (rebase) October 7, 2026 06:53
@tuhaihe
tuhaihe merged commit 996d770 into apache:REL_2_STABLE Oct 7, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants