Page Contents

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

3.6.0 (2020-06-23)

Bug Fixes

  • set node version to >=10.16 to support events.once (e39da1c)

Features

  • update sequence.ts to invoke middleware (e2ff6b2)

3.5.1 (2020-06-11)

Note: Version bump only for package @loopback/example-todo

3.5.0 (2020-05-28)

Features

  • add npm run openapi-spec to export the openapi spec (dca78e1)

3.4.1 (2020-05-20)

Note: Version bump only for package @loopback/example-todo

3.4.0 (2020-05-19)

Features

  • upgrade to TypeScript 3.9.x (3300e45)

3.3.0 (2020-05-07)

Features

  • example-todo: add morgan middleware if env var DEBUG is set (4457495)

3.2.0 (2020-04-29)

Features

  • move datasource config from JSON to TS files (6105456)

3.1.3 (2020-04-23)

Note: Version bump only for package @loopback/example-todo

3.1.2 (2020-04-22)

Note: Version bump only for package @loopback/example-todo

3.1.1 (2020-04-11)

Note: Version bump only for package @loopback/example-todo

3.1.0 (2020-04-08)

Features

3.0.2 (2020-03-24)

Bug Fixes

3.0.1 (2020-03-17)

Note: Version bump only for package @loopback/example-todo

3.0.0 (2020-03-05)

Bug Fixes

  • remove ref for v4.loopback.io (78f20c0)
  • example-todo: throw if geocode address is not found (72d2035)

chore

  • remove support for Node.js v8.x (4281d9d)

Features

BREAKING CHANGES

  • Node.js v8.x is now end of life. Please upgrade to version 10 and above. See https://nodejs.org/en/about/releases.

2.0.0 (2020-02-06)

Bug Fixes

  • suport complex objects for query params in api explorer (a4ef640)

BREAKING CHANGES

  • This fix has modified the api definitions described by the decorator ‘param.query.object’, to support Open-API’s url-encoded definition for json query parameters.

Previously, such parameters were described with exploded: true and style: deepObject, i.e exploded encoding, which turned out to be problematic as explained and discussed in, https://github.com/swagger-api/swagger-js/issues/1385 and https://github.com/OAI/OpenAPI-Specification/issues/1706

  {
    "in": "query",
    "style": "deepObject"
    "explode": "true",
    "schema": {}
  }

Exploded encoding worked for simple json objects as below but not for complex objects.

   http://localhost:3000/todos?filter[limit]=2

To address these issues with exploded queries, this fix switches definition of json query params from the exploded, deep-object style to the url-encoded style definition in Open-API spec.

LoopBack already supports receiving url-encoded payload for json query parameters.

For instance, to filter api results from the GET ‘/todo-list’ endpoint in the todo-list example with a specific relation, { “include”: [ { “relation”: “todo” } ] }, the following url-encoded query parameter can be used,

   http://localhost:3000/todos?filter=%7B%22include%22%3A%5B%7B%22relation%22%3A%22todoList%22%7D%5D%7D

The above was possible because the coercion behavior in LoopBack performed json parsing for deep object style json query params before this fix. This fix has modified that behavior by removing json parsing. Since the exploded deep-object definition has been removed from the param.query.object decorator, this new behaviour remains just an internal source code aspect as of now.

In effect, this fix only modifies the open api definitions generated from LoopBack APIs. The ‘style’ and ‘explode’ fields are removed and the ‘schema’ field is moved under ‘content[application/json]’. This is the definition that supports url-encoding as per Open-API spec.

  {
    "in": "query"
    "content": {
      "application/json": {
        "schema": {}
      }
    }
  }

Certain client libraries (like swagger-ui or LoopBack’s api explorer) necessiate using Open-API’s url-encoded style definition for json query params to support “sending” url-encoded payload.

All consumers of LoopBack APIs may need to regenerate api definitions, if their client libraries require them to do so for url-encoding.

Otherwise there wouldn’t be any significant impact on API consumers.

To preserve compatibility with existing REST API clients, this change is backward compatible. All exploded queries like ?filter[limit]=1 will continue to work for json query params, despite the fact that they are described differently in the OpenAPI spec.

Existing api clients will continue to work after an upgrade.

The signature of the ‘param.query.object’ decorator has not changed.

There is no code changes required in the LoopBack APIs after upgrading to this fix. No method signatures or data structures are impacted.

1.9.6 (2020-02-05)

Bug Fixes

  • update clean script for examples to be compatible with lb4 example (d9f5741)

1.9.5 (2020-01-27)

Bug Fixes

  • cli: reject datasources with no name property for service generator (cc871e5)
  • example-todo: use latest cli code (a1f83f8)

1.9.4 (2020-01-07)

Note: Version bump only for package @loopback/example-todo

1.9.3 (2020-01-07)

Note: Version bump only for package @loopback/example-todo

1.9.2 (2019-12-09)

Note: Version bump only for package @loopback/example-todo

1.9.1 (2019-11-25)

Note: Version bump only for package @loopback/example-todo

1.9.0 (2019-11-12)

Features

  • cli: generate datasource json with ‘.config.json` extension (51d8f7b)

1.8.4 (2019-10-24)

Note: Version bump only for package @loopback/example-todo

1.8.3 (2019-10-07)

Note: Version bump only for package @loopback/example-todo

1.8.2 (2019-09-28)

Note: Version bump only for package @loopback/example-todo

1.8.1 (2019-09-27)

Note: Version bump only for package @loopback/example-todo

1.8.0 (2019-09-17)

Features

  • use descriptive title to describe schema of POST (create) request bodies (8f49a45)

1.7.6 (2019-09-06)

Note: Version bump only for package @loopback/example-todo

1.7.5 (2019-09-03)

Note: Version bump only for package @loopback/example-todo

1.7.4 (2019-08-19)

Note: Version bump only for package @loopback/example-todo

1.7.3 (2019-08-15)

Note: Version bump only for package @loopback/example-todo

1.7.2 (2019-08-15)

Bug Fixes

  • repository-json-schema: make exclude option reject properties (35027c4)

1.7.1 (2019-07-31)

Note: Version bump only for package @loopback/example-todo

1.7.0 (2019-07-26)

Features

  • update examples and docs to use getModelSchemaRef (99758b1)

1.6.6 (2019-07-17)

Bug Fixes

  • example-todo: exclude id from POST request body (296ac6c)

1.6.5 (2019-06-28)

Bug Fixes

  • example-todo: allow partial updates via PATCH (cff8189)

1.6.4 (2019-06-21)

Bug Fixes

  • update sample todo and todo-lists (99d3aa0)

1.6.3 (2019-06-20)

Note: Version bump only for package @loopback/example-todo

1.6.2 (2019-06-17)

Bug Fixes

  • remove forgotten references to tslint (faa0a92)

1.6.1 (2019-06-06)

Note: Version bump only for package @loopback/example-todo

1.6.0 (2019-06-03)

Features

  • add navigational properties to find* methods (1f0aa0b)
  • replace tslint with eslint (44185a7)

1.5.15 (2019-05-31)

Note: Version bump only for package @loopback/example-todo

1.5.14 (2019-05-30)

Note: Version bump only for package @loopback/example-todo

1.5.13 (2019-05-23)

Note: Version bump only for package @loopback/example-todo

1.5.12 (2019-05-14)

Note: Version bump only for package @loopback/example-todo

1.5.11 (2019-05-10)

Note: Version bump only for package @loopback/example-todo

1.5.10 (2019-05-09)

Note: Version bump only for package @loopback/example-todo

1.5.9 (2019-05-06)

Note: Version bump only for package @loopback/example-todo

1.5.8 (2019-04-26)

Note: Version bump only for package @loopback/example-todo

1.5.7 (2019-04-20)

Note: Version bump only for package @loopback/example-todo

1.5.6 (2019-04-11)

Note: Version bump only for package @loopback/example-todo

1.5.5 (2019-04-09)

Note: Version bump only for package @loopback/example-todo

1.5.4 (2019-04-05)

Note: Version bump only for package @loopback/example-todo

1.5.3 (2019-03-22)

Note: Version bump only for package @loopback/example-todo

1.5.2 (2019-03-22)

Note: Version bump only for package @loopback/example-todo

1.5.1 (2019-03-12)

Note: Version bump only for package @loopback/example-todo

1.5.0 (2019-03-01)

Features

1.4.4 (2019-02-25)

Note: Version bump only for package @loopback/example-todo

1.4.3 (2019-02-08)

Bug Fixes

  • example-todo: “npm run migration” script path (a54fbf1)

1.4.2 (2019-01-28)

Note: Version bump only for package @loopback/example-todo

1.4.1 (2019-01-15)

Note: Version bump only for package @loopback/example-todo

1.4.0 (2019-01-14)

Features

  • always include tslint and typescript in project dev-dependencies (e0df285)

1.3.1 (2018-12-20)

Note: Version bump only for package @loopback/example-todo

1.3.0 (2018-12-13)

Features

  • repository: migrateSchema APIs (ad0229b)
  • scaffold DB migration script for new app projects (f783f07)

1.2.2 (2018-11-26)

Note: Version bump only for package @loopback/example-todo

1.2.1 (2018-11-17)

Note: Version bump only for package @loopback/example-todo

1.2.0 (2018-11-17)

Features

  • an extension adding a self-hosted REST API Explorer (4c165c7)

1.1.1 (2018-11-14)

Note: Version bump only for package @loopback/example-todo

1.1.0 (2018-11-08)

Bug Fixes

  • change unmatched html tags, remove redundant ‘px’ from 0 (46d08f6)
  • update usage of x-ts-type for schemas (57c694e)

Features

  • cli: use app.static for default home page (1dcf169)

1.0.1 (2018-10-17)

Note: Version bump only for package @loopback/example-todo

0.22.0 (2018-10-08)

Features

  • use resolveJsonModule to load datasource config (73e19ff)

0.21.2 (2018-10-06)

Note: Version bump only for package @loopback/example-todo

0.21.1 (2018-10-05)

Note: Version bump only for package @loopback/example-todo

0.21.0 (2018-10-03)

Bug Fixes

  • clean up dataSource usage (69506a4)

Features

  • testlab: add StubbedInstanceWithSinonAccessor (1dc2304)

0.20.2 (2018-09-28)

Note: Version bump only for package @loopback/example-todo

0.20.1 (2018-09-27)

Note: Version bump only for package @loopback/example-todo

0.20.0 (2018-09-25)

Features

  • add “filter” parameter to “find” endpoints (7e1acfc)

0.19.0 (2018-09-21)

Features

  • testlab: add createRestAppClient(), simplify usage in tests (d75be77)
  • testlab: set port to 0 in givenHttpServerConfig (90a0bfb)

0.18.0 (2018-09-19)

Bug Fixes

  • rest: return 404 when a model was not found (7a56bad)

Features

  • repository: rework *ById methods to throw if id not found (264f231)

0.17.6 (2018-09-17)

Bug Fixes

  • example-todo: fix typo in README (e56dcc5)

0.17.5 (2018-09-14)

Note: Version bump only for package @loopback/example-todo

0.17.4 (2018-09-14)

Note: Version bump only for package @loopback/example-todo

0.17.3 (2018-09-14)

Bug Fixes

  • example-todo: add responses to controllers (a7fc210)

0.17.2 (2018-09-12)

Note: Version bump only for package @loopback/example-todo

0.17.1 (2018-09-10)

Note: Version bump only for package @loopback/example-todo

0.17.0 (2018-09-08)

Bug Fixes

  • remove extra imports for mixin dependencies (35b916b)

Features

  • service-proxy: add service mixin (fb01931)

0.16.3 (2018-08-25)

Note: Version bump only for package @loopback/example-todo

0.16.2 (2018-08-24)

Note: Version bump only for package @loopback/example-todo

0.16.1 (2018-08-20)

Note: Version bump only for package @loopback/example-todo

0.16.0 (2018-08-15)

Features

  • add two simple benchmarks (5066cdf)

0.15.0 (2018-08-08)

Bug Fixes

  • cli: install dependencies for clones examples (5774f1f)
  • service-proxy: await datasource until it connects to the service (714344b)

Features

  • cli: use app.restServer.url for console logs (f31160c)

0.14.2 (2018-07-21)

Note: Version bump only for package @loopback/example-todo

0.14.1 (2018-07-20)

Note: Version bump only for package @loopback/example-todo

0.14.0 (2018-07-20)

Features

  • example-todo-list: add TodoList package/tutorial (306d437)

0.13.3 (2018-07-13)

Bug Fixes

  • example-todo: correct todo-overview image link (afb5a66)

0.13.2 (2018-07-11)

Note: Version bump only for package @loopback/example-todo

0.13.1 (2018-07-10)

Bug Fixes

  • docs: fix example-todo diagram link (b2fe27c)

0.13.0 (2018-07-09)

Features

0.12.5 (2018-06-28)

Note: Version bump only for package @loopback/example-todo

0.12.4 (2018-06-27)

Note: Version bump only for package @loopback/example-todo

0.12.3 (2018-06-26)

Note: Version bump only for package @loopback/example-todo

0.12.2 (2018-06-25)

Note: Version bump only for package @loopback/example-todo

0.12.1 (2018-06-25)

Note: Version bump only for package @loopback/example-todo

0.12.0 (2018-06-20)

Features

  • add type coercion (2b8d816)
  • example-todo: add Geo to examples/todo (b4a9a9e)

0.11.4 (2018-06-11)

Note: Version bump only for package @loopback/example-todo

0.11.3 (2018-06-09)

Note: Version bump only for package @loopback/example-todo

0.11.2 (2018-06-09)

Note: Version bump only for package @loopback/example-todo

0.11.1 (2018-06-09)

Note: Version bump only for package @loopback/example-todo

0.11.0 (2018-06-08)

Features

  • cli: add vscode config files (3738b9c)

0.10.1 (2018-05-28)

Bug Fixes

  • clone the test folder for examples (00688ea)

0.10.0 (2018-05-23)

Features

  • cli: add CLI prompt for controller’s http path name (0f9c438)

0.9.4 (2018-05-20)

Note: Version bump only for package @loopback/example-todo

0.9.3 (2018-05-14)

Bug Fixes

  • change index.d.ts files to point to dist8 (42ca42d)
  • update example scripts and files in package.json (65f5d52)

0.9.2 (2018-05-14)

Note: Version bump only for package @loopback/example-todo

0.9.1 (2018-05-08)

Note: Version bump only for package @loopback/example-todo

0.9.0 (2018-05-03)

Features

  • add helper package “dist-util” (532f153)

0.8.0 (2018-05-03)

Features

  • add helper package “dist-util” (532f153)

0.7.3 (2018-04-26)

Note: Version bump only for package @loopback/example-todo

0.7.2 (2018-04-26)

Note: Version bump only for package @loopback/example-todo

0.7.1 (2018-04-25)

Note: Version bump only for package @loopback/example-todo

0.7.0 (2018-04-16)

Note: Version bump only for package @loopback/example-todo

0.6.3 (2018-04-16)

Note: Version bump only for package @loopback/example-todo

0.6.2 (2018-04-12)

Note: Version bump only for package @loopback/example-todo

0.6.1 (2018-04-11)

Note: Version bump only for package @loopback/example-todo

0.6.0 (2018-04-11)

Bug Fixes

  • change file names to fit advocated naming convention (0331df8)

Features

0.5.3 (2018-04-06)

Note: Version bump only for package @loopback/example-todo

0.5.2 (2018-04-04)

Note: Version bump only for package @loopback/example-todo

0.5.1 (2018-04-02)

Note: Version bump only for package @loopback/example-todo

0.5.0 (2018-03-29)

Code Refactoring

  • renamed example-getting-started to example-todo (7a09f1b)

BREAKING CHANGES

  • example-getting-started is now example-todo

0.4.1 (2018-03-23)

Bug Fixes

  • example-getting-started: remove old model from sample data (4fee3b1)

Reverts

  • example-getting-started: sync code and docs (5f54b96)

0.4.0 (2018-03-21)

Features

  • rest: expose app.requestHandler function (20a41ac)

BREAKING CHANGES

  • rest: RestServer#handleHttp was renamed to RestServer#requestHandler.

0.3.4 (2018-03-14)

Note: Version bump only for package @loopback/example-getting-started

0.3.3 (2018-03-13)

Note: Version bump only for package @loopback/example-getting-started

0.3.2 (2018-03-08)

Note: Version bump only for package @loopback/example-getting-started

0.3.1 (2018-03-07)

Note: Version bump only for package @loopback/example-getting-started

0.3.0 (2018-03-06)

Bug Fixes

Features

  • upgrade from swagger 2 to openapi 3 (71e5af1)

0.2.0 (2018-03-01)

Note: Version bump only for package @loopback/example-getting-started

0.1.2 (2018-03-01)

Features

  • repository: add datasource method in repository mixin (85347fa)
  • add repository booter (#1030) (43ea7a8)

0.1.1 (2018-02-23)

Note: Version bump only for package @loopback/example-getting-started

0.1.0 (2018-02-21)

Bug Fixes

  • example-getting-started: correct spacing on navigation sections (0dde314)

Features

1.0.1-alpha.7 (2018-02-15)

Bug Fixes

  • example-getting-started: remove juggler warning (86139f6)
  • example-getting-started: use sinon from testlab (#984) (09fc791)

1.0.1-alpha.6 (2018-02-07)

Bug Fixes

  • build: fix tslint config and slipped violations (22f8e05)
  • example-getting-started: update readme to use RestApplication (#961) (b3e2c0e)
  • example-getting-started: use RestApplication (#955) (3829878)
  • use parameter level decorators for openapi params (c29dd19)

build

BREAKING CHANGES

  • Support for Node.js version lower than 8.0 has been dropped. Please upgrade to the latest Node.js 8.x LTS version.

Co-Authored-by: Taranveer Virk taranveer@virk.cc

1.0.1-alpha.5 (2018-02-04)

Note: Version bump only for package @loopback/example-getting-started

1.0.1-alpha.4 (2018-01-30)

Note: Version bump only for package @loopback/example-getting-started

1.0.1-alpha.3 (2018-01-29)

Note: Version bump only for package @loopback/example-getting-started

1.0.1-alpha.2 (2018-01-26)

Note: Version bump only for package @loopback/example-getting-started

1.0.1-alpha.1 (2018-01-26)

Bug Fixes

  • apply source-maps to test errors (76a7f56), closes #602
  • make mocha self-contained with the source map support (7c6d869)

1.0.1-alpha.0 (2018-01-19)

Bug Fixes

  • example-getting-started: fix “extends” path to point to @loopback/build module (5b37148)

Features

  • example-getting-started: migrate into monorepo (9478d8b)