dfci / matchminer-ui Goto Github PK
View Code? Open in Web Editor NEWA platform for matching patient-specific genomic profiles to precision cancer medicine clinical trials
Home Page: https://matchminer.org/
License: Other
A platform for matching patient-specific genomic profiles to precision cancer medicine clinical trials
Home Page: https://matchminer.org/
License: Other
Probably the same issue is causing all those errors... Something about angular
In regard of the very first error: the directory matchminer-ui/app
does exist, but matchminer-ui/app/assets
does not
My setup:
Mac OSX El Capitan 10.11.6
$ node --version
v10.12.0
$gulp --version
[12:49:00] CLI version 3.9.1
[12:49:00] Local version 3.9.1
$ phantomjs -v
2.1.1
$ gulp test
12:52:12] Using gulpfile ~/matchminer-ui/gulpfile.js
[12:52:12] Starting 'config'...
[12:52:12] Starting 'scripts'...
[12:52:12] Finished 'config' after 204 ms
[12:52:13] all files 542.39 kB
[12:52:13] Finished 'scripts' after 1.53 s
[12:52:13] Starting 'test'...
19 11 2018 12:52:14.037:WARN [watcher]: Pattern "/Users/ipozdnya/matchminer-ui/app//*.module.js" does not match any file.
19 11 2018 12:52:14.194:WARN [watcher]: Pattern "/Users/ipozdnya/matchminer-ui/app/assets//*" does not match any file.
19 11 2018 12:52:15.204:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
19 11 2018 12:52:15.206:INFO [launcher]: Starting browser PhantomJS
19 11 2018 12:52:15.968:INFO [PhantomJS 2.1.1 (Mac OS X 0.0.0)]: Connected on socket FTBB7xliHvnybVH1AAAA with id 30323069
PhantomJS 2.1.1 (Mac OS X 0.0.0) Controller: ClinicalTrialsCtrl should be set the isAuthenticated parameter on init FAILED
/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4588:53
forEach@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:322:24
loadModules@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4548:12
createInjector@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4470:30
workFn@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2954:60
inject@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2934:46
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:40:9
TypeError: undefined is not an object (evaluating 'ctrl.isAuthenticated') in /Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js (line 57)
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:57:14
PhantomJS 2.1.1 (Mac OS X 0.0.0) Controller: ClinicalTrialsCtrl should be able to detect changes of the searchterm in the elasticsearchservice and update the metadata FAILED
/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4588:53
forEach@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:322:24
loadModules@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4548:12
createInjector@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4470:30
workFn@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2954:60
inject@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2934:46
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:40:9
TypeError: undefined is not an object (evaluating 'ctrl.searchTerm') in /Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js (line 61)
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:61:14
PhantomJS 2.1.1 (Mac OS X 0.0.0) Controller: ClinicalTrialsCtrl should be able to detect changes of the loading indicator used in the clinicaltrialsservice FAILED
/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4588:53
forEach@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:322:24
loadModules@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4548:12
createInjector@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4470:30
workFn@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2954:60
inject@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2934:46
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:40:9
TypeError: undefined is not an object (evaluating 'ctrl.isLoading') in /Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js (line 72)
/Users/ipozdnya/matchminer-ui/app/scripts/app/clinical-trials/clinical-trials.controller.spec.js:72:14... ANOTHER 320 ERRORS HERE...
PhantomJS 2.1.1 (Mac OS X 0.0.0) Various utilities function and filters should return the normal string when value is non negating FAILED
/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4588:53
forEach@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:322:24
loadModules@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4548:12
createInjector@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4470:30
workFn@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2954:60
inject@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2934:46
/Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js:24:9
TypeError: undefined is not a constructor (evaluating 'filter('transformNegation')') in /Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js (line 88)
/Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js:88:33
PhantomJS 2.1.1 (Mac OS X 0.0.0) Various utilities function and filters should be able to parse and transform comments FAILED
/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4588:53
forEach@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:322:24
loadModules@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4548:12
createInjector@/Users/ipozdnya/matchminer-ui/bower_components/angular/angular.js:4470:30
workFn@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2954:60
inject@/Users/ipozdnya/matchminer-ui/bower_components/angular-mocks/angular-mocks.js:2934:46
/Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js:24:9
TypeError: undefined is not a constructor (evaluating 'filter('parsecomments')') in /Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js (line 95)
/Users/ipozdnya/matchminer-ui/app/scripts/components/utilities/utilities.filters.spec.js:95:29
PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 325 of 325 (325 FAILED) ERROR (2.171 secs / 0 secs)
[12:52:19] 'test' errored after 5.6 s
[12:52:19] Error: Failed 1 tests.
at /Users/ipozdnya/matchminer-ui/gulp/unit-tests.js:54:20
at removeAllListeners (/Users/ipozdnya/matchminer-ui/node_modules/karma/lib/server.js:336:7)
at Server. (/Users/ipozdnya/matchminer-ui/node_modules/karma/lib/server.js:347:9)
at Object.onceWrapper (events.js:273:13)
at Server.emit (events.js:187:15)
at emitCloseNT (net.js:1618:8)
at process._tickCallback (internal/process/next_tick.js:63:19)
After cloning and building matchminer-ui once I run gulp server the web server starts successfully on port 8001. However, there is an error in the server output, most likely some required configuration is missing:
host011:/Users/ipozdnya/matchminer-ui$ gulp serve
[18:25:56] Using gulpfile ~/matchminer-ui/gulpfile.js
[18:25:56] Starting 'config'...
[18:25:56] Starting 'load-templates'...
[18:25:56] Starting 'scripts'...
[18:25:57] Starting 'styles'...
[18:25:58] Finished 'load-templates' after 1.68 s
[18:25:58] Finished 'config' after 1.7 s
[18:25:58] gulp-inject 34 files into matchminer.less.
[18:25:59] Finished 'styles' after 2.61 s
[18:26:01] all files 543.28 kB
[18:26:01] Finished 'scripts' after 4.16 s
[18:26:01] Starting 'inject'...
[18:26:01] gulp-inject 1 files into index.html.
[18:26:01] gulp-inject 92 files into index.html.
[18:26:01] Finished 'inject' after 424 ms
[18:26:01] Starting 'watch'...
[18:26:01] Finished 'watch' after 278 ms
[18:26:01] Starting 'serve'...
[HPM] Proxy created: /api -> http://localhost:5555
[HPM] Subscribed to http-proxy events: [ 'error', 'close' ]
[HPM] Proxy created: /elasticsearch -> http://localhost:9200
[HPM] Proxy rewrite rule created: "^/elasticsearch" ~> ""
[HPM] Subscribed to http-proxy events: [ 'error', 'close' ]
[18:26:01] Finished 'serve' after 80 ms
[BrowserSync SPA] Running...
[Browsersync] Access URLs:
---------------------------------------
Local: http://localhost:8001/
External: http://146.247.18.11:8001/
---------------------------------------
UI: http://localhost:3001
UI External: http://localhost:3001
---------------------------------------
[Browsersync] Serving files from: .tmp/serve
[Browsersync] Serving files from: app
[HPM] GET /api/user/577cf6ef2b9920002cef0337?cacheBuster=1546622763223 -> http://localhost:5555
TypeError [ERR_INVALID_PROTOCOL]: Protocol "http:" not supported. Expected "https:"
at new ClientRequest (_http_client.js:118:11)
at Object.request (http.js:41:10)
at Array.stream (/Users/ipozdnya/matchminer-ui/node_modules/http-proxy/lib/http-proxy/passes/web-incoming.js:111:74)
at ProxyServer.<anonymous> (/Users/ipozdnya/matchminer-ui/node_modules/http-proxy/lib/http-proxy/index.js:80:21)
at middleware (/Users/ipozdnya/matchminer-ui/node_modules/http-proxy-middleware/lib/index.js:43:19)
at call (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:239:7)
at next (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:183:5)
at middleware (/Users/ipozdnya/matchminer-ui/node_modules/http-proxy-middleware/lib/index.js:45:13)
at call (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:239:7)
at next (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:183:5)
at /Users/ipozdnya/matchminer-ui/node_modules/connect-modrewrite/index.js:129:7
at call (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:239:7)
at next (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:183:5)
at next (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:161:14)
at next (/Users/ipozdnya/matchminer-ui/node_modules/connect/index.js:161:14)
at respModifierMiddleware (/Users/ipozdnya/matchminer-ui/node_modules/resp-modifier/index.js:73:28)
[HPM] GET /api/user/577cf6ef2b9920002cef0337?cacheBuster=1546622763223 -> http://localhost:5555
Mac OS X El Capitan 10.11.6
After cloning tried to run docker build and got this:
(matchminer-ui) host011:~/matchminer-ui$ docker build - < Dockerfile
Sending build context to Docker daemon 2.56kB
Step 1/11 : FROM node:7-onbuild
7-onbuild: Pulling from library/node
ad74af05f5a2: Pull complete
2b032b8bbe8b: Pull complete
a9a5b35f6ead: Pull complete
3245b5a1c52c: Pull complete
afa075743392: Pull complete
9fb9f21641cd: Pull complete
3f40ad2666bc: Pull complete
49c0ed396b49: Pull complete
7af304825012: Pull complete
Digest: sha256:e506d4de7f21fc0cf51e2d2f922eb0349bd2c07f39dd6335e4338f92c9408994
Status: Downloaded newer image for node:7-onbuild
---> Running in f8af68cce253
Removing intermediate container f8af68cce253
---> Running in b6b414099107
Removing intermediate container b6b414099107
COPY failed: stat /var/lib/docker/tmp/docker-builder185737831/package.json: no such file or directory
This project requires gulp ^3.9.1
, which is not compatible with the latest version of node (v19) or anything after v11.
It would be great if the supported version of node is documented (Dockerfile uses v11), but there is no lts for v11.
The following node lts version seems to work:
lts/dubnium -> v10.24.1
Mac Os X El Capitan 10.11.6
conda 4.5.11
In a conda environment:
Manual build: after cloning and installing npm, bower, gulp, npm audit fix, etc I arrived to the steps
gulp test
and gulp serve
Both gave me the same error:
$ gulp test
gulp[77879]: ../src/node_contextify.cc:627:static void node::contextify::ContextifyScript::New(const FunctionCallbackInfo<v8::Value> &): Assertion `args[1]->IsString()' failed.
1: 0x100039393 node::Abort() [/usr/local/bin/node]
2: 0x10003849d node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, char const*, int, v8::Local<v8::Value>*, node::async_context) [/usr/local/bin/node]
3: 0x10005e5fc node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
4: 0x1001fd3e7 v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [/usr/local/bin/node]
5: 0x1001fc704 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<true>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/usr/local/bin/node]
6: 0x1001fc141 v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/usr/local/bin/node]
7: 0x96e1695c01d
8: 0x96e1690d145
9: 0x96e1698b900
10: 0x96e169118b5
11: 0x96e169118b5
Abort trap: 6
I've setup matchminer-api
on localhost:5000.
I loaded the test data (TCGA) into the monogdb based on https://matchminer.gitbook.io/matchminer/matchminer-api/development-setup
I then gulp serve
this matchminer-ui
website, which is configured to access the API at the correct URI of localhost:5000.
Through the web site served at localhost:8001, I can find a particular patient by MRN, e.g. "a4777":
mm-api | [INFO] 172.21.0.1 - - [21/Jan/2023 13:32:31] "GET /api/filter?cacheBuster=1674307951151&where=%7B%22TEAM_ID%22:%225a8ede8f4e0cce002dd5913c%22,%22temporary%22:false,%22status%22:%7B%22$in%22:%5B0,1%5D%7D%7D HTTP/1.1" 200 -
But when I clicked the action icon to go to patient record, the server logs
mm-api | [INFO] 172.21.0.1 - - [21/Jan/2023 13:37:43] "GET /api/utility/count_match?cacheBuster=1674308263499 HTTP/1.1" 200 -
while the web page just hangs, showing only "Loading patient details..." for several minutes with no progress.
Is there a particular schema that matchminer-ui
or matchminer-api
expects?
Does the provided test data follow this schema? If so, why does the web page fail to retrieve the fake/test patient record?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.