Closed
Description
This epic is keeping a track of features that are available in LoopBack 3.x but don't have an easy-to-use alternative in LoopBack 4.x.
- More relations [EPIC] More Relations (post-GA) #1450
- HasOne [Relation] Supports HasOne relation #1422
- HasManyThrough Model relation: hasManyThrough #2264
- 🚶HasAndBelongsToMany [Model Relation] hasAndBelongsToMany #2308
- Polymorphic Polymorphic relation type #2487
- EmbedsOne
- EmbedsMany
- ReferencesMany feat: adds support ReferencesMany relation #8271
- CLI for model relation [CLI] add
lb4 relation
command #1359 - Further REST layer improvements [EPIC] REST layer improvements (post-GA) #1452
- streaming requests/responses
- handling file uploads File upload with multipart/form-data #1873
- Express Middleware: Allow app developers to configure custom Express middleware #1293, Register Express middleware per route, controller class or controller method #2035, Tutorial/Blog: how to mount LB app as Express/Koa middleware #1982. Possibly more.
- 🚶Authentication Authentication and Authorization extension points #1035 (plus a bunch of other stories, e.g. Document ways to properly authenticate only some methods in a controller #1334)
- Authorization Extension: Add Authorization component #538
- Include related models in query results (Inclusion of related models [MVP] #1352, Add support for "include" and "fields" to findById (REST API) #1721, Include related models in "GET /mymodels" results #1889)
- A note on
findById
: filtering was enabled by feat(cli): update controller template to enable filter for findById endpoint #4114. The task Add support for "include" and "fields" to findById (REST API) #1721 somewhat optional, it mostly improves the type descriptions (TypeScript, OpenAPI schema).
- A note on
- Model migration (in LB 3.x scope) Easy-to-use database migrations at application level #2059 (further work beyond LB3 scope: Database Migration Management Framework #487)
- Model discovery (in LB 3.x scope) CLI for model discovery in LB4 #1949
- From model definition to REST API with no repository/controller classes From model definition to REST API with no custom repository/controller classes #2036 Declarative Support #565
- Boot scripts Boot scripts #2034
- Operation hooks: Spike: Operation hooks for models/repositories #1919
- Plain JavaScript experience [ON HOLD] Plain JavaScript experience #560
See also a loosely related Migration from LoopBack 3.x