Skip to content

PHP 0.8.0

Latest

Choose a tag to compare

@TonisOrmisson TonisOrmisson released this 10 Sep 14:28
6b8edb8

This release consolidates the never-tagged, never-published 0.7.2 preparation
with official opt-in SPSS Frontend 0.3 support. The previous public release is
0.7.1; there was no 0.7.2 release.

Added

  • Explicitly selected official SPSS Frontend 0.3 using the existing strict
    request/parser/binder/compiler pipeline; Frontend 0.2 remains the default.
    Support comments, dictionary-order TO and grouped commands, NOT and comparison
    aliases, finite open RECODE ranges, and ordered typed ADD VALUE LABELS.
  • Check all 90 effective official cases against the unchanged specification pin,
    inherited Plan 0.1/0.2 objects and hashes, and native SQLite in-place provenance
    and identity. All 20 implementation CI jobs passed at
    22e261842e538188aea281896c578c5f3d1e38b7, including the service matrix
    (run). Declare
    Frontend 0.3 officially conformant while retaining its opt-in capability field.
    The final 0.8.0 release commit still requires full CI before tagging.
  • Use precedence comparisons, NOT, AND, OR; parentheses override. Compilation
    is pure over request metadata: callers supply the current ordered dictionary
    and typed value labels; the compiler does not read the database. No
    STRING/DELETE, schema extension, Plan 0.3 or In-Place 0.3 support is added.

Fixed

  • Preserve finite binary64 precision in SQLite case values and compression bias,
    and in affected multiple-response counted-value metadata writes.
  • Fail imports on SQL errors even when the supplied PDO uses silent or warning
    mode, restoring the caller's error mode afterward. Reject caller-owned active
    transactions before import mutation.
  • Finalize SQLite/PostgreSQL import audit success inside the native import
    transaction, so finalization failure rolls back the attempt. Retain the
    MySQL/MariaDB/Dolt ownership-scoped cleanup and finalization compensation.

Performance

  • Send PostgreSQL and MySQL/MariaDB/Dolt case INSERTs in bounded prepared batches,
    respecting parameter/packet budgets and preserving preflight-valid oversized
    singleton rows, case order, NULLs, strings and numeric precision.
  • Load canonical and legacy export dictionary children and set members with
    dataset-scoped grouped queries instead of per-variable/per-set queries.
    Export remains database-read-only and observes fresh metadata on every call.

Existing import/export call forms, dependencies, specification pin, database
support claims and catalog schema remain unchanged. Catalog preparation and
ownership checks are retained; this release requires no new migration.