pyontutils
pyontutils copied to clipboard
decouple external resource dependent code
There are many scripts that depend on resources and other repos and on being in a git repo which need to be separated from the core so that they can be tested independently. They should be distributed, but they need to be logically separate.
The simplest way to start is to split out all the flask and sqlalchemy dependent parts of the code into a services package.
A more radical approach is to break the pyontutils folder into a number of smaller packages for easier distribution. Some potential names.
-
[x]
htmlfn
I use htmlfun in a number of places, also worth considering breaking the css bits into actual css files, this may not need to be packaged independently, but it would certainly simplify dependencies for a bunch of my other projects -
[x]
ttltools
akattlser
orttlformat
-
[ ]
scigraph
client codegen etc. possibly moved to ontquery to avoid a build time dependency -
[x]
neuron lang
breaking this out will provide more clarity on how to decouple core need to see how easy it will be to extricate this -
[ ]
pyontutils
everything else that does not depend on devconfig? The things below could be broken out but would still depend on core so it may not make sense to package these all independently.ontutils
and friendsscigraph utils
ontload
~scigraph-deploy
~ patch loading etc. -
[x] ontology generation code that requires external resources
methods
this one is a bit of an abomination at the moment since it doesn't roundtripparcellation
makes use of the ontology generation code in core and depends on it -
[x]
nifstd services
forontree
etc. these are the flask dependent things
This bit is more or less complete. scigraph-codegen
has not been broken into its own repo, and methods and parcellation are in nifstd-tools
, but not packaged due to the fact that they expect to be run from inside a git repository. pyontutils
retains the files mentioned in its section, however, things like OntRes
may make more sense in idlib than anywhere else.