Skip to content

Latest commit

 

History

History
60 lines (50 loc) · 3.02 KB

ROADMAP.md

File metadata and controls

60 lines (50 loc) · 3.02 KB

Roadmap

This section lists planned features for future releases. They are not in any specific order, and they are subject to change.

All features that are planned for upcoming release will be converted to GitHub issues. If you want to contribute on any of those, please open the issue yourself first to discuss specifics.

Planned features

  • Schema sync (allow automatic synchronization during development)
  • Collection expressions - support querying parts of collection
  • Collection pagination
  • Map collections
  • Slow query log
  • Leverage async iterators for collections (node 10+)
  • Multi tenant support (schema per tenant)
  • Use bigint type natively in BigIntType (node 12+)

Planned changes for v4

  • Single table inheritance (#33)
  • Allow adding items to not initialized collections
  • Use absolute path to entity file in static MetadataStorage keys (fix for 'Multiple property decorators' validation issues)
  • Embedded entities (allow in-lining child entity into parent one with prefixed keys)
  • Use jsonb as default for object columns in postgres
  • Support subqueries in QB
  • Nested conditions in qb.update() queries via subqueries (#319)
  • Nested conditions in em.remove() via subqueries (#492)
  • Use custom errors for specific cases (unique constraint violation, db not accessible, ...)
  • Paginator helper or something similar (doctrine docs)
  • Add groupBy and distinct to FindOptions and FindOneOptions
  • Lazy scalar properties (allow having props that won't be loaded by default, but can be populated)
  • Support computed properties
  • Association scopes/filters (hibernate docs)
  • Support external hooks when using EntitySchema (hooks outside of entity)
  • Cache metadata only with ts-morph provider
  • Diffing entity level indexes in schema generator
  • Add custom types for blob, array, json
  • Seeds (#251)
  • Static checking of population (#214)
  • Nested object validation (#466)
  • Migrations Support for MongoDB (#295)

Planned breaking changes for v4

  • Require node 10+
  • Require TS 3.7 or newer
  • Split into multiple packages (core, driver packages, TS support, SQL support, CLI)
  • Remove autoFlush option
  • Drop default value for platform type (currently defaults to mongodb)
  • Remove IdEntity/UuidEntity/MongoEntity interfaces
  • Do not define internal methods like init directly on the entity prototype (#506)
  • Support multiple M:N with same properties without manually specifying pivotTable
  • Change behaviour of property default, add defaultRaw

Docs