Salt la conținut

Changelog

0.1.99 (2026-06-02)

  • Actualizare pachete Composer (dependențe)

0.1.98 (2026-05-12)

  • Nou: #[DefaultOrder] — ordonare implicită per model, suportă atribute multiple (#[DefaultOrder("surname", Order::ASC)])
  • Nou: SaveHookCapability cu 6 hook-uri de ciclu de viață: beforeCreate, afterCreate, beforeUpdate, afterUpdate, beforeDelete, afterDelete
  • Metodele principale din Model marcate final: __get, __set, describe(), describeInstance(), with(), count(), create(), find(), get(), paginate(), first(), refresh(), update(), delete()
  • ModelDescription primește câmpul defaultOrder

0.1.97 (2026-04-09)

  • Rezolvată deserializarea membrilor de tip Struct imbricați

0.1.96 (2026-03-11)

  • Reparații în DB și Connection — gestiunea instanțelor de conexiune

0.1.95 (2026-02-23)

  • Rezolvată (de)serializarea array-urilor tipizate (#[ArrayOf])

0.1.94 (2026-02-15)

  • Reparații conexiuni la baza de date

0.1.93 (2026-02-12)

  • Nou: #[ArrayOf] — Struct-urile pot defini array-uri tipizate cu serializare automată

0.1.92 (2026-02-09)

  • Bugfix la extragerea atributelor din modele (reflection)

0.1.91 (2026-02-07)

  • Nou: #[Computable] — atribute calculate pe bulk, metodă statică cu semnătură (array $models): array
  • Nou: #[PHPSerializable] — tip de stocare pentru array-uri serializate PHP

0.1.90 (2026-02-04)

  • Reparare remapare SQL bind-uri în query builder

0.1.89 (2026-01-29)

  • Bugfix deserializare ORM (relații și atribute virtuale)

0.1.88 (2026-01-13)

  • Numele rutelor sunt listate la cerere; route() aruncă excepție dacă ruta nu există
  • RoutesManager primește metode noi pentru listing

0.1.87 (2026-01-10)

  • Nou: Interfața MiddlewareInterface — suport pentru middleware în rutare
  • Nou: Atributul #[DefaultValue] pe proprietăți de model
  • RoutesCollector și RoutesManager extinse cu suport middleware
  • Base actualizat pentru a încărca middleware

0.1.86 (2026-01-09)

  • Schimbate string-urile de tip MariaDB în atributele de stocare

0.1.85 (2026-01-08)

  • Reparații în DB — inițializare și caching conexiuni
  • Reparație RelatedModelFetcher — încărcare relații
  • Eliminat cod nefolosit din Model

0.1.84 (2026-01-08)

  • Nou: Adăugate tipuri de date ORM: Varchar, Integer, Boolean, Decimal, DateTime, Date, Timestamp, Text, JSON, Enum, Binary, FloatingPoint, Time

0.1.83 (2026-01-07)

  • Expunere informații despre rute prin API-ul de routing

0.1.82 (2026-01-06)

  • Connection extins cu metode noi (37 linii)
  • InsertStatement rescris și extins (137 linii)
  • SelectStatement primește funcționalități noi (27 linii)
  • CreateDatabaseStatement și MySQLDriver actualizate

0.1.81 (2026-01-05)

  • Nou: ORM cu atribute PHP 8 — Model, #[Table], #[PrimaryKey], #[AutoIncrement], #[BelongsTo], #[HasMany], #[HasOne], #[HasManyThrough], #[ConnectionName]
  • ModelDescription, ModelAttributeDescription — reflection pentru modele
  • QueryBuilderCapability, MySQLArraySerializer, RelationshipFetcher, ComputableFetcher

0.1.80 (2026-01-05)

  • Refactorizare majoră: separare Model de Struct, pregătire pentru noul ORM

0.1.79 (2026-01-03)

  • Reparare definiție DataStorage — separare interfață și implementare

0.1.78 (2025-09-14)

  • Reparație Connection — gestiune conexiuni cu dotted notation

0.1.77 (2025-09-14)

  • Connection extins cu suport pentru schimbare dinamică a bazei de date

0.1.76 (2025-09-14)

  • Eliminată forțarea codului de status HTTP în error handler

0.1.75 (2025-09-11)

  • Nou: Lansare majoră QueryBuilder cu statement-uri separate: SelectStatement, InsertStatement, UpdateStatement, DeleteStatement, CreateTableStatement, AlterTableStatement, DropTableStatement, TruncateStatement, CreateDatabaseStatement, DropDatabaseStatement
  • Nou: ExpressionBuilder — builder de expresii SQL cu binding securizat
  • Nou: Upgrade la PHP 8.4
  • DB rescris ca facade static cu registry de conexiuni
  • Connection nou — wrapper peste driver-e

0.1.70–0.1.74 (2024)

  • Actualizări Composer și dependențe (0.1.70, 0.1.74)
  • Simplificare SingleAppContext — eliminată clasa abstractă intermediară (0.1.72)

0.1.50–0.1.69 (2024)

  • Nou: Sistemul de evenimente (Events) cu EventHandler, Manager, și atributele #[EventHandlerAttribute], #[Priority], #[Failable] (0.1.51–0.1.69)
  • Nou: ExceptionsWriter — interfață și implementare StaticLogFile pentru logging erori
  • Nou: Contextul ResourceContext extins
  • View rescris — suport pentru template-uri multiple și caching
  • DB și Driver refactorizate — inițializare lazy, suport setări globale

0.1.36–0.1.49 (2024)

  • Nou: Helper-ul Numbers — formatare numere, rotunjire (0.1.37)
  • Nou: Helper-ul Download — servire fișiere, streaming (0.1.36, 305 linii)
  • Mime extins — detectare tipuri MIME din fișiere și extensii
  • Reparație critică: nume implicit instanță BD care cauza suprasolicitare conexiuni (0.1.38)
  • Gestionare erori mai bună când view-ul nu e găsit (0.1.39)
  • Reparație redirect în rutare (0.1.40)
  • Reparație Request — parsare headere și query string (0.1.44)
  • Refactorizare majoră pdoDriver — 1000+ linii rescrise (0.1.50)

0.1.1–0.1.35 (2022–2024)

  • Nou: QueryBuilder inițial — clasele SelectStatement, InsertStatement, CreateTableStatement, DropTableStatement, DropDatabaseStatement, CreateDatabaseStatement (0.1.20–0.1.34)
  • Nou: DB — conexiuni multiple, registry, dotted notation
  • Nou: Helper-ele Arrays, Strings, Is, Lang
  • Nou: Context-e de execuție: SingleAppContext, MultipleAppsContext, ResourceContext, CronContext, FileAppContext
  • Nou: RoutesCollector și RoutesManager — sistemul de rutare
  • Nou: View — sistemul de template-uri (inițial cu Block și Section)
  • Nou: Request, Response, Redirect, URL — componenta HTTP
  • Eliminat vechiul ORM (src/ORM/Model.php, 976 linii) și înlocuit cu query builder
  • Config rescris pentru încărcare din fișiere PHP și suport dot-notation
  • Integrare Composer, Docker, .env prin phpdotenv