From 02cfb554ee487ba34d679f74d971505db84fcf3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Bajto=C5=A1?= Date: Mon, 4 Feb 2019 13:21:08 +0100 Subject: [PATCH] Prevent accidental upgrades to swagger-ui v3+ --- test/explorer.test.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/test/explorer.test.js b/test/explorer.test.js index c88b28e..703e7ec 100644 --- a/test/explorer.test.js +++ b/test/explorer.test.js @@ -5,6 +5,21 @@ 'use strict'; +// NOTE(bajtos) It's important to run this check before we load the Explorer +// because require() may fail (e.g. with MODULE_NOT_FOUND error) and make +// it difficult to identify the actual problem +const uiVersion = require('../package.json').dependencies['swagger-ui']; +if (!uiVersion.startsWith('^2')) { + console.error(` +Upgrading from swagger-ui@2 to a newer major version (${uiVersion}) is difficult, +see https://github.com/strongloop/loopback-component-explorer/issues/254 +If you are confident about this change and have manually verified API Explorer +functionality in the browser, including access-token based authentication, +then you can delete this check. +`); + process.exit(2); +} + const loopback = require('loopback'); const explorer = require('../'); const request = require('supertest');