diff --git a/DEPRECATED.md b/DEPRECATED.md index 6a13069ff3..ea5527405a 100644 --- a/DEPRECATED.md +++ b/DEPRECATED.md @@ -39,7 +39,6 @@ ArangoDB and shouldn't be used if possible. * Foxx: the Foxx sessions option `jwt` has been removed entirely. Please use the `sesssions-jwt` app from the Foxx app store or use the `crypto` module's JWT functions directly. * Foxx: the Foxx sessions option `type` has been removed entirely. Please use the options `cookie` and `header` instead. * Foxx: the Foxx sessions option `sessionStorageApp` has been removed entirely. Please use the option `sessionStorage` instead. -* The module `org/arangodb/extend` is deprecated. Please use the module `extendible` instead. * AQL: the AQL function `SKIPLIST` has been removed. * Simple queries: the following simple query functions are now deprecated: collection.near(), collection.within(), collection.geo(), collection.fulltext(), collection.range(), collection.closedRange(). It is recommended to replace calls to these functions with equivalent AQL queries, which are more flexible. * Simple queries: using negative values for SimpleQuery.skip() is not supported any longer. @@ -48,5 +47,4 @@ ArangoDB and shouldn't be used if possible. ## 2.8 * Foxx: the property `assets` in manifests has been removed entirely. Please use the `files` property and an external build tool instead. * Foxx: properties `setup` and `teardown` in manifests have been removed entirely. Please use the `scripts` property instead. -* The module `org/arangodb/extend` has been removed entirely. Please use the module `extendible` instead. * Simple queries: the following simple query functions will be removed: collection.near(), collection.within(), collection.geo(), collection.fulltext(), collection.range(), collection.closedRange(). It is recommended to replace calls to these functions with equivalent AQL queries, which are more flexible. diff --git a/js/apps/system/_admin/aardvark/APP/frontend/scss/_applicationDetailView.scss b/js/apps/system/_admin/aardvark/APP/frontend/scss/_applicationDetailView.scss index 39b36849f6..4797ced3e0 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/scss/_applicationDetailView.scss +++ b/js/apps/system/_admin/aardvark/APP/frontend/scss/_applicationDetailView.scss @@ -16,6 +16,8 @@ width: 160px; img.icon { + border: 1px solid $c-content-border; + border-radius: 3px; height: auto; max-height: 160px; max-width: 160px; @@ -28,18 +30,27 @@ left: 170px; position: absolute; width: 120px; + padding-top: 1px; input.delete, input.upgrade, input.switch-mode { margin-top: (160px - 4 * 30px) / 3; } + + input { + width: 90px; + } } .header_right { margin-left: 300px; padding: 5px; + input { + margin-left: 0; + } + .header_line { h3 { float: left; @@ -48,12 +59,13 @@ .license, .version { - @include border-radius(6px); + @include border-radius(3px); + background-color: $c-white; border: 1px solid $c-editor-toolbar; color: $c-editor-toolbar; font-size: .6em; - padding: 0 8px; + padding: 0 8px 2px; position: relative; top: -2px; } @@ -85,7 +97,8 @@ .swagger { iframe { - border: 1px solid black; + border: 1px solid $c-content-border; + border-radius: 3px; height: 600px; width: 100%; } @@ -99,9 +112,18 @@ } aside.meta { + background-color: #fff; + border: 1px solid $c-content-border; + border-radius: 3px; clear: right; float: left; - width: 200px; + width: 198px; + + dl { + padding-left: 7px; + padding-top: 5px; + margin-top: 0; + } } } @@ -163,4 +185,4 @@ .pending { color: #888; } -} \ No newline at end of file +} diff --git a/js/apps/system/_admin/aardvark/APP/frontend/scss/_colors.scss b/js/apps/system/_admin/aardvark/APP/frontend/scss/_colors.scss index c729b42f92..97feadbe6d 100644 --- a/js/apps/system/_admin/aardvark/APP/frontend/scss/_colors.scss +++ b/js/apps/system/_admin/aardvark/APP/frontend/scss/_colors.scss @@ -53,6 +53,7 @@ $c-dark-grey: #999; $c-darker-grey: #666; $c-new-grey: #8c8a89; +$c-content-border: rgba(104, 103, 102, 0.1); $c-transp: transparent; $c-low-transp: rgba(0, 0, 0, .7); diff --git a/js/client/modules/org/arangodb/arango-query-cursor.js b/js/client/modules/org/arangodb/arango-query-cursor.js index 94e6892fe8..dea1f46de3 100644 --- a/js/client/modules/org/arangodb/arango-query-cursor.js +++ b/js/client/modules/org/arangodb/arango-query-cursor.js @@ -78,7 +78,7 @@ exports.ArangoQueryCursor = ArangoQueryCursor; //////////////////////////////////////////////////////////////////////////////// ArangoQueryCursor.prototype.toString = function () { - var isCaptureModeActive = internal.isCaptureMode() + var isCaptureModeActive = internal.isCaptureMode(); var rows = [ ], i = 0; while (++i <= 10 && this.hasNext()) { rows.push(this.next()); @@ -99,7 +99,7 @@ ArangoQueryCursor.prototype.toString = function () { result += "]"; if (!isCaptureModeActive) { - print(result); + internal.print(result); result = ""; } if (rows.length > 0) { @@ -119,7 +119,7 @@ ArangoQueryCursor.prototype.toString = function () { } if (!isCaptureModeActive) { - print(result); + internal.print(result); result = ""; } return result; diff --git a/js/server/modules/org/arangodb/foxx/sessions.js b/js/server/modules/org/arangodb/foxx/sessions.js index 1b12b9fde0..4b6e25b1bb 100644 --- a/js/server/modules/org/arangodb/foxx/sessions.js +++ b/js/server/modules/org/arangodb/foxx/sessions.js @@ -29,7 +29,6 @@ const joi = require('joi'); const Foxx = require('org/arangodb/foxx'); -const deprecated = require('org/arangodb/deprecated'); const paramSchema = joi.string().optional().description('Foxx session ID'); // ----------------------------------------------------------------------------- @@ -162,22 +161,6 @@ class Sessions { opts = {}; } - if (opts.type) { - deprecated('2.8', ( - 'The Foxx session option "type" is deprecated and will be removed.' - + ' Use the options "cookie" and/or "header" instead.' - )); - if (opts.type === 'cookie') { - delete opts.header; - opts.cookie = opts.cookie || true; - } else if (opts.type === 'header') { - delete opts.cookie; - opts.header = opts.header || true; - } else { - throw new Error('Only the following session types are supported at this time: ' + sessionTypes.join(', ')); - } - } - if (opts.cookie) { if (opts.cookie === true) { opts.cookie = {}; diff --git a/js/server/tests/shell-foxx.js b/js/server/tests/shell-foxx.js index 0a9c563428..c67225b513 100644 --- a/js/server/tests/shell-foxx.js +++ b/js/server/tests/shell-foxx.js @@ -362,7 +362,6 @@ function SetRoutesFoxxControllerSpec () { app.activateSessions({ sessionStorage: 'sessions', - type: 'cookie', cookie: { name: 'sid', secret: 'secret' @@ -1481,193 +1480,6 @@ function SetupSessions () { } assertUndefined(err); - }, - - testWorksWithJwt: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - secret: 'secret' - } - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtHS256: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - secret: 'secret', - algorithm: 'HS256' - } - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtNone: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - algorithm: 'none' - } - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtNoneWithSecret: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - algorithm: 'none', - secret: 'secret' - } - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtUnverified: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - verify: false - } - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtShorthand: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: 'secret' - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testWorksWithJwtNoneShorthand: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: true - }); - } catch (e) { - err = e; - } - - assertUndefined(err); - }, - - testRefusesJwtAlgorithmWithSecret: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'header', - header: 'X-Session-Token', - jwt: { - algorithm: 'HS256' - } - }); - } catch (e) { - err = e; - } - - assertTrue(err instanceof Error); - }, - - testRefusesUnknownSessionsTypes: function () { - var err; - - app = new FoxxController(fakeContext); - - try { - app.activateSessions({ - sessionStorage: 'sessions', - type: 'magic', - cookie: { - name: 'sid', - secret: 'secret' - } - }); - } catch (e) { - err = e; - } - - assertTrue(err instanceof Error); } }; }