Skip to content

Releases: HanYC666/Cambridge-DBML

v0.4.1 Official Release

Choose a tag to compare

@HanYC666 HanYC666 released this 08 Sep 00:09

2026-08-15 - v0.4.1

summary

Refined repository hygiene after the static migration planning work.

changed

  • Updated root ignore rules to exclude macOS .DS_Store metadata from version control.

2026-07-22 - v0.4.0

summary

Documented the static GitHub Pages migration strategy before implementation began.

added

  • Added github-static/implementation_plan.md describing the browser SQLite architecture, static deployment model, client-owned database persistence, API replacement map, test plan, security considerations, and GitHub Pages deployment options.

2026-07-18 - v0.3.1

summary

Adjusted the Flask development server documentation and runtime configuration for local network access.

changed

  • Updated the Flask server port configuration.
  • Updated README run instructions to match the locally accessible development server.

2026-07-08 - v0.3.0

summary

Completed the first full application hardening pass: strict Cambridge lint gating, transactional execution, API validation, richer frontend diagnostics, syntax reference support, and automated Python regression coverage.

changed

  • Updated the Flask API to return structured JSON errors for malformed execution payloads and invalid table requests.
  • Updated the executor to block Cambridge lint errors by default while retaining an explicit run_anyway path.
  • Updated database execution to run multi-statement scripts transactionally and return the final SELECT result when present.
  • Updated frontend workspace behavior to render lint blocks, runtime failures, validated-only statements, result tables, and table-viewer state clearly.
  • Redesigned the workspace and syntax-reference UI with responsive panels, theme support, keyboard execution shortcuts, and safer escaped result rendering.
  • Updated README, ignore rules, and project documentation to match the hardened behavior and local development workflow.

added

  • Added blocked_by_lint execution responses and frontend retry support for intentionally running lint-invalid SQL.
  • Added validated-only handling for Cambridge-valid CREATE DATABASE statements that SQLite cannot execute in the practice database.
  • Added quote-aware SQL splitting so semicolons in single-quoted values do not split scripts incorrectly.
  • Added rollback behavior for failed later statements in a multi-statement transaction.
  • Added syntax-reference pages and backend-owned syntax data for Cambridge DDL and DML guidance.
  • Added Python regression suites for the Flask API, database manager, executor, and linter.

fixed

  • Fixed table-name handling by validating identifiers before they are interpolated into table inspection SQL.
  • Fixed API error handling for invalid JSON, missing SQL fields, and invalid table names.
  • Fixed frontend handling for lint-blocked and Cambridge-only execution outcomes.

2026-07-07 - v0.2.0

summary

Expanded the project from a basic SQL editor into a Cambridge 9618-focused practice environment with syllabus-aware diagnostics and a dedicated syntax reference.

changed

  • Expanded the Cambridge linter to cover more datatype, key, quoting, out-of-syllabus, and table-count checks.
  • Updated the Flask application, database layer, README, workspace markup, and shared styles to support the broader learning workflow.
  • Refined the workspace layout and presentation of editor guidance, outputs, and database inspection.

added

  • Added the syntax-reference page and client script.
  • Added Cambridge 9618 syntax-reference data for DDL, DML, keys, datatypes, joins, aggregate functions, and data-maintenance statements.
  • Added lint diagnostics for invalid datatype aliases, missing VARCHAR or CHARACTER lengths, malformed primary and foreign keys, likely unquoted values, unsupported SQL features, and queries that appear to use more than two tables.

2026-07-01 - v0.1.0

summary

Created Cambridge-DBML as a Flask and SQLite SQL-practice application for Cambridge International AS & A Level Computer Science 9618.

added

  • Added the Flask application, execution coordinator, SQLite database manager, Cambridge SQL linter, frontend workspace, requirements file, and project ignore rules.
  • Added a browser SQL editor, query execution endpoint, table viewer, and baseline Cambridge-oriented lint feedback.
  • Added the initial README with setup and usage guidance.
  • Added responsive workspace styling and a subsequent UI refresh that improved editor, output, and database-viewer hierarchy.

removed

  • Removed the local workspace database from version control and added ignore rules so developer data is not committed.