From 090521f00acc47d7960f81b1da3f42deb739eb29 Mon Sep 17 00:00:00 2001 From: Florent Vilmart Date: Sat, 2 Apr 2016 14:10:59 -0400 Subject: [PATCH 1/2] :bomb: removes exposed files adapter - Should fix problems with GCS - Throws error that shows the right repo --- package.json | 10 +++++----- spec/index.spec.js | 8 ++++---- src/index.js | 12 +++++++++--- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 302ce6e888..034734e521 100644 --- a/package.json +++ b/package.json @@ -33,11 +33,7 @@ "mongodb": "~2.1.0", "multer": "^1.1.0", "parse": "^1.8.0", - "parse-server-fs-adapter": "^1.0.0", - "parse-server-gcs-adapter": "^1.0.0", "parse-server-push-adapter": "^1.0.0", - "parse-server-s3-adapter": "^1.0.0", - "parse-server-simple-mailgun-adapter": "^1.0.0", "redis": "^2.5.0-1", "request": "^2.65.0", "tv4": "^1.2.7", @@ -61,7 +57,11 @@ "gaze": "^0.5.2", "jasmine": "^2.3.2", "mongodb-runner": "3.1.15", - "nodemon": "^1.8.1" + "nodemon": "^1.8.1", + "parse-server-fs-adapter": "^1.0.0", + "parse-server-gcs-adapter": "^1.0.0", + "parse-server-s3-adapter": "^1.0.0", + "parse-server-simple-mailgun-adapter": "^1.0.0" }, "scripts": { "dev": "npm run build && node bin/dev", diff --git a/spec/index.spec.js b/spec/index.spec.js index b58cb2f2a6..fa08b4e8f9 100644 --- a/spec/index.spec.js +++ b/spec/index.spec.js @@ -241,10 +241,10 @@ describe('server', () => { done(); }); - it('exposes all the "core" adapters', done => { - expect(ParseServer.S3Adapter).toThrow(); - expect(ParseServer.GCSAdapter).toThrow('GCSAdapter requires an projectId'); - expect(ParseServer.FileSystemAdapter).toThrow(); + it('core adapters are not exposed anymore', done => { + expect(ParseServer.S3Adapter).toThrow('S3Adapter is not provided by parse-server anymore; please install parse-server-s3-adapter'); + expect(ParseServer.GCSAdapter).toThrow('GCSAdapter is not provided by parse-server anymore; please install parse-server-gcs-adapter'); + expect(ParseServer.FileSystemAdapter).toThrow('FileSystemAdapter is not provided by parse-server anymore; please install parse-server-fs-adapter'); done(); }); diff --git a/src/index.js b/src/index.js index bdf6b34231..deb2a290ed 100644 --- a/src/index.js +++ b/src/index.js @@ -1,8 +1,5 @@ import winston from 'winston'; import ParseServer from './ParseServer'; -import GCSAdapter from 'parse-server-gcs-adapter'; -import S3Adapter from 'parse-server-s3-adapter'; -import FileSystemAdapter from 'parse-server-fs-adapter'; if (process.env.VERBOSE || process.env.VERBOSE_PARSE_SERVER) { winston.level = 'silly'; @@ -20,5 +17,14 @@ let _ParseServer = function(options) { // Mount the create liveQueryServer _ParseServer.createLiveQueryServer = ParseServer.createLiveQueryServer; +function useExternal(name, moduleName) { + return function() { + throw `${name} is not provided by parse-server anymore; please install ${moduleName}`; + } +} +let S3Adapter = useExternal('S3Adapter', 'parse-server-s3-adapter'); +let GCSAdapter = useExternal('GCSAdapter', 'parse-server-gcs-adapter') +let FileSystemAdapter = useExternal('FileSystemAdapter', 'parse-server-fs-adapter') + export default ParseServer; export { S3Adapter, GCSAdapter, FileSystemAdapter, _ParseServer as ParseServer }; From 758d2acee147278a0587094bf93b63ae9a971eb0 Mon Sep 17 00:00:00 2001 From: Florent Vilmart Date: Mon, 4 Apr 2016 14:51:19 -0400 Subject: [PATCH 2/2] Only removes GCS for now --- package.json | 8 ++++---- spec/index.spec.js | 4 ++-- src/deprecated.js | 5 +++++ src/index.js | 12 ++++-------- 4 files changed, 15 insertions(+), 14 deletions(-) create mode 100644 src/deprecated.js diff --git a/package.json b/package.json index 034734e521..ade1a89a81 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,10 @@ "mongodb": "~2.1.0", "multer": "^1.1.0", "parse": "^1.8.0", + "parse-server-fs-adapter": "^1.0.0", "parse-server-push-adapter": "^1.0.0", + "parse-server-s3-adapter": "^1.0.1", + "parse-server-simple-mailgun-adapter": "^1.0.0", "redis": "^2.5.0-1", "request": "^2.65.0", "tv4": "^1.2.7", @@ -58,10 +61,7 @@ "jasmine": "^2.3.2", "mongodb-runner": "3.1.15", "nodemon": "^1.8.1", - "parse-server-fs-adapter": "^1.0.0", - "parse-server-gcs-adapter": "^1.0.0", - "parse-server-s3-adapter": "^1.0.0", - "parse-server-simple-mailgun-adapter": "^1.0.0" + "parse-server-gcs-adapter": "^1.0.0" }, "scripts": { "dev": "npm run build && node bin/dev", diff --git a/spec/index.spec.js b/spec/index.spec.js index fa08b4e8f9..48f59d1ac0 100644 --- a/spec/index.spec.js +++ b/spec/index.spec.js @@ -242,9 +242,9 @@ describe('server', () => { }); it('core adapters are not exposed anymore', done => { - expect(ParseServer.S3Adapter).toThrow('S3Adapter is not provided by parse-server anymore; please install parse-server-s3-adapter'); + expect(ParseServer.S3Adapter).toThrow(); expect(ParseServer.GCSAdapter).toThrow('GCSAdapter is not provided by parse-server anymore; please install parse-server-gcs-adapter'); - expect(ParseServer.FileSystemAdapter).toThrow('FileSystemAdapter is not provided by parse-server anymore; please install parse-server-fs-adapter'); + expect(ParseServer.FileSystemAdapter).toThrow(); done(); }); diff --git a/src/deprecated.js b/src/deprecated.js new file mode 100644 index 0000000000..7192336c2c --- /dev/null +++ b/src/deprecated.js @@ -0,0 +1,5 @@ +export function useExternal(name, moduleName) { + return function() { + throw `${name} is not provided by parse-server anymore; please install ${moduleName}`; + } +} diff --git a/src/index.js b/src/index.js index deb2a290ed..515ea732ae 100644 --- a/src/index.js +++ b/src/index.js @@ -1,5 +1,8 @@ import winston from 'winston'; import ParseServer from './ParseServer'; +import S3Adapter from 'parse-server-s3-adapter' +import FileSystemAdapter from 'parse-server-fs-adapter' +import { useExternal } from './deprecated' if (process.env.VERBOSE || process.env.VERBOSE_PARSE_SERVER) { winston.level = 'silly'; @@ -17,14 +20,7 @@ let _ParseServer = function(options) { // Mount the create liveQueryServer _ParseServer.createLiveQueryServer = ParseServer.createLiveQueryServer; -function useExternal(name, moduleName) { - return function() { - throw `${name} is not provided by parse-server anymore; please install ${moduleName}`; - } -} -let S3Adapter = useExternal('S3Adapter', 'parse-server-s3-adapter'); -let GCSAdapter = useExternal('GCSAdapter', 'parse-server-gcs-adapter') -let FileSystemAdapter = useExternal('FileSystemAdapter', 'parse-server-fs-adapter') +let GCSAdapter = useExternal('GCSAdapter', 'parse-server-gcs-adapter'); export default ParseServer; export { S3Adapter, GCSAdapter, FileSystemAdapter, _ParseServer as ParseServer };