Skip to content
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

Issue258 remove owltools #259

Merged
merged 7 commits into from
Nov 9, 2019
Merged

Issue258 remove owltools #259

merged 7 commits into from
Nov 9, 2019

Conversation

goodb
Copy link
Contributor

@goodb goodb commented Nov 9, 2019

OWLTools is out. With the exception of a handful of classes I just copied into minerva-core. These can be found in the owltools.* package in minerva-core. If we get motivated we can do further cruft removal there and more general refactoring. The goal of this stage was just to get rid of the dependency and get us on track to move forward.

Based on all the junit tests in there and my own playing around running a local server I think we are good to go here. Its behaving in my hands exactly as before the surgery.

goodb added 7 commits November 6, 2019 10:42
Taking the strategy of copying in the required classes from owltools, getting things running, then refactoring the imported classes if/as needed.  Keeping package names the same so easy to find owltools code in the org.bbop packages.

minerva-core not compiling yet.
Very little actually needed.  Just about everything comes down to OWLGraphWrapper.

Left a skinned, non-functional OWLGraphWrapper shell containing only the methods needed somewhere in minerva.  Next step is to go back in and add them back.  Mostly trivial OWL-API sugar methods.
(notably passed all tests and successfully launched server.)
I believe everything is working.  All tests are passing. Server runs successfully locally.  Command line calls are all working the same way as before.  (With some minor changes to the WIP validation call.)

There are a few files copied over from OWLTools into minerva-core.  If we care we can dig through them and eliminate more cruft as we like.  They are easily found in the owltools packages in that project.
@kltm
Copy link
Member

kltm commented Nov 9, 2019

On dev, little damage to be done. Let's take it for a spin.

@kltm kltm merged commit 02052b6 into dev Nov 9, 2019
@goodb
Copy link
Contributor Author

goodb commented Nov 9, 2019

Heads up to @dustine32 and @dougli1sqrd that the command line interface for running owl/shex validation has changed slightly in this version. Both are now under one method and shex now depends exclusively on access to a go-lego ontology (just like the OWL validation). This will break the travis build for go_shapes as it stands (which is pointing to the dev branch here) (and was broken anyway because rdf.go doesn't have the latest tbox).

To run it, here is an example parameter set for invocation from minerva-cli.sh:
--validate-go-cams
--shex
-i ../gocamfolder/
-c ../catalog-v001-for-noctua.xml
-r ../test-shex-owl.txt
-e ../test-shex-owl-explanations.txt

Catalog is not required but is how you can control things if your setup doesn't have 32g of ram to run with the whole thing as it stands. (redirect to your own version of go-lego). r is the tab-delimited report, one line per model. e is a more verbose explanation of failures. --shex adds on the shex validation, without it, it will just to OWL consistency. -i can either be a folder of gocams or a blazegraph journal file.

Next week's work is to do 'neo-lite' and GOLR-based gene node typing so that the above (and other things) can run in a reasonable amount of time on lighter hardware. That should make it possible to use it in the go_shapes travis again as well as in the pipeline.

@goodb goodb deleted the issue258-remove-owltools branch November 13, 2019 18:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants