pg_liquid

This Release
pg_liquid 0.1.6
Date
Status
Stable
Other Releases
Abstract
Liquid-inspired Datalog graph query extension for PostgreSQL
Description
pg_liquid brings Liquid-style graph querying, assertions, recursive closure, compounds, and row normalizers to PostgreSQL as a native extension.
Released By
michaelgolfi
License
MIT
Resources
Special Files
Tags

Extensions

pg_liquid 0.1.6
Liquid-inspired Datalog graph query extension for PostgreSQL

Documentation

install
Install
storage
Storage Layout
testing
Testing and Compatibility
normalizers
Add Row Normalizers
language
Liquid Language Surface
operations
Upgrade and Operate
02_DATA_MODEL
2. Data Model
security-model
Security Model
ontologies
Build an Ontology
data-model
Data Model
execution
Execution Model
00_INDEX
pg_liquid Documentation
06_TESTING
6. Testing
first-graph
Create Your First Graph
08_OPERATIONS
8. Operations
04_STORAGE
4. Storage
01_OVERVIEW
1. Overview
query-graphs
Query a Graph
07_ROADMAP
7. Roadmap
Changes
Changes
05_SECURITY
5. Security
03_EXECUTION
3. Execution
index
pg_liquid
liquid_blog
liquid_blog
roadmap
Roadmap
compounds
Model Compounds
security
Use CLS and Principal Scopes
api
SQL API

README

pg_liquid

pg_liquid is a PostgreSQL extension that maps the Liquid blog language and data model onto native PostgreSQL storage and execution.

Documentation site:

  • GitHub Pages: https://michael-golfi.github.io/pg_liquid/

It ships:

  • liquid.query(program text)
  • liquid.query_as(principal text, program text)
  • liquid.read_as(principal text, program text)
  • row normalizer management functions for projecting relational rows into Liquid compounds

Supported Liquid program features include:

  • % comments
  • .-terminated assertions and rule definitions
  • one terminal ? query
  • Edge(...)
  • named compounds via Type@(cid=..., role=...)
  • query-local recursive rules
  • CLS-aware reads through liquid.read_as(...) and liquid.query_as(...)

Version

This PGXN package is version 0.1.1.

Supported PostgreSQL Versions

pg_liquid is validated against PostgreSQL 14, 15, 16, 17, and 18.

Build And Install

Build and install against the target PostgreSQL instance:

make
make install

Then create the extension in the target database:

create extension pg_liquid;

Upgrade

The shipped upgrade path covers the legacy internal versions 1.0.0, 1.1.0, and 1.2.0 to the public releases 0.1.0 and 0.1.1:

alter extension pg_liquid update to '0.1.1';

Alias scripts are also included for the legacy non-semver version names 1.0, 1.1, and 1.2.

Validation

Useful local checks:

npm run docs:build
make package-check
make installcheck
make bench-check
make pgxn-package

package-check validates META.json, the control file, and the referenced SQL install script. pgxn-package builds a release tarball under release/.

Repository Layout

The primary documentation experience now lives in the VitePress site under docs. The operational rollout details also remain available in docs/08_OPERATIONS.md.