Cairo release notes

11 October 2019

Update

To update an existing API Builder application, execute the following command from within the application directory:

npm update

To update the API Builder CLI, execute the following command:

axway pm update

Fixes

  • #1835: Deprecate the APIBuilder.remove* methods
  • #4926: Deprecate APIBuilder.debug
  • #4927: Deprecate APIBuilder.app.locals
  • #5246: Adjust custom inspect functions to work with newer Node versions
  • #6019: Deprecate Model.reduce
  • #6020: Deprecate Model.prototype.extend (extend a model instance)
  • #6026: Document maximum supported Node.js version (10.x)
  • #6028: Deprecate Codeblocks
  • #6038: Always use full Connector name in Swagger operationIDs
  • #6053: Deprecate Model “prefix”
  • #6072: Deprecate @axway/api-builder-react-engine
  • #6079: Deprecate Model.define
  • #6082: Document deprecated Logger functions
  • #6084: Deprecate APIBuilder.get
  • #6085: Deprecate APIBuilder.pluralize and singularize
  • #6086: Deprecate Model.fields[name].optional and API.parameters[name].optional
  • #6097: Enabling plugin authentication denies access to /console

Release notes

  • #1835: APIBuilder.removeModel, APIBuilder.removeConnector, APIBuilder.removeBlock, APIBuilder.removeAPI, APIBuilder.removeAPIByFilename, APIBuilder.removeRoute functions are deprecated, and will now generate a deprecation warning. They will be removed in a future version of the product. See deprecations [D018], [D019], [D020], [D021], [D022] and [D023].
  • #4926: APIBuilder.debug is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D027].
  • #4927: APIBuilder.app.locals is deprecated, and will now accessing appc_external_url, appc_external_apidoc_path_legacy, appc_external_apidoc_path, or appc_external_apidoc_url will generate a deprecation warning. They will be removed in a future version of the product. See deprecation [D026].
  • #5246: Previously, using util.inspect to inspect API Builder components such as the API Builder app, models, or connectors, would emit the deprecation message “[DEP0079] DeprecationWarning: Custom inspection function on Objects via .inspect() is deprecated” with Node.js >10.0.0 and returns a different string with Node.js >11.0.0. Now, the deprecation warning is no longer emitted.
  • #6019: Model instance reduce and APIBuilder.Model.reduce functions are deprecated, and will now generate a deprecation warning. They will be removed in a future version of the product. See deprecation [D017].
  • #6020: Extending a model instance (Model.prototype.extend) is deprecated and will now generate a deprecation warning. It will be removed in a future version of the product. Instead, use Model.extend. See deprecation [D025].
  • #6026: The maximum supported Node.js version (10.x) is now specified within the docs and package.json
  • #6028: Codeblocks are deprecated, and will now generate a deprecation warning. They will be removed in a future version of the product. See deprecation [D028].
  • #6038: Previously, operationId fields of generated Model APIs using Connectors with aliases prefixed with “appc.” would contain the Connector alias with this prefix removed. Now, operationId fields will contain the full Connector alias.
  • #6053: Creating Models with the prefix property has been deprecated and will generate a deprecation warning on use. See deprecation [D024].
  • #6072: @axway/api-builder-react-engine has been deprecated and is no longer supported. See deprecation [D029].
  • #6079: Model.define is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D016].
  • #6082: APIBuilder.logger.stripColors is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D033].
  • #6082: Logger.createDefaultLogger is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D034].
  • #6082: Logger.createRestifyLogger is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D035].
  • #6084: APIBuilder.get is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D030].
  • #6085: APIBuilder.pluralize is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D031].
  • #6085: APIBuilder.singlularize is deprecated, and will now generate a deprecation warning. It will be removed in a future version of the product. See deprecation [D032].
  • #6086: Using the optional property on Model fields and API parameters has been deprecated and will generate a deprecation warning on use. See deprecation [D021].
  • #6097: Previously, when plugin authentication was configured and the mechanism did not define a matchURL method, the server would incorrectly require authentication for public paths. Now, public paths are accessible when using plugin authentication.

Deprecations

These are the deprecations introduced in this release. Click here for a list of all deprecations.

  • [D016] Model.define: Model.define is deprecated and will be removed in a future version of the product. Use Model.extend or APIBuilder.createModel instead.
  • [D017] Model instance reduce and APIBuilder.Model.reduce: Reducing a Model instance (i.e. Model.prototype.reduce) and APIBuilder.Model.reduce are deprecated and will be removed in a future version of the product.
  • [D018] APIBuilder.removeModel: APIBuilder.removeModel is deprecated and will be removed in a future version of the product.
  • [D019] APIBuilder.removeConnector: APIBuilder.removeConnector is deprecated and will be removed in a future version of the product.
  • [D020] APIBuilder.removeBlock: APIBuilder.removeBlock is deprecated and will be removed in a future version of the product.
  • [D021] APIBuilder.removeAPI: APIBuilder.removeAPI is deprecated and will be removed in a future version of the product.
  • [D022] APIBuilder.removeAPIByFilename: APIBuilder.removeAPIByFilename is deprecated and will be removed in a future version of the product.
  • [D023] APIBuilder.removeRoute: APIBuilder.removeRoute is deprecated and will be removed in a future version of the product.
  • [D024] Model prefix: Creating a Model with the prefix property is deprecated and will be removed in a future version of the product.
  • [D025] Model.prototype.extend: Extending a model instance (i.e. Model.prototype.extend) is deprecated and will be removed in a future version of the product. Use Model.extend instead.
  • [D026] APIBuilder.app.locals: APIBuilder.app.locals properties appc_external_url, appc_external_apidoc_path_legacy, appc_external_apidoc_path, or appc_external_apidoc_url are deprecated and will be removed in a future version of the product.
  • [D027] APIBuilder.debug: APIBuilder.debug is deprecated and will be removed in a future version of the product.
  • [D028] Codeblocks: codeblocks are deprecated and will be removed in a future version of the product.
  • [D029] @axway/api-builder-react-engine: @axway/api-builder-react-engine is deprecated and will not receive any updates. If you are currently using Web Routes, consider switching to another modern web application architecture for your front end that consumes API Builder Service APIs.
  • [D030] APIBuilder.get: APIBuilder.get is deprecated and will be removed in a future version of the product.
  • [D031] APIBuilder.pluralize: APIBuilder.pluralize is deprecated and will be removed in a future version of the product. Use the pluralize module instead.
  • [D032] APIBuilder.singularize: APIBuilder.singularize is deprecated and will be removed in a future version of the product. Use the pluralize module instead.
  • [D033] APIBuilder.logger.stripColors: APIBuilder.logger.stripColors is deprecated and will be removed in a future version of the product.
  • [D034] Model.fields[name].optional and API.parameters[name].optional: Using the optional property on Model fields and API parameters is deprecated and will be ignored in a future version of the product. Use the required property instead.
  • [D035] Logger.createDefaultLogger: The static function Logger.createDefaultLogger is deprecated and will be removed in a future version of the product.
  • [D036] Logger.createRestifyLogger: The static function Logger.createRestifyLogger is deprecated and will be removed in a future version of the product.

Updated modules

Updated plugins

Previous releases

Year Releases
2022 Dickens (7 Oct), Wicklow (7 Oct), Christie (23 Sep), Beckett (19 Sep), Austen (9 Sep), Villasimius (9 Sep), Unna (26 Aug), Tauranga (16 Aug), Sunnyvale (29 Jul), Riga (15 Jul), Qom (24 Jun), Paris (17 Jun), Oyo (3 Jun), Nantes (20 May), Madurai (6 May), London (22 Apr), Kabul (8 Apr), Johannesburg (25 Mar), Ikeja (11 Mar), Haarlem (25 Feb), Gondar (11 Feb), Flint (28 Jan), Exeter (14 Jan)
2021 Djibouti (31 Dec), Caracas (17 Dec), Bangkok (3 Dec), Amsterdam (19 Nov), Zigong (5 Nov), York (22 Oct), Xalapa (8 Oct), Wrecsam (24 Sep), Venice (10 Sep), Utrecht (27 Aug), Timbuktu (13 Aug), Sydney (30 Jul), Roberttown (16 Jul), Quezon (2 Jul), Perm (18 Jun), Ottawa (4 Jun), Nashville (21 May), Madrid (7 May), Lyon (23 Apr), Kalamitsi (9 Apr), Jaunpur (26 Mar), Ibiza (12 Mar), Hanoi (26 Feb), Giza (12 Feb), Faro (29 Jan), Edirne (15 Jan)
2020 Dubai (18 Dec), Calgary (4 Dec), Bruges (20 Nov), Agra (6 Nov), Zagreb (23 Oct), Yokohama (8 Oct), Xenia (25 Sep), Warsaw (11 Sep), Vancouver (28 Aug), Ufa (14 Aug), Tokyo (31 Jul), Shanghai (17 Jul), Rason (3 Jul), Qena (19 Jun), Prague (5 Jun), Oslo (20 May), Nancy (8 May), Marrakech (24 Apr), Leeds (10 Apr), Kharkiv (27 Mar), Jackson (28 Feb), Independence (31 Jan), Huddersfield (17 Jan)
2019 Ghent (20 Dec), Florence (6 Dec), Ennis (22 Nov), Darwin (8 Nov), Cairo (11 Oct), Barcelona (27 Sep), Akita (30 Aug), Zams (16 Aug), Yako (2 Aug), Xapuri (19 Jul), Wellington (5 Jul), Valencia (21 Jun), Utopia (7 Jun), Turin (24 May), Sofia (26 Apr), Raga (12 Apr), Quebec (29 Mar), Phoenix (15 Mar), Osaka (1 Mar), Naples (15 Feb), Melbourne (1 Feb), Lisbon (18 Jan)
2018 Kobe (21 Dec), Jakarta (7 Dec), Istanbul (23 Nov), Halifax (26 Oct), Geneva (12 Oct), Fuji (28 Sep), Eden (14 Sep), Dublin (31 Aug), Canberra (17 Aug), Boston (3 Aug), Athens (24 Jul), v4 (29 Jun)