Skip to content

Releases: interdev7/phorm

phorm_annotations 1.2.0

Choose a tag to compare

  • Added generateFullService to @Schema (defaults to true). When set to
    false, the generator skips the large pluralized static service class
    (e.g. Users, with the full CRUD/query API and column constants) and emits
    only the lightweight artefacts (schema, table, fromJson/toJson,
    copyWith). Fully backward compatible — existing models are unaffected.

phorm-code 0.1.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 16:21

Fixed

  • Class boundaries are now detected by brace matching, so top-level code
    between or after classes (functions, constants, extensions) is no longer
    swallowed or destroyed during conversion.
  • Conversions are applied through an undoable WorkspaceEdit and respect
    unsaved buffer changes, instead of writing directly to disk.
  • Existing methods, getters and custom fromJson factories are preserved; the
    converter only injects annotations, the id field, the constructor and a
    fromJson when missing.
  • Field detection is brace-depth aware: statements inside method bodies,
    getters/setters and static members are no longer mistaken for fields.
  • Class headers using $ (e.g. with _$PhormXMixin) and generic classes are
    parsed correctly.

Added

  • Settings: phorm.generateFullService, phorm.timestamps, phorm.paranoid,
    phorm.addFromJson, phorm.enableCodeLens — emitted as the matching
    @Schema options.
  • CodeLens "⚡ To PHORM Model" above plain classes, plus conversion of just the
    class under the cursor.
  • Command "Phorm: Run build_runner build".
  • Snippets: phormmodel, phormschema, phormcolumn, phormid.

Internal

  • Unit tests (vitest), ESLint configuration and CI (compile + lint + test).
  • Marketplace metadata (keywords, license, homepage, bugs, categories).

phorm_annotations 1.1.2

Choose a tag to compare

  • Fixed MigrationBuilder.build() dropping the columns, timestamps, and
    autoIncrement fields when rebuilding the Table. The lost columns
    produced empty relationship JSON aggregation (broken serialization of
    eager-loaded relations), and a reset timestamps flag caused created_at/
    updated_at to be injected for tables that disabled timestamps. These
    fields are now carried over from the source table.

phorm_annotations 1.1.1

Choose a tag to compare

  • Documentation only: documented the @Schema(dialect: ...) option, the
    @Column(type: ...) typed SQL types, and the dialect-organised SqlType
    hierarchy in the README. No API changes.