cinpla / expipe-browser Goto Github PK
View Code? Open in Web Editor NEWExperiment browser for the analysis pipeline
License: GNU General Public License v3.0
Experiment browser for the analysis pipeline
License: GNU General Public License v3.0
If you make modules with integer names firebase will recognize these as list
modules view to project, where you can add modules/templates that are relevant for all actions
might be that this is caused by every action having very many modules
ExperimentListEdit is used for subjects, experimenters and soon tags. It should have an optional pointer to a path in Firebase where suggested values are stored ("/subjects", "/users" and "/tags"). Values should be suggested based on keys found in these paths (or perhaps a certain value of each object, such as the full name of a user). If the value does not exist, it should be marked red and suggested as created.
possibility to delete templates
maybe with a warning/confirm window pop up? :)
currently it loads a bit slowly
Very quickly you drown in actions, then it is important to flag those actions that are interesting. The actual flagging can be done with a module. However it would be great if you can search for actions that contain a flag module.
Removed due to downgrade to Qt 5.6 instead of Qt 5.7+.
If you e.g. check "foo" in tags which have one hit, then you delete this tag from the respective action "foo" is still checked, but no longer visible.
As of now the hash for action logos are the action id, this might be user define i.e. possibility to retrieve hash from action type, experimenter, subjects etc.
There should be a tag field for actions, listed in the top row together with Experimenters, Subjects etc. In addition, a Tags view should be implemented, and made searchable in the actions view.
"where is the hierarchy?", "actions view looks messy when all sub categories are lumped together, e.g. action type, subjects, action id etc.", "confusing with searches if you just want to browse, or don't really know a priori what you look for."
wants to click on categories
when e.g. in an action, and you want to se the history of e.g. the respective subject, it would be nice to click on the subject. In general, when you are at the bottom of a hierarchical tree you want be able to click your way into different respective categories.
as of now it is hard to know where you are in the database - you feel a bit lost.
if you edit a module without pressing enter afterwords the module closes when pressing another key or similar.
(exbrowser) mikkel-HP-ProDesk-600-G2-MT@~$expipe-browser
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
Cache dir: /home/mikkel/.cache/Cinpla/Expipe Browser/network
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
put / OrderedDict([('ida_tracking', OrderedDict([('2017-01-23', OrderedDict([('location', OrderedDict([('gampræva', 'nordnorge')])), ('registered', 'today')]))])), ('mikkel_septum_entorhinal', OrderedDict([('1685-02011701', OrderedDict([('datetime', '2017-01-01'), ('location', '1234'), ('registered', 'today'), ('subjects', OrderedDict([('1685', True)])), ('type', 'experiment'), ('users', OrderedDict([('mikkel', True)]))])), ('1685-02011702', OrderedDict([('registered', 'today')])), ('1685-02011703', OrderedDict([('registered', 'today')]))]))])
qrc:/Experiment.qml:296:31: Unable to assign [undefined] to QString
Traceback (most recent call last):
File "/home/mikkel/apps/anaconda3/envs/exbrowser/lib/python3.5/site-packages/expipe_browser-0.0.0-py3.5.egg/EGG-INFO/scripts/expipe-browser", line 141, in processReadyRead
File "/home/mikkel/apps/anaconda3/envs/exbrowser/lib/python3.5/json/__init__.py", line 332, in loads
return cls(**kw).decode(s)
File "/home/mikkel/apps/anaconda3/envs/exbrowser/lib/python3.5/json/decoder.py", line 339, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/home/mikkel/apps/anaconda3/envs/exbrowser/lib/python3.5/json/decoder.py", line 355, in raw_decode
obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 12654 (char 12653)
Aborted (core dumped)
Cache dir: /home/mikkel/.cache/Cinpla/Expipe Browser/network
qrc:/ExperimentList.qml:274: Error: Cannot assign [undefined] to QString
libpng warning: iCCP: known incorrect sRGB profile
qrc:/Experiment.qml:296:31: Unable to assign [undefined] to QString
qml: ERROR: Missing name or value
qml: ERROR: Missing name or value
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
qml: ERROR: Missing name or value
qml: ERROR: Missing name or value
This should give warning.
when installing via python setup.py develop
one get
Traceback (most recent call last):
File "/home/mikkel/apps/anaconda3/envs/expipe/bin/expipe-browser", line 6, in <module>
exec(compile(open(__file__).read(), __file__, 'exec'))
File "/home/mikkel/apps/expipe-project/expipe-browser/bin/expipe-browser", line 23, in <module>
import expipebrowser.qml_qrc
ImportError: No module named 'expipebrowser.qml_qrc'
"error" : "Auth token is expired"
}
Aborted (core dumped)
There seems to be an issue with PyQt on Mac when loading the QtQuick.Controls module. We need to test the browser on Mac.
e.g. subject: 1704, search for 1704-210517-01, delete this action. Now 1704 is unchecked, however it's "filtering properties" is still on i.e. you only see 1704 subjects
It should be possible to set up Expipe's config.yaml from the GUI.
This error shows up when changing actions, but does not appear to cause any trouble:
qrc:/ExperimentList.qml:270: Error: Cannot assign [undefined] to QString
if you search for an action you cannot select the actions popping up in the search
Traceback (most recent call last):
File "/home/mikkel/apps/expipe-dev/expipe-browser/expipebrowser/main.py", line 225, in processReadyRead
self._partial_message = parse_event_stream(message, self.processEvent)
File "/home/mikkel/apps/expipe-dev/expipe-browser/expipebrowser/main.py", line 88, in parse_event_stream
process_event(event_name, event_data)
File "/home/mikkel/apps/expipe-dev/expipe-browser/expipebrowser/main.py", line 206, in processEvent
self.process_put(path, data)
File "/home/mikkel/apps/expipe-dev/expipe-browser/expipebrowser/main.py", line 161, in process_put
self.set_nested(path, data)
File "/home/mikkel/apps/expipe-dev/expipe-browser/expipebrowser/main.py", line 313, in set_nested
del(dic[idx])
KeyError: 3
Aborted (core dumped)
now we treat lists as {val: true, val2: true}
. To preserve position of values and not to flood the key with large contents we should change this behaviour to {1: val, 2: val2}
Filter check boxes ala finn.no
If the action_modules related to an action are not properly deleted it might result in errors if overwriting the action.
This may cause a problem if a user changes the list of modules for a certain template.
This can be fixed in main by using ==
in stead of in
I'm picturing a page with simple hook off buttons, drop down alternatives and browse for files etc.
Project info can contain e.g.
When using the multifilter in actions on a windows machine, the filter works fine, however the highlighting is only visible on one box at a time.
This would probably be solved when we switch to checkboxes.
This only happens on some occasions
This error shows up while editing modules:
qrc:/DictionaryEditor.qml:175: TypeError: Cannot write property of null
Doesn't appear to cause any damage, but should be fixed.
When building new templates it would be nice to start from an old one
To organize the actions list a bit more, maybe it would be nice to to have a small title and a frame for all the types, e.g.
recording1
recording2
...
surgery1
...
There seems to be an issue with loading modules on project when there are many modules to load
It would be great to be able to define which fields in an action and its modules where the user can fill in optional or required information. Preferably with a red marker or similar.
It would be nice if a project could be 'owned' by a user with read/write permission and only be read-only for other users.
It would be nice to be able to make a new template based on an existing template.
The module section in actions view can be split into multiple sections where the user can define which modules that are supposed to be in which section by type setting the particular module. Example would be notes, where the user want this module to be on top of the module list and maybe in a different view than the rest of the modules.
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.