-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor PURL system scripts #494
Refactor PURL system scripts #494
Conversation
…he Makefile logic as well as some or all of the existing python scripts
…st rather than failing
…receipe steps in there for now, though)
…files case-insensitively, longer names first (to ensure no regex conflicts)
Some project files have been changed since the refactoring work began. To properly test that the refactoring does not break anything we need to have these changes in the branch.
… remove empty example_terms and entries arrays from dpo.yml and xao.yml
See #105 "Code review". |
I compared the output of branch with the output (And I'd appreciate a few more pairs of eyeballs on this. Volunteers? |
On review, this is a large change to code I am unfamiliar with; nothing seems obviously wrong, but I would be unlikely to be able to catch mistakes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As #494 (comment)
There can always be rollbacks if there are issues.
I ran
Can these be removed or are these important messages? It seems fine to allow file extensions other than OWL and OBO... I tested some terms and products from different ontologies and it all looks like it's working like it's supposed to! It's also MUCH faster than the old system (in terms of running the tests and starting the system) |
After triple checking everything, I just merged this an manually updated the PURL server. Automated tests are passing. I did some manual tests and everything seemed to work. @OBOFoundry/purl-admin If you notice anything weird, let me know! |
As part of the OBO Technical Services Grant, I've asked @lmcmicu to refactor the scripts for the PURL system. Goals: simplify the code to reduce long-term maintenance burden and expand the number of potential maintainers; improve build performance. Changes:
translate_*.py
scripts have been combined into a singletranslate_yaml.py
script.translate_yaml.py
runs against theconfig
directory, instead of calling three scripts against every config file. I think this is simpler, and performance is much better.kwalify
in favour ofjsonschema
intranslate_yaml.py
.travis
CLI client in favour ofsafe-update.py
script (basic REST API calls).ruby
dependency.Makefile
(prefer Python for tricky bits).This is critical code, so we want to be careful. I reviewed the code and ran the test suite. I'm going to spend more time convincing myself that the resulting
.htaccess
files are equivalent. Then I'll ask for other devs to review.