New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@cubejs-backend/api-gateway

Package Overview
Dependencies
Maintainers
2
Versions
596
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cubejs-backend/api-gateway - npm Package Compare versions

Comparing version 0.13.6 to 0.13.7

11

CHANGELOG.md

@@ -6,2 +6,13 @@ # Change Log

## [0.13.7](https://github.com/cube-js/cube.js/compare/v0.13.6...v0.13.7) (2019-12-31)
### Features
* Extendable context ([#299](https://github.com/cube-js/cube.js/issues/299)) ([38e33ce](https://github.com/cube-js/cube.js/commit/38e33ce)), closes [#295](https://github.com/cube-js/cube.js/issues/295) [#296](https://github.com/cube-js/cube.js/issues/296)
## [0.13.6](https://github.com/cube-js/cube.js/compare/v0.13.5...v0.13.6) (2019-12-19)

@@ -8,0 +19,0 @@

64

index.js

@@ -223,2 +223,3 @@ const jwt = require('jsonwebtoken');

this.enforceSecurityChecks = options.enforceSecurityChecks || (process.env.NODE_ENV === 'production');
this.extendContext = options.extendContext;
}

@@ -230,5 +231,4 @@

query: req.query.query,
context: this.contextByReq(req),
res: this.resToResultFn(res),
requestId: this.requestIdByReq(req)
context: await this.contextByReq(req, req.authInfo, this.requestIdByReq(req)),
res: this.resToResultFn(res)
});

@@ -240,5 +240,4 @@ }));

query: req.query.query,
context: this.contextByReq(req),
res: this.resToResultFn(res),
requestId: this.requestIdByReq(req)
context: await this.contextByReq(req, req.authInfo, this.requestIdByReq(req)),
res: this.resToResultFn(res)
});

@@ -250,5 +249,4 @@ }));

query: req.query.query,
context: this.contextByReq(req),
res: this.resToResultFn(res),
requestId: this.requestIdByReq(req)
context: await this.contextByReq(req, req.authInfo, this.requestIdByReq(req)),
res: this.resToResultFn(res)
});

@@ -259,5 +257,4 @@ }));

await this.meta({
context: this.contextByReq(req),
res: this.resToResultFn(res),
requestId: this.requestIdByReq(req)
context: await this.contextByReq(req, req.authInfo, this.requestIdByReq(req)),
res: this.resToResultFn(res)
});

@@ -275,3 +272,3 @@ }));

async meta({ context, res, requestId }) {
async meta({ context, res }) {
const requestStarted = new Date();

@@ -284,3 +281,3 @@ try {

this.handleError({
e, context, res, requestStarted, requestId
e, context, res, requestStarted
});

@@ -291,3 +288,3 @@ }

async sql({
query, context, res, requestId
query, context, res
}) {

@@ -307,3 +304,3 @@ const requestStarted = new Date();

this.handleError({
e, context, query, res, requestStarted, requestId
e, context, query, res, requestStarted
});

@@ -314,3 +311,3 @@ }

async load({
query, context, res, requestId
query, context, res
}) {

@@ -322,4 +319,3 @@ const requestStarted = new Date();

type: 'Load Request',
query,
requestId
query
});

@@ -345,3 +341,3 @@ const normalizedQuery = await this.queryTransformer(normalizeQuery(query), context);

renewQuery: normalizedQuery.renewQuery,
requestId
requestId: context.requestId
};

@@ -354,4 +350,3 @@ const response = await this.getAdapterApi({

query,
duration: this.duration(requestStarted),
requestId
duration: this.duration(requestStarted)
});

@@ -375,3 +370,3 @@ const flattenAnnotation = {

this.handleError({
e, context, query, res, requestStarted, requestId
e, context, query, res, requestStarted
});

@@ -382,3 +377,3 @@ }

async subscribe({
query, context, res, subscribe, subscriptionState, requestId
query, context, res, subscribe, subscriptionState
}) {

@@ -402,4 +397,3 @@ const requestStarted = new Date();

query,
context,
requestId: `${requestId}-${uuid()}`,
context: { ...context, requestId: `${context.requestId}-${uuid()}` },
res: (message, opts) => {

@@ -455,4 +449,10 @@ if (message.error) {

contextByReq(req) {
return { authInfo: req.authInfo };
async contextByReq(req, authInfo, requestId) {
const extensions = await Promise.resolve(typeof this.extendContext === 'function' ? this.extendContext(req) : {});
return {
authInfo,
requestId,
...extensions
};
}

@@ -465,3 +465,3 @@

handleError({
e, context, query, res, requestStarted, requestId
e, context, query, res, requestStarted
}) {

@@ -473,3 +473,2 @@ if (e instanceof CubejsHandlerError) {

error: e.message,
requestId,
duration: this.duration(requestStarted)

@@ -483,3 +482,2 @@ });

error: e.message,
requestId,
duration: this.duration(requestStarted)

@@ -493,3 +491,2 @@ });

error: e.error,
requestId,
duration: this.duration(requestStarted)

@@ -503,3 +500,2 @@ });

error: e.stack || e.toString(),
requestId,
duration: this.duration(requestStarted)

@@ -556,3 +552,3 @@ });

const { type, ...restParams } = event;
this.logger(type, { ...restParams, authInfo: context.authInfo });
this.logger(type, { ...restParams, ...context });
}

@@ -559,0 +555,0 @@ }

@@ -5,3 +5,3 @@ {

"author": "Statsbot, Inc.",
"version": "0.13.6",
"version": "0.13.7",
"repository": {

@@ -38,3 +38,3 @@ "type": "git",

"license": "Apache-2.0",
"gitHead": "53337fbbe5a9bfd6026b2bfd7d64ce1d0acaa878"
"gitHead": "167f2bb16920a1278b8a06e30f6494f36158ada5"
}

@@ -23,3 +23,3 @@ const UserError = require('./UserError');

async processMessage(connectionId, message, isSubscription) {
let context = {};
let authContext = {};
try {

@@ -30,5 +30,5 @@ if (typeof message === 'string') {

if (message.authorization) {
const newContext = {};
await this.apiGateway.checkAuthFn(newContext, message.authorization);
await this.subscriptionStore.setAuthContext(connectionId, newContext);
authContext = { isSubscription: true };
await this.apiGateway.checkAuthFn(authContext, message.authorization);
await this.subscriptionStore.setAuthContext(connectionId, authContext);
this.sendMessage(connectionId, { handshake: true });

@@ -47,5 +47,5 @@ return;

context = await this.subscriptionStore.getAuthContext(connectionId);
authContext = await this.subscriptionStore.getAuthContext(connectionId);
if (!context) {
if (!authContext) {
await this.sendMessage(

@@ -66,2 +66,5 @@ connectionId,

const requestId = message.requestId || `${connectionId}-${message.messageId}`;
const context = await this.apiGateway.contextByReq(message, authContext.authInfo, requestId);
const allowedParams = methodParams[message.method];

@@ -75,3 +78,2 @@ const params = allowedParams.map(k => ({ [k]: (message.params || {})[k] }))

res: this.resultFn(connectionId, message.messageId),
requestId: message.requestId || `${connectionId}-${message.messageId}`,
subscriptionState: async () => {

@@ -78,0 +80,0 @@ const subscription = await this.subscriptionStore.getSubscription(connectionId, message.messageId);

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc