paradedb / pg_analytics

DuckDB-powered analytics for Postgres
https://paradedb.com
PostgreSQL License
383 stars 15 forks source link

feat: Prod Promotion -- v0.2.2 #170

Closed philippemnoel closed 3 weeks ago

philippemnoel commented 3 weeks ago

Ticket(s) Closed

What

Prepare releasing under PostgreSQL.

Why

How

Tests

github-actions[bot] commented 3 weeks ago

A schema difference was detected.

A suggested "upgrade.sql" script entry might be:

DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input date);
DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input date, _offset pg_catalog."interval");
DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input date, _origin date);
DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input pg_catalog."timestamp");
DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input pg_catalog."timestamp", _origin date);
DROP FUNCTION IF EXISTS time_bucket(_bucket_width pg_catalog."interval", _input pg_catalog."timestamp", _offset pg_catalog."interval");
The full diff between both schemas is: ```diff 331,406d330 < /* */ < -- src/api/time_bucket.rs:22 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" date /* pgrx::datum::date::Date */ < ) RETURNS date /* pgrx::datum::date::Date */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_date_wrapper'; < /* */ < < /* */ < -- src/api/time_bucket.rs:32 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" date, /* pgrx::datum::date::Date */ < "_offset" interval /* pgrx::datum::interval::Interval */ < ) RETURNS date /* pgrx::datum::date::Date */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_date_offset_wrapper'; < /* */ < < /* */ < -- src/api/time_bucket.rs:27 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" date, /* pgrx::datum::date::Date */ < "_origin" date /* pgrx::datum::date::Date */ < ) RETURNS date /* pgrx::datum::date::Date */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_date_origin_wrapper'; < /* */ < < /* */ < -- src/api/time_bucket.rs:37 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" timestamp /* pgrx::datum::time_stamp::Timestamp */ < ) RETURNS timestamp /* pgrx::datum::time_stamp::Timestamp */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_timestamp_wrapper'; < /* */ < < /* */ < -- src/api/time_bucket.rs:42 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" timestamp, /* pgrx::datum::time_stamp::Timestamp */ < "_origin" date /* pgrx::datum::date::Date */ < ) RETURNS timestamp /* pgrx::datum::time_stamp::Timestamp */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_timestamp_offset_date_wrapper'; < /* */ < < /* */ < -- src/api/time_bucket.rs:51 < -- pg_analytics::api::time_bucket::time_bucket < CREATE FUNCTION "time_bucket"( < "_bucket_width" interval, /* pgrx::datum::interval::Interval */ < "_input" timestamp, /* pgrx::datum::time_stamp::Timestamp */ < "_offset" interval /* pgrx::datum::interval::Interval */ < ) RETURNS timestamp /* pgrx::datum::time_stamp::Timestamp */ < STRICT < LANGUAGE c /* Rust */ < AS 'MODULE_PATHNAME', 'time_bucket_timestamp_offset_interval_wrapper'; < /* */ < ```