Flexible package manager for building, distributing and installing Postgres packages containing extensions and other distributables.
- Requirement satisfaction
- Multi-platform builds
- High extensibility
If your package has pgxn's META.json, is on Git and has versions tagged, you can start with this template:
:- package(package_name(Version), imports([git_tagged_revision_package(Version)])).
git_repo("https://github.com/org/repo").
:- end_package.
It will be able to automatically get package's meta-information and versions without having to update the above code when new versions are released.
PGPM's logical core is implemented in Logtalk and embeds into different
end-user components, such as the pgpm
command line tool. This gives us a way to describe packages,
their requirements and build instructions in a highly customizable, yet declarative way.