regro / regolith Goto Github PK
View Code? Open in Web Editor NEWResearch Group Content Managment System
Home Page: http://regro.github.io/regolith-docs/
License: Other
Research Group Content Managment System
Home Page: http://regro.github.io/regolith-docs/
License: Other
It seems that ingest citations writes a bunch of {'$set': 'bla'}
stuff into the db which breaks the author checking. Is the '$set'
stuff intentional?
It might be nice to include the arg parse information in a dict. This way to add a command we just update the dict
It might be nice to have a JSON Schema for the dbs. (this is related to the validation stuff)
This may need to go somewhere else, but it seems that the citations don't have their latex math rendered.
How do we fix that?
AKA my first time with regolith
It's ok to include work that one edited
Some people may have a couple of affiliations. This will be helpful if we use this in conjunction with rever to template/release papers.
It might be nice to have each project on the project webpage to track the publications/software releases that are associated with the project. Should we keep track of the publication ids in the project or the project in the publication?
loading _build/_dbs/ergs-public/db/blog.yaml...
loading _build/_dbs/ergs-public/db/citations.yaml...
loading _build/_dbs/ergs-public/db/grants.yaml...
loading _build/_dbs/ergs-public/db/jobs.yaml...
loading _build/_dbs/ergs-public/db/news.yaml...
loading _build/_dbs/ergs-public/db/people.yaml...
loading _build/_dbs/ergs-public/db/projects.yaml...
dumping jobs...
Traceback (most recent call last):
File "/Users/aaronmeurer/anaconda3/bin/regolith", line 3, in <module>
main()
File "/Users/aaronmeurer/Documents/regolith/regolith/main.py", line 184, in main
CONNECTED_COMMANDS[rc.cmd](rc)
File "/Users/aaronmeurer/anaconda3/lib/python3.5/contextlib.py", line 66, in __exit__
next(self.gen)
File "/Users/aaronmeurer/Documents/regolith/regolith/database.py", line 126, in connect
dump_database(db, client, rc)
File "/Users/aaronmeurer/Documents/regolith/regolith/database.py", line 111, in dump_database
dump_git_database(db, client, rc)
File "/Users/aaronmeurer/Documents/regolith/regolith/database.py", line 74, in dump_git_database
to_add = client.dump_database(db)
File "/Users/aaronmeurer/Documents/regolith/regolith/fsclient.py", line 142, in dump_database
filename = self.dump_yaml(collection, collname, dbpath)
File "/Users/aaronmeurer/Documents/regolith/regolith/fsclient.py", line 127, in dump_yaml
dump_yaml(f, docs, inst=inst)
File "/Users/aaronmeurer/Documents/regolith/regolith/fsclient.py", line 50, in dump_yaml
inst.indent(mapping=2, sequence=4, offset=2)
TypeError: 'NoneType' object is not callable
Attn: @sbillinge
This may never happen in production (only because of some git trickery by Chris?) but I am recording it here for full disclosure.
tried to run regolith app in my rg-db-private repo and got this:
failing with a git error, but git status shows everything is clean.
Chris tells me I need to run git in _build/_dbs/billingegroup_private
(not obvious to the casual user)
indeed find some uncommitted things in there which I commit and push
push fails because I am behind, so try and pull, but have conflicts.
resolve conflicts and commit.
All in all, I don't think it is a bug (a feature maybe?) but I am putting it here as a potential thing that may crop up for other users......though I can't quite imagine how.
It would be nice to have some hooks to/from rever.
Examples:
When running interactively (or with builders which use both the public and private dbs) it may be nice to be able to combine similarly named dbs with the same _id
. Eg a public project entry may have some information but the private entry keeps track of accounting, ongoing work, etc. but when we go to build an internal report we want both dbs to be accessed together.
This will require changing of the resume/cv builder or template to properly understand that service can either have a single occurrence or a start and stop.
It may be helpful to go through a few use cases/best practices in the docs to get everyone up to speed:
Traceback (most recent call last):
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/app.py", line 1982, in wsgi_app
response = self.full_dispatch_request()
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/app.py", line 1614, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/app.py", line 1517, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/home/christopher/mc/envs/dp_dev/lib/python3.5/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/christopher/dev/regolith/regolith/app.py", line 53, in collection_page
coll.save(body)
AttributeError: 'dict' object has no attribute 'save'
Have an import for running interactively in ipython
ie setup.py still lists 0.1.2, even though we are on 0.1.5
Have pity on poor Travis (and those that maintain the sacred yml
).
It might be nice to have something somewhere (in the rc?) that specifies which pages/methods get run since not every group will have/want all the page types.
My browser shows white on white.
http://www.ergs.sc.edu/regolith-docs/rc.html
If the user tries to put in bad json, then when the page is re-loaded then all their work is gone. This is rather nasty as they could have put a lot of work into their entry. Maybe we can reload the existing string? This may also be helped by moving to yml
Maybe have a dict of these kinds of external keys?
Oops ๐
It may be nice to be able to track a project (potentially privately, or with public/private chunks).
Eg. Track on a given project
At the very least it may be beneficial to track all the papers associated with a public project.
How do we handle current and former members?
The command would run schema validation against all databases in the RC. (This could be helpful as a git hook pre-commit for commits to dbs.)
It may be nice to have the ability to override parts of the schema in the RC.
In addition to making certain that the combined DBs pass some validation, it may be helpful to have validation on a per db basis.
It might be nice to have integration tests.
These tests might include having a fake research group which we run tests against. This way we can make sure that we don't break anything major when PRing.
Track the collaberators
It would be nice if people's preferred pronouns appeared on their page and CV.
This is distinct from a CV
It seems a couple of things are shared between the CV and pub list builders. I imagine other things that write to latex templates would want those things as well.
It might be nice to track all the conda-forge/pypi packages managed by a research group, since packaging is an important piece of getting software to users. It may also help to show the large impact that software group's packaging has on the community.
Can we just inherit from dict for the RunControl
class?
It would be nice to have a link to the collection schema (if it exists) in the app page for that collection. This way if you needed to remember what the schema was, just go look at it!
Need to edit the CV builder/template to include a service section.
It seems that on windows YAML tries to load the yaml files with cp1252 encoding, which causes breakage
It may be nice to actually generate the index.html
and base.html
pages for the website.
Currently index.html
is used by the app.
This may also help with #1
It might be nice to test the app (especially as most people probs, don't want to deal with everything manually)
Flask already checks for valid json, it would be good to check it against the schema as well.
Any interest in sub projects? The idea that each project could have various sub projects where each sub projects roughly maps to one repo. This would allow us to put release info and badges on the project page.
How is sensitive data handled?
Is there a password protected section of the website?
It might be nice to have some templating for grant reports. It might not get everything, but it would get some of the important info (eg published deliverables in the reporting period)
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.