@loopback/boot 2.3.5 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/dist/.sandbox/{18045hzRuQ4/dist → 1309XDA8Ng}/application.js +0 -0
  3. package/dist/.sandbox/{18043wLA3S3 → 1309XDA8Ng}/controllers/multiple.controller.js +0 -0
  4. package/dist/.sandbox/{18045hzRuQ4 → 1309XDA8Ng}/package.json +0 -0
  5. package/dist/.sandbox/{18043wLA3S3 → 131069JFoI}/application.js +0 -0
  6. package/dist/.sandbox/{18049gfsPc4 → 131069JFoI}/datasources/db.datasource.js +0 -0
  7. package/dist/.sandbox/{18044FOwh70 → 1310NrACdz}/application.js +0 -0
  8. package/dist/.sandbox/{18047EeHfXu → 1310NrACdz}/repositories/multiple.repository.js +0 -0
  9. package/dist/.sandbox/{18045Jt9E5K → 1310VKqYGU}/application.js +0 -0
  10. package/dist/.sandbox/{18045Jt9E5K → 1310VKqYGU}/models/multiple-models.model.js +0 -0
  11. package/dist/.sandbox/{18045Jt9E5K → 1310VKqYGU}/models/no-entity.model.js +0 -0
  12. package/dist/.sandbox/{18043muTUQs → 1310VKqYGU}/models/product.model.js +0 -0
  13. package/dist/.sandbox/{18045YaR1P2 → 1310YLHmHA}/application.js +0 -0
  14. package/dist/.sandbox/{18045YaR1P2 → 1310YLHmHA}/observers/lifecycle-observer.observer.js +0 -0
  15. package/dist/.sandbox/{18043muTUQs → 1310fz1Irr}/model-endpoints/product.rest-config.js +0 -0
  16. package/dist/.sandbox/{18045Jt9E5K → 1310fz1Irr}/models/product.model.js +0 -0
  17. package/dist/.sandbox/{18046d8C54w → 1310tkHHpD}/application.js +0 -0
  18. package/dist/.sandbox/{18048e1iuZt → 1310tkHHpD}/services/bindable-classes.service.js +0 -0
  19. package/dist/.sandbox/{18048e1iuZt → 1310tkHHpD}/services/geocoder.service.js +0 -0
  20. package/dist/.sandbox/{18048e1iuZt → 1310tkHHpD}/services/greeting.service.js +0 -0
  21. package/dist/.sandbox/{18047EeHfXu → 1311Bdi5aM}/application.js +0 -0
  22. package/dist/.sandbox/{18046d8C54w → 1311Bdi5aM}/controllers/multiple.controller.js +0 -0
  23. package/dist/.sandbox/{18046kEhstv → 1311tmxa5Y}/multiple.artifact.js +0 -0
  24. package/dist/.sandbox/{18046obZENY → 1312PbcXCg}/multiple.artifact.js +0 -0
  25. package/dist/.sandbox/{18045e2CYyx → 1312naRBED}/service-provider.artifact.js +0 -0
  26. package/dist/.sandbox/{18045rgy7Ui → 1312pXpkp3}/datasource.artifact.js +0 -0
  27. package/dist/.sandbox/{18049UriL05 → 1313jRQjQ1}/model-endpoints/no-entity.rest-config.js +0 -0
  28. package/dist/.sandbox/{18049UriL05 → 1313jRQjQ1}/models/no-entity.model.js +0 -0
  29. package/dist/.sandbox/{18048e1iuZt → 1313l6uKqt}/application.js +0 -0
  30. package/dist/.sandbox/{18044FOwh70 → 1313l6uKqt}/interceptors/interceptor.interceptor.js +0 -0
  31. package/dist/.sandbox/{18044FOwh70 → 1313l6uKqt}/interceptors/non-global-interceptor.interceptor.js +0 -0
  32. package/dist/.sandbox/{18049gfsPc4 → 1314bQo86o}/application.js +0 -0
  33. package/dist/.sandbox/{18048urj9RP → 1314bQo86o}/controllers/multiple.controller.js +0 -0
  34. package/dist/.sandbox/{18046d8C54w → 1314bQo86o}/package.json +0 -0
  35. package/dist/.sandbox/{18048urj9RP → 1315jTOI4f/dist}/application.js +0 -0
  36. package/dist/.sandbox/{18048urj9RP → 1315jTOI4f}/package.json +0 -0
  37. package/dist/booters/component-application.booter.js +1 -1
  38. package/dist/booters/component-application.booter.js.map +1 -1
  39. package/dist/mixins/boot.mixin.d.ts +5 -1
  40. package/dist/mixins/boot.mixin.js +13 -0
  41. package/dist/mixins/boot.mixin.js.map +1 -1
  42. package/package.json +14 -15
  43. package/src/boot.component.ts +2 -2
  44. package/src/booters/component-application.booter.ts +1 -0
  45. package/src/mixins/boot.mixin.ts +19 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,49 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [2.5.1](https://github.com/strongloop/loopback-next/compare/@loopback/boot@2.5.0...@loopback/boot@2.5.1) (2020-08-27)
7
+
8
+ **Note:** Version bump only for package @loopback/boot
9
+
10
+
11
+
12
+
13
+
14
+ # [2.5.0](https://github.com/strongloop/loopback-next/compare/@loopback/boot@2.4.1...@loopback/boot@2.5.0) (2020-08-19)
15
+
16
+
17
+ ### Features
18
+
19
+ * warn if app is started without booting ([1677195](https://github.com/strongloop/loopback-next/commit/1677195321ce06a1d7467233979ca4f321870e40))
20
+
21
+
22
+
23
+
24
+
25
+ ## [2.4.1](https://github.com/strongloop/loopback-next/compare/@loopback/boot@2.4.0...@loopback/boot@2.4.1) (2020-08-05)
26
+
27
+ **Note:** Version bump only for package @loopback/boot
28
+
29
+
30
+
31
+
32
+
33
+ # [2.4.0](https://github.com/strongloop/loopback-next/compare/@loopback/boot@2.3.5...@loopback/boot@2.4.0) (2020-07-20)
34
+
35
+
36
+ ### Bug Fixes
37
+
38
+ * **boot:** generate unique binding keys for component application booters ([0a7c406](https://github.com/strongloop/loopback-next/commit/0a7c4068fca043b676b3abdce10b4ee4c0ef9f58))
39
+
40
+
41
+ ### Features
42
+
43
+ * **typeorm:** add a component for TypeORM integration ([b4e984a](https://github.com/strongloop/loopback-next/commit/b4e984a18f46e29ff540a19d6a0a4bc045d0c393))
44
+
45
+
46
+
47
+
48
+
6
49
  ## [2.3.5](https://github.com/strongloop/loopback-next/compare/@loopback/boot@2.3.4...@loopback/boot@2.3.5) (2020-06-30)
7
50
 
8
51
 
@@ -90,7 +90,7 @@ exports.createBooterForComponentApplication = createBooterForComponentApplicatio
90
90
  * @param filter Binding filter to selected bindings to be added
91
91
  */
92
92
  function createComponentApplicationBooterBinding(componentApp, filter) {
93
- return core_1.createBindingFromClass(createBooterForComponentApplication(componentApp, filter));
93
+ return core_1.createBindingFromClass(createBooterForComponentApplication(componentApp, filter), { key: `booters.${componentApp.name}` });
94
94
  }
95
95
  exports.createComponentApplicationBooterBinding = createComponentApplicationBooterBinding;
96
96
  //# sourceMappingURL=component-application.booter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-application.booter.js","sourceRoot":"","sources":["../../src/booters/component-application.booter.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,8BAA8B;AAC9B,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,yCAQwB;AACxB,0DAAiC;AACjC,kCAAqC;AACrC,oCAAkD;AAElD,MAAM,KAAK,GAAG,eAAY,CAAC,4CAA4C,CAAC,CAAC;AAEzE;;;GAGG;AACU,QAAA,6BAA6B,GAAG;IAC3C,mBAAY,CAAC,YAAY,CAAC,GAAG;IAC7B,mBAAY,CAAC,YAAY,CAAC,GAAG;IAC7B,mBAAY,CAAC,gBAAgB,CAAC,GAAG;IACjC,mBAAY,CAAC,kBAAkB,CAAC,GAAG;IACnC,mBAAY,CAAC,oBAAoB,CAAC,GAAG;IACrC,mBAAY,CAAC,oBAAoB,CAAC,GAAG;IACrC,mBAAY,CAAC,4BAA4B,CAAC,GAAG;IAC7C,mBAAY,CAAC,2BAA2B,CAAC,GAAG;CAC7C,CAAC;AAEF;;;;;;;GAOG;AACH,SAAgB,mCAAmC,CACjD,YAAoC,EACpC,SAAwB,GAAG,EAAE,CAAC,IAAI;IAElC;;OAEG;IAEH,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;QAC9B,YACqD,OAAoB;YAApB,YAAO,GAAP,OAAO,CAAa;QACtE,CAAC;QAEJ,KAAK,CAAC,IAAI;YACR;;eAEG;YACH,IAAI,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC7C,iCAAiC;YACjC,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;YAC1B;;eAEG;YACH,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,gCAAgC;gBAChC,IAAI,qCAA6B,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAElE,4CAA4C;gBAC5C,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACnC,KAAK,CACH,mDAAmD,EACnD,OAAO,CAAC,GAAG,EACX,YAAY,CAAC,IAAI,CAClB,CAAC;oBACF,SAAS;iBACV;gBAED,kCAAkC;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACpE,IAAI,MAAM,EAAE;oBACV,KAAK,CACH,4CAA4C,EAC5C,OAAO,CAAC,GAAG,EACX,YAAY,CAAC,IAAI,EACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAClB,CAAC;oBACF,SAAS;iBACV;gBAED,KAAK,CACH,8BAA8B,EAC9B,YAAY,CAAC,IAAI,EACjB,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,OAAO,CACR,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAkB,CAAC,CAAC;aACtC;QACH,CAAC;KACF,CAAA;IApDK,0BAA0B;QAD/B,cAAM,CAAC,uBAAuB,CAAC;QAG3B,mBAAA,aAAM,CAAC,mBAAY,CAAC,oBAAoB,CAAC,CAAA;iDAAkB,kBAAW;OAFrE,0BAA0B,CAoD/B;IACD,OAAO,0BAA0B,CAAC;AACpC,CAAC;AA9DD,kFA8DC;AAED;;;;;;;GAOG;AACH,SAAgB,uCAAuC,CACrD,YAAoC,EACpC,MAAsB;IAEtB,OAAO,6BAAsB,CAC3B,mCAAmC,CAAC,YAAY,EAAE,MAAM,CAAC,CAC1D,CAAC;AACJ,CAAC;AAPD,0FAOC"}
1
+ {"version":3,"file":"component-application.booter.js","sourceRoot":"","sources":["../../src/booters/component-application.booter.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,11 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
24
24
  new (...args: any[]): {
25
25
  projectRoot: string;
26
26
  bootOptions?: BootOptions | undefined;
27
+ booted: boolean;
28
+ /**
29
+ * Override to detect and warn about starting without booting.
30
+ */
31
+ start(): Promise<void>;
27
32
  /**
28
33
  * Convenience method to call bootstrapper.boot() by resolving bootstrapper
29
34
  */
@@ -83,7 +88,6 @@ export declare function BootMixin<T extends MixinTarget<Application>>(superClass
83
88
  server: <T_2 extends loopbackContext.Server>(ctor: Constructor<T_2>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_2>;
84
89
  servers: <T_3 extends loopbackContext.Server>(ctors: Constructor<T_3>[]) => Binding<any>[];
85
90
  getServer: <T_4 extends loopbackContext.Server>(target: string | Constructor<T_4>) => Promise<T_4>;
86
- start: () => Promise<void>;
87
91
  stop: () => Promise<void>;
88
92
  setMetadata: (metadata: loopbackContext.ApplicationMetadata) => void;
89
93
  lifeCycleObserver: <T_5 extends loopbackContext.LifeCycleObserver>(ctor: Constructor<T_5>, nameOrOptions?: string | BindingFromClassOptions | undefined) => Binding<T_5>;
@@ -39,6 +39,18 @@ function BootMixin(superClass) {
39
39
  this.bind(keys_1.BootBindings.PROJECT_ROOT).toDynamicValue(() => this.projectRoot);
40
40
  this.bind(keys_1.BootBindings.BOOT_OPTIONS).toDynamicValue(() => { var _a; return (_a = this.bootOptions) !== null && _a !== void 0 ? _a : {}; });
41
41
  }
42
+ /**
43
+ * Override to detect and warn about starting without booting.
44
+ */
45
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
46
+ // @ts-ignore
47
+ async start() {
48
+ await super.start();
49
+ if (!this.booted) {
50
+ process.emitWarning('App started without booting. Did you forget to call ' +
51
+ '`await app.boot()`?', 'LoopBackWarning');
52
+ }
53
+ }
42
54
  /**
43
55
  * Convenience method to call bootstrapper.boot() by resolving bootstrapper
44
56
  */
@@ -63,6 +75,7 @@ function BootMixin(superClass) {
63
75
  await bootstrapper.boot();
64
76
  // @ts-ignore
65
77
  this.setState('booted');
78
+ this.booted = true;
66
79
  /* eslint-enable @typescript-eslint/ban-ts-comment */
67
80
  }
68
81
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"boot.mixin.js","sourceRoot":"","sources":["../../src/mixins/boot.mixin.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,8BAA8B;AAC9B,+CAA+C;AAC/C,gEAAgE;;;AAEhE,yCAQwB;AAqBhB,wFA5BN,cAAO,OA4BM;AApBf,yCAKwB;AACxB,sDAAgD;AAChD,0FAAgG;AAEhG,kCAA+C;AAa/C;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,SAAS,CAAqC,UAAa;IACzE,OAAO,KAAM,SAAQ,UAAU;QAI7B,8DAA8D;QAC9D,YAAY,GAAG,IAAW;YACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,8BAAa,CAAC,CAAC;YAE9B,4EAA4E;YAC5E,gFAAgF;YAChF,IAAI,CAAC,IAAI,CAAC,mBAAY,CAAC,YAAY,CAAC,CAAC,cAAc,CACjD,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CACvB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,mBAAY,CAAC,YAAY,CAAC,CAAC,cAAc,CACjD,GAAG,EAAE,wBAAC,IAAI,CAAC,WAAW,mCAAI,EAAE,GAAA,CAC7B,CAAC;QACJ,CAAC;QAED;;WAEG;QACH,KAAK,CAAC,IAAI;YACR,sDAAsD;YACtD,uDAAuD;YACvD,MAAM,IAAI,GAAI,IAA+B,CAAC;YAE9C,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC5B,aAAa;gBACb,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;aAClC;YACD,aAAa;YACb,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,aAAa;YACb,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;YAEjD,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ;gBAAE,OAAO;YACpC,aAAa;YACb,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAEzB,qCAAqC;YACrC,MAAM,YAAY,GAAiB,MAAM,IAAI,CAAC,GAAG,CAC/C,mBAAY,CAAC,gBAAgB,CAC9B,CAAC;YAEF,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;YAE1B,aAAa;YACb,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAExB,qDAAqD;QACvD,CAAC;QAED;;;;;;;;;;WAUG;QACH,OAAO,CAAC,GAAG,SAAgC;YACzC,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACzB,UAAU,CAAE,IAA2B,EAAE,GAAG,CAAC,CAC9C,CAAC;QACJ,CAAC;QAED;;;;;;;WAOG;QACH,iBAAiB,CAAC,MAA8B,EAAE,MAAsB;YACtE,MAAM,OAAO,GAAG,sEAAuC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED;;;;;;;;;;;;;;;;;;WAkBG;QACH,wEAAwE;QACxE,0EAA0E;QAC1E,6DAA6D;QAC7D,aAAa;QACN,SAAS,CACd,aAA6B,EAC7B,aAAgD;YAEhD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAsB,OAAO,CAAC,GAAG,CAAC,CAAC;YAEhE,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED;;;;;;WAMG;QACH,qBAAqB,CACnB,wBAAoE;YAEpE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,iBAAiB,CAAC,OAAO,EAAE;gBAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;aAC5C;YAED;;;;eAIG;YACH,SAAS,wBAAwB,CAAC,GAAsB;gBACtD,IAAI,OAAO,wBAAwB,KAAK,UAAU,EAAE;oBAClD,OAAO,wBAAwB,CAAC;iBACjC;gBAED,gFAAgF;gBAChF,MAAM,aAAa,GAAG,wBAAwB,CAAC,IAAI,CAAC;gBACpD,MAAM,YAAY,GAAG,GAAG,mBAAY,CAAC,UAAU,IAAI,aAAa,EAAE,CAAC;gBACnE,OAAO,GAAG,CAAC,OAAO,CAAsB,YAAY,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAvJD,8BAuJC;AAED;;;;;;GAMG;AACH,SAAgB,UAAU,CACxB,GAAY,EACZ,SAA8B;IAE9B,MAAM,OAAO,GAAG,6BAAsB,CAAC,SAAS,EAAE;QAChD,SAAS,EAAE,mBAAY,CAAC,aAAa;QACrC,YAAY,EAAE,mBAAY,CAAC,SAAS;KACrC,CAAC,CAAC,GAAG,CAAC,eAAQ,CAAC,MAAM,CAAC,CAAC;IACxB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjB;;;OAGG;IACH,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE;QACpC,GAAG;aACA,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;aACtB,OAAO,CACN,GAAG,mBAAY,CAAC,YAAY,CAAC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CACvE,CAAC;KACL;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AArBD,gCAqBC;AAED,gEAAgE;AACnD,QAAA,WAAW,GAAG,UAAU,CAAC,CAAC,6BAA6B"}
1
+ {"version":3,"file":"boot.mixin.js","sourceRoot":"","sources":["../../src/mixins/boot.mixin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loopback/boot",
3
- "version": "2.3.5",
3
+ "version": "2.5.1",
4
4
  "description": "A collection of Booters for LoopBack 4 Applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -24,24 +24,23 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
- "@loopback/core": "^2.9.1",
28
- "@loopback/model-api-builder": "^2.1.9",
29
- "@loopback/repository": "^2.9.0",
30
- "@loopback/service-proxy": "^2.3.4",
27
+ "@loopback/core": "^2.9.5",
28
+ "@loopback/model-api-builder": "^2.1.13",
29
+ "@loopback/repository": "^2.11.2",
30
+ "@loopback/service-proxy": "^2.3.8",
31
31
  "@types/debug": "^4.1.5",
32
- "@types/glob": "^7.1.2",
32
+ "@types/glob": "^7.1.3",
33
33
  "debug": "^4.1.1",
34
34
  "glob": "^7.1.6",
35
- "tslib": "^2.0.0"
35
+ "tslib": "^2.0.1"
36
36
  },
37
37
  "devDependencies": {
38
- "@loopback/build": "^6.1.0",
39
- "@loopback/eslint-config": "^8.0.3",
40
- "@loopback/openapi-v3": "^3.4.5",
41
- "@loopback/rest": "^5.2.0",
42
- "@loopback/rest-crud": "^0.8.9",
43
- "@loopback/testlab": "^3.2.0",
44
- "@types/node": "^10.17.26"
38
+ "@loopback/build": "^6.2.2",
39
+ "@loopback/eslint-config": "^9.0.2",
40
+ "@loopback/rest": "^6.2.0",
41
+ "@loopback/rest-crud": "^0.8.13",
42
+ "@loopback/testlab": "^3.2.4",
43
+ "@types/node": "^10.17.28"
45
44
  },
46
45
  "files": [
47
46
  "README.md",
@@ -54,5 +53,5 @@
54
53
  "url": "https://github.com/strongloop/loopback-next.git",
55
54
  "directory": "packages/boot"
56
55
  },
57
- "gitHead": "b89db3d3b8be6a36e63e91c2331d217fda7538de"
56
+ "gitHead": "a3f54273814de63819e0d8bc86509f8a737800bb"
58
57
  }
@@ -4,11 +4,11 @@
4
4
  // License text available at https://opensource.org/licenses/MIT
5
5
 
6
6
  import {
7
- BindingScope,
8
- inject,
9
7
  Application,
8
+ BindingScope,
10
9
  Component,
11
10
  CoreBindings,
11
+ inject,
12
12
  } from '@loopback/core';
13
13
  import {
14
14
  ApplicationMetadataBooter,
@@ -119,5 +119,6 @@ export function createComponentApplicationBooterBinding(
119
119
  ) {
120
120
  return createBindingFromClass(
121
121
  createBooterForComponentApplication(componentApp, filter),
122
+ {key: `booters.${componentApp.name}`},
122
123
  );
123
124
  }
@@ -71,6 +71,24 @@ export function BootMixin<T extends MixinTarget<Application>>(superClass: T) {
71
71
  );
72
72
  }
73
73
 
74
+ booted: boolean;
75
+
76
+ /**
77
+ * Override to detect and warn about starting without booting.
78
+ */
79
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
80
+ // @ts-ignore
81
+ public async start(): Promise<void> {
82
+ await super.start();
83
+ if (!this.booted) {
84
+ process.emitWarning(
85
+ 'App started without booting. Did you forget to call ' +
86
+ '`await app.boot()`?',
87
+ 'LoopBackWarning',
88
+ );
89
+ }
90
+ }
91
+
74
92
  /**
75
93
  * Convenience method to call bootstrapper.boot() by resolving bootstrapper
76
94
  */
@@ -101,6 +119,7 @@ export function BootMixin<T extends MixinTarget<Application>>(superClass: T) {
101
119
 
102
120
  // @ts-ignore
103
121
  this.setState('booted');
122
+ this.booted = true;
104
123
 
105
124
  /* eslint-enable @typescript-eslint/ban-ts-comment */
106
125
  }