Giter Site home page Giter Site logo

dfci / matchminer-ui Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 10.0 1.21 MB

A platform for matching patient-specific genomic profiles to precision cancer medicine clinical trials

Home Page: https://matchminer.org/

License: Other

HTML 37.78% JavaScript 54.41% Less 7.69% Dockerfile 0.06% Shell 0.06%

matchminer-ui's People

Contributors

jasonhansel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

matchminer-ui's Issues

gulp test returns 325 error from PhantomJS

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)

gulp serve: complain about Protocol "http:" not supported

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

docker build fails

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

Executing 5 build triggers

---> 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

Required node version is not documented

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

Abort trap: 6

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

Display of patient record hangs

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?

500 Errors

After I built up matchminer-ui and matchminer-api instances, the ui instance has errors below in Network tab of console. Could you give me any suggestions? Thanks!

screen shot 2018-07-02 at 2 54 11 pm

screen shot 2018-07-02 at 2 54 32 pm

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.