Skip to content

GH-48616: [GLib] Use Arrow-${MAJOR}.${MINOR}.typelib not Arrow-1.0.typelib#48617

Merged
kou merged 1 commit intoapache:mainfrom
kou:glib-gi-versioned
Dec 23, 2025
Merged

GH-48616: [GLib] Use Arrow-${MAJOR}.${MINOR}.typelib not Arrow-1.0.typelib#48617
kou merged 1 commit intoapache:mainfrom
kou:glib-gi-versioned

Conversation

@kou
Copy link
Member

@kou kou commented Dec 21, 2025

Rationale for this change

Our deb/RPM GLib library packages include version information such as libarrow2300-glib.deb and arrow2300-glib-libs.rpm. It's for installing multiple versions in the same system.

But all version library packages include Arrow-1.0.typelib. If we install multiple GLib library package versions in the same system, Arrow-1.0.typelib is conflicted.

If we use Arrow-${MAJOR}.${MINOR}.typelib not Arrow-1.0.typelib, we can really install multiple GLib library package versions in the same system.

What changes are included in this PR?

  • Use XXX-${MAJOR}.${MINOR}.{gir,typelib} not XXX-1.0.{gir,typelib}
  • Update release script to substitute versions automatically

Are these changes tested?

Yes.

Are there any user-facing changes?

Yes.

@github-actions
Copy link

⚠️ GitHub issue #48616 has been automatically assigned in GitHub to PR creator.

@kou kou force-pushed the glib-gi-versioned branch from 594224d to f4afe45 Compare December 21, 2025 09:45
@kou kou added the CI: Extra: Package: Linux Run extra Linux Packages CI label Dec 22, 2025
@hiroyuki-sato
Copy link
Collaborator

+1

I confirmed a installation result filenames like Arrow-23.0.typelib not Arrow-1.0.typelib
It will install multiple verion typelib files in the same directory.

/tmp/local/lib/girepository-1.0$ ls -1
Arrow-1.0.typelib
Arrow-23.0.typelib
ArrowDataset-1.0.typelib
ArrowDataset-23.0.typelib
ArrowFlight-1.0.typelib
ArrowFlight-23.0.typelib
ArrowFlightSQL-1.0.typelib
ArrowFlightSQL-23.0.typelib
Gandiva-1.0.typelib
Gandiva-23.0.typelib
Parquet-1.0.typelib
Parquet-23.0.typelib

Just for interest.
Does gobject-introspection finds the typelib properly?

@kou
Copy link
Member Author

kou commented Dec 23, 2025

Yes. GObject Introspection uses the latest version by default: https://gnome.pages.gitlab.gnome.org/gobject-introspection/girepository/GIRepository.html#g-irepository-require

@kou kou merged commit 9c4faee into apache:main Dec 23, 2025
35 checks passed
@kou kou removed the awaiting committer review Awaiting committer review label Dec 23, 2025
@kou kou deleted the glib-gi-versioned branch December 23, 2025 01:17
@conbench-apache-arrow
Copy link

After merging your PR, Conbench analyzed the 3 benchmarking runs that have been run so far on merge-commit 9c4faee.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details. It also includes information about 1 possible false positive for unstable benchmarks that are known to sometimes produce them.

lidavidm added a commit to apache/arrow-adbc that referenced this pull request Jan 27, 2026
Apache Arrow GLib 23.0.0 or later change GIR API version to
`${MAJOR}.${MINOR}` from `1.0`. See also:
apache/arrow#48617
jhrotko pushed a commit to jhrotko/arrow-adbc that referenced this pull request Feb 2, 2026
…e#3909)

Apache Arrow GLib 23.0.0 or later change GIR API version to
`${MAJOR}.${MINOR}` from `1.0`. See also:
apache/arrow#48617
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants