mikro-orm

TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, MS SQL Server, PostgreSQL and SQLite/libSQL databases.

MIT License

Downloads
5.6M
Stars
7.2K
Committers
255

Bot releases are hidden (Show)

mikro-orm - MikroORM 3.5.0

Published by B4nan over 4 years ago

Bug Fixes

  • core: export ValidationError directly (e3e02ea), closes #404
  • mongodb: do not convert payloads to ObjectId (9a9d9e0), closes #401
  • mongodb: keep topmost transaction context when nesting (d921bc1), closes #400
  • schema: fix schema generator in MySQL 8 (#398) (955b0ac)
  • sql: do not serialize db values from custom types (894e055), closes #372
  • webpack: do not analyze enum values when already provided (3efd6ca), closes #413

Features

  • core: add support for composite keys (#395) (0574dc8), closes #66
  • core: allow manually specifying on update/on delete clause (fc9d86a)
  • discovery: validate not discovered entities used in relations (12338da)
  • migrations: do not create empty migrations without -b (564e988), closes #399
  • mongo: allow passing additional index options (dd3f795), closes #415
  • sql: use collection snapshots to compute precise diff (#405) (d4bda99)
mikro-orm - MikroORM 3.4.0

Published by B4nan over 4 years ago

Features

mikro-orm - MikroORM 3.3.0

Published by B4nan over 4 years ago

Bug Fixes

  • core: do not re-hydrate existing entities in EntityFactory (a727052)
  • core: do not require entity reference to have collection props (3331931)
  • deps: update dependency uuid to v7 (#355) (f2a96aa)

Features

  • core: add loadItems() method to Collection (#347) (de566c5)
  • core: propagate changes to 1:1 and m:1 relations (#352) (4903a48), closes #307
  • core: rework commit logic of UoW to ensure right query order (#351) (52e4b8a)
mikro-orm - MikroORM 3.2.0

Published by B4nan over 4 years ago

Bug Fixes

  • cli: do not require existing entities in generate-entities command (4d5853f), closes #340
  • discovery: fix support for globbing (995a3e8), closes #341
  • typing: align EntityRepository populate signature to EntityManager (#343) (ec5a30e)

Features

mikro-orm - MikroORM 3.1.0

Published by B4nan over 4 years ago

Bug Fixes

  • core: do not reset collections too early (ad6337e), closes #312

Features

  • core: add em.populate() helper method (26d2f33), closes #310
  • core: add Reference.getEntity() and Reference.getProperty() (05dc5ce), closes #304
mikro-orm - MikroORM 3.0.0

Published by B4nan almost 5 years ago

Bug Fixes

  • core: allow object constructor parameters in entities (967f239), closes #166
  • core: allow persisting 1:1 from inverse side (a1320ba), closes #210
  • core: always ensure correct EM instance when merging entity (72f4525)
  • core: always init collections when creating entity via em.create() (2500cf3)
  • core: always query inverse side of 1:1 association (5a77a39)
  • core: auto-wire 1:1 owner to inverse side (b11d316), closes #151
  • core: disable auto flushing by default [BC] (#79) (3258c50), closes #63
  • core: do not map null value in bool props to false (e54dbbd), closes #262
  • core: do not set EM to entity until merging [BC] (#270) (d09c3ab), closes #267
  • core: do not use request context in transactional/user forks (a2d7cbb), closes #182
  • core: fix querying by m:n primary keys (cb568ee), closes #234
  • core: ignore inverse side of 1:1 when computing change set (a2768dd), closes #183
  • core: make em.find() where parameter required (3393d52)
  • core: make sure constructor params are sniffer from the constructor (fdd157c)
  • core: requireEntitiesArray should be used only for validation (066b0ea), closes #293
  • deps: update dependency @docusaurus/core to ^2.0.0-alpha (#257) (82d0b3b)
  • deps: update dependency @docusaurus/core to v2.0.0-alpha.38 (#260) (a8a5386)
  • deps: update dependency @docusaurus/preset-classic to ^2.0.0-alpha (#258) (bfc7455)
  • deps: update dependency @docusaurus/preset-classic to v2.0.0-alpha.38 (#259) (c3c80c9)
  • deps: update dependency chalk to v3 (#243) (0a17eb7)
  • deps: update dependency fast-deep-equal to v3 (#250) (546e950)
  • deps: update dependency ts-morph to v4 (#162) (b6dd073)
  • deps: update dependency ts-morph to v5 (#229) (ab66d9c)
  • deps: update dependency yargs to v15 (#244) (0fe3a55)
  • generator: fixed default values and types for nullable properties (#191) (1cdccd3)
  • mapping: do not override user defined nullable value in m:1 and 1:1 (b22567d)
  • mapping: remove deprecated fk option from 1:m and m:1 decorators [BC] (#87) (99b436a)
  • mapping: remove obsolete parameter in UnderscoreNamingStrategy (#134) (8afa9a7)
  • metadata: fix lookup of path to entity file on windows with tslib (a3c2900), closes #194
  • query-builder: do not ignore parent operator in complex conditions (b9c00bc), closes #247
  • query-builder: do not trigger auto-joining when not needed (b7b7a46), closes #249
  • query-builder: fix malformed query when populate and join are used (244db67)
  • query-builder: do not auto-join already auto-joined relation (6895e08), closes #277
  • schema: do not make FK fields nullable if not needed (9c0ffc1), closes #218
  • schema: prefer user-defined collection names in naming strategy (28f59ec), closes #111
  • serializing: add check for circular references in toObject() (f7eaabb), closes #205
  • serializing: do not ignore already visited collection items (ee4b50b), closes #222
  • sql: support self-referencing m:n in pivot tables (3157572)
  • sql: support uuid like PKs in M:N references (#272) (2abc19f), closes #268
  • sql: support $ne and $eq operators with null (5f16f0a), closes #285

Features

  • cli: add cache:generate command to warm up production cache (9b4f8b6), closes #225
  • cli: add database:import command to run external sql dumps (aea3614)
  • cli: add debug command to help with setting up the CLI (7919071), closes #136
  • cli: add basic CLI tool (#102) (d20db41), closes #101
  • cli: allow specifying path to tsconfig.json (00a1a4d), closes #298
  • core: add support for custom types (#276) (96b2cad)
  • core: add @Repository decorator (e4ca716)
  • core: add em.findAndCount() method (1be8eb1), closes #123
  • core: add findOneOrFail method to entity manager and repository (#142) (0d57b7b), closes #133
  • core: add Reference.set() method (08cbead), closes #264
  • core: add Reference<T> wrapper to allow improved type safety (#117) (cdd44da), closes #107
  • core: add refresh parameter to FindOptions (#271) (a558935), closes #269
  • core: add WrappedEntity.toReference() method (de01463), closes #264
  • core: add support for bundling with Webpack (#200) (9db3633), closes #196
  • core: add support for deep nested conditions with operators (#185) (0fa78e6), closes #172
  • core: add support for eager loading (93a875d), closes #168
  • core: add support for enums via @Enum() decorator (#232) (82ca105), closes #215
  • core: add support for filtering and ordering of Collection items (672bf3b), closes #195
  • core: add support for migrations via umzug (#209) (38ec973)
  • core: add support for read connections (#116) (bc66fd6), closes #77
  • core: add support for virtual property getters (#93) (f413b41), closes #82
  • core: allow assigning PK to undefined/null (72167bd), closes #166
  • core: allow empty where condition in em.count() (ee62b3e), closes #163
  • core: allow filtering and sorting by nested query (bc2b91f), closes #157
  • core: allow populating all relations via populate: true (1012420), closes #160
  • core: allow whitelisting entity fields in em.find() (881b114), closes #176
  • core: do not require entity attribute in collection decorators (#207) (89bbeb0)
  • core: improve logging - add namespaces, colors and highlighting (#109) (64376ec), closes #108
  • core: propagate nested where and orderBy when populating (226af1c), closes #195
  • core: simplify entity definition and rework typings of FilterQuery (#193) (a343763), closes #124 #171
  • core: use composite PK in many to many relations (#204) (e73bbdb), closes #121
  • core: use knex to generate sql + enable connection pooling [BC] (#76) (6d79e57), closes #64
  • core: make options parameter optional in MikroORM.init() (280d9a8)
  • core: support default exported entities (9065ff6), closes #294
  • drivers: add native UUID postgres type (#188) (8fd89fd)
  • drivers: add support for MariaDB (#120) (833834b), closes #110
  • drivers: allow passing additional driver options (1ceb0c1)
  • hooks: add onInit hook fired after entity is created (#92) (64e68ed), closes #83
  • logging: allow logging full query including params (#155) (6050dbf)
  • mapping: add EntityCaseNamingStrategy (fc6da6b), closes #135
  • mapping: add type-safe way to define relationships (423bb33), closes #146 #158
  • mapping: allow overriding getClassName() in NamingStrategy (#88) (b6700b6), closes #15
  • mapping: auto-wire missing references from owner to inverse side (fc61be9), closes #149
  • metadata: add ReflectMetadataProvider, rename the ts-morph one (#240) (d740eb3), closes #235
  • metadata: auto-detect optional properties (cff0dd4)
  • metadata: create instance of metadata instead of static one [BC] (#91) (e4acef0)
  • metadata: improve validation during metadata discovery (1bd1899), closes #114
  • mongo: improve query logging, use inspect instead of stringify (da842a3)
  • postgres: use timestamps with time zone by default (bd48124), closes #161
  • query-builder: allow mapping to entities directly via getResult() (beca08e)
  • query-builder: add $like and $re operators (regexp support) (e6da98f)
  • schema: add basic entity generator (#98) (cc48b52), closes #78
  • schema: add basic schema update (#97) (9bff976)
  • schema: add support for create/drop database (#237) (6e58332)
  • schema: allow dropping migrations table via schema:drop cli cmd (36402b9), closes #220
  • schema: use knex in schema generator (#81) (31bc56e)
  • sql: add autoJoinOneToOneOwner option (f2db3e0), closes #248
  • sql: add forceUtcTimezone option (6bf747d), closes #181
  • sql: support multiple conditions in JOINs (#94) (60b6885), closes #70
  • sqlite: ensure the directory with database exists (908aba2)
  • validation: validate one to one relationship metadata (ce57a3c), closes #149
  • validation: warn when failing to get metadata of an entity (33ce7d3), closes #153

Performance Improvements

  • core: do not cascade persist entity references (#279) (9d9e261)
  • core: make Utils.prepareEntity() faster (69d2cf4)
  • sql: use multi-insert when populating m:n collections (5ece088)

BREAKING CHANGES

Please see the upgrading guide.

Package Rankings
Top 0.84% on Npmjs.org
Top 6.72% on Proxy.golang.org
Badges
Extracted from project README
NPM version NPM dev version Chat on discord Downloads Coverage Status Maintainability Build Status
Related Projects