What’s new in Liberator 2.4
Liberator 2.4 centers on more precise queries, clearer dataset health, and safer limits. Headline capabilities include wildcard / pattern filters on the symbol (key) parameter, a Super-Admin-onlyusage_log dataset of per-query records, and descriptive entitlement-limit errors. The release also adds a per-dataset cap on how many days a single query can span, Concordance-backed dataset catalog cards, the CloudQuant Excel plugin in the Liberator UI, and a round of connection and time-range reliability fixes.
Highlights
Symbol and key pattern filters
Use
% wildcards on symbols / keys to pull a product family or naming pattern without listing every contract.Clear entitlement errors
Limit violations say which cap was hit and what to change, instead of a generic “not entitled.”
Query day-range cap
Admins can set a maximum number of days a single query may span on a dataset, so one wide request cannot stall everyone else.
Dataset health cards
Catalog cards show date range, symbol count, status, and last updated — in the UI and via
liberator.datasets(details=True).Excel plugin in Liberator
Download and access the CloudQuant Excel plugin from the Liberator client, without a separately shared installer.
Combined user creation
Create and enroll a user in one flow. Invite emails include the username to sign in with.
Per-query usage log
Super Admins query
usage_log like any other dataset — who queried what, which window, rows returned, and outcome.Symbol and key pattern filters
symbols (and the keys synonym) accept SQL LIKE patterns. An unescaped % is a wildcard for any sequence of characters:
\%.
See Symbols and key fields and the query parameters reference.
Clearer entitlement errors and query day-range limits
When a query is rejected because of an entitlement or usage limit, Liberator now returns a specific message: which limit applied, the configured value, and what to change. A row-limit miss no longer looks the same as a missing entitlement. Super Admins can also set a maximum number of days a single query may span on a given dataset (or dataset group). Use this on high-volume sources so a misconfiguredback_to / as_of window cannot pin query workers. If a query exceeds the cap, the caller gets the same class of descriptive error.
See Fine-grained permissions.
Dataset health cards and symbol discovery
The dataset catalog now surfaces Concordance-backed health on each dataset:- Date range covered
- Symbol count
- Status (for example, Ready)
- Last updated
liberator.datasets(schema=True, details=True). Administrators can configure how often symbol discovery refreshes, so newly added keys appear on cards without waiting for a fixed backend job.
See Listing datasets and Checking dataset access.
Excel plugin in the Liberator UI
The CloudQuant Excel plugin is available from the Liberator client experience. Users can find and download it in the UI instead of waiting on a separately shared installer. Account setup (User ID, token, Base URL) is unchanged. See Configuring your account.User onboarding
- Combined create-and-enroll — Super Admins create a user and add them to Liberator permissions in one step, instead of Create User followed by Add Users.
- Username in invite and verification email — new-account mail includes the username the recipient should sign in with.
- Search by company — the Users list finds people by their company field.
Per-query usage log
Super Admins can queryusage_log, a private Liberator dataset of one row per query per dataset. Each row records the user, the dataset they asked for, the as_of / back_to they passed, rows returned, and an outcome of success, limit_exceeded, not_entitled, or error.
Query it with the standard client (liberator.query(name='usage_log', ...)). The log’s own back_to / as_of select when the usage happened; the as_of / back_to columns are the window the original caller requested. The symbol / key is the dataset that was queried. Records are retained for at least 30 days.
See Query usage log.
Connection and query reliability
- S3 request style — during Test Connection, Liberator detects whether the endpoint needs path-style or virtual-hosted addressing (including MinIO, Ceph, and other S3-compatible stores), so you no longer have to set
request_styleby provider. See Amazon S3. - Database port is required on Test Connection for PostgreSQL, MySQL, SQL Server, and Oracle.
- Passwords with special characters (
%,?,#,@,/,:,&) connect successfully on database sources. - Fixed / manual timestamps — datasets onboarded with a fixed date-time (no date column) query the correct partition after discovery.
- Time-range queries resolve partitions more reliably across the requested window.
- Future
as_ofon live-append datasets no longer holds query workers in an empty-fetch loop. Preferas_ofat or before “now” unless you intentionally query forward-dated records. See Usage of the as_of parameter. - HubSpot rate limits — HubSpot-backed queries wait and retry when the CRM API returns a rate-limit error. See HubSpot.
- Date-format ranking — onboarding suggestions prefer ordinary calendar formats over day-of-year when the column contains month/day/year values.
Compatibility
There are no breaking changes to the client libraries (Python, REST, JavaScript, Excel, etc.) or to the dataset query surface. Existing exact-symbol queries continue to work. Pattern filters, day-range caps, catalog-card fields, andusage_log are additive.
