-
Notifications
You must be signed in to change notification settings - Fork 1
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
move pyiron_ontology to standalone table #2
Conversation
Dependencies are all pinned properly with daily CI runs working fine; coverage is 95%; readthedocs is up and running. The dependencies are only numpy, owlready2, pandas, and pint, so I think "standalone" make sense.
@@ -29,6 +29,7 @@ To increase the maintainability of the `pyiron` project, there is a continuous r | |||
| [atomistics](https://github.com/pyiron/atomistics) | Interfaces for atomistic simulation codes and workflows | [![Coverage Status](https://coveralls.io/repos/github/pyiron/atomistics/badge.svg?branch=main)](https://coveralls.io/github/pyiron/atomistics?branch=main) | [:books:](https://atomistics.readthedocs.io) | [:package:](https://anaconda.org/conda-forge/atomistics) | | |||
| [pyfileindex](https://github.com/pyiron/pyfileindex) | Pythonic file system index | [![Coverage Status](https://coveralls.io/repos/github/pyiron/pyfileindex/badge.svg?branch=main)](https://coveralls.io/github/pyiron/pyfileindex?branch=main) | | [:package:](https://anaconda.org/conda-forge/pyfileindex) | | |||
| [pyiron_lammps](https://github.com/pyiron/pyiron_lammps) | Vector-oriented LAMMPS interface to rapidly iterate over series of atomistic structures or interatomic potentials. | [![Coverage Status](https://coveralls.io/repos/github/pyiron/pyiron_lammps/badge.svg?branch=main)](https://coveralls.io/github/pyiron/pyiron_lammps?branch=main) | | [:package:](https://anaconda.org/conda-forge/pyiron_lammps) | | |||
| [pyiron_ontology](https://github.com/pyiron/pyiron_ontology) | Leveraging ontologies for dynamic typing and guided workflow design | [![Coverage Status](https://coveralls.io/repos/github/pyiron/pyiron_ontology/badge.svg?branch=main)](https://coveralls.io/github/pyiron/pyiron_ontology?branch=main) | [:books:](https://pyiron-ontology.readthedocs.io) | [:package:](https://anaconda.org/conda-forge/pyiron_ontology) | |
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.
I currently do not see that pyiron_ontology
fits for:
there is a continuous release of spin-off packages which are used inside
pyiron
, but which can also be used as stand-alone packages
I would rather move it to the Stable Version
section just like pyiron_contrib
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.
Thinking about this a bit more the Stable Version
is most likely also not the right category. I guess my biggest issue is currently that I do not see how pyiron_ontology
is currently used or how it is going to be used in future.
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.
I currently do not see that
pyiron_ontology
fits for:there is a continuous release of spin-off packages which are used inside
pyiron
, but which can also be used as stand-alone packages
If this objection is something beyond your second comment about where/how it is used, please expand; I don't see how pyiron_ontology
fails to fit this description.
Thinking about this a bit more the
Stable Version
is most likely also not the right category.
I agree; those packages (ex.-base) are all domain specific, depend on pyiron_base
(afaik), and have some corpus of data associated with them. Those criteria aren't explicitly listed in the header, but I agree pyiron_ontology
does not fit in well.
I guess my biggest issue is currently that I do not see how pyiron_ontology is currently used or how it is going to be used in future.
The first clause is extremely straightforward: pyiron_ontology
is already used in ironflow
. In the example below (also demo'd on the ironflow
landing page) it is leveraged to provide both the dynamic (i.e. use-based) typing that controls whether connections are allowed, and the node recommendation system, which is powered by the the same functionality as the "workflow tree" example in the pyiron_ontology
docs:
As for future use, of course that's harder to nail down. @JNmpi has requested and I fully agree that pyiron_workflow
should get extended with ontological typing (ala ironflow
). In the course of doing that I would expect to make changes to pyiron_ontology
-- possibly even significant ones -- but since it's already working and has demonstrated applicability to the problem, it's the logical place to start for that functionality.
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.
The first clause is extremely straightforward:
pyiron_ontology
is already used inironflow
.
But then I do not understand why you do not want to keep it in Next Generation Developments
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.
Because it is a small, standalone tool that I can see being useful to other projects that want to exploit dynamic typing or workflow-tree constructions. I.e. I see it as a standalone tool, and not something that is intrinsically or exclusively for use with other pyiron modules
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.
From my perspective pyiron_ontology
is a library for the packages in Next Generation Developments
- mainly ironflow
as you explained above. In contrast to this, the packages in Stand-alone Packages
are libraries for the current stable version
and the new developments. Therefore pyiron_ontology
belongs to Next Generation Developments
.
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.
From my perspective
pyiron_ontology
is a library for the packages inNext Generation Developments
- mainlyironflow
as you explained above.
For me this is a bit of a chicken-and-egg issue; the library (afaik) is currently only leveraged by ironflow
, but it is fully standalone and can be leveraged in non-pyiron projects just as well. Moving it to the Stand alone
table makes this generic usability clear and raises visibility.
In contrast to this, the packages in
Stand-alone Packages
are libraries for the currentstable version
and the new developments. Thereforepyiron_ontology
belongs toNext Generation Developments
.
IMO this is an overly restrictive interpretation of "used in pyiron
" that overrides the more important section-header description of "Stand alone".
If we do choose to apply this more restrictive interpretation, I suppose pyiron_lammps
then also needs to be moved to another section.
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.
If we do choose to apply this more restrictive interpretation, I suppose
pyiron_lammps
then also needs to be moved to another section.
That's a good suggestion - I am happy to move pyiron_lammps
to Next Generation Developments
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.
If we do choose to apply this more restrictive interpretation, I suppose
pyiron_lammps
then also needs to be moved to another section.That's a good suggestion - I am happy to move
pyiron_lammps
toNext Generation Developments
🤦♂️ while I appreciate the internal consistency, that wasn't my main point. IMO ironflow
should be in Next Generation Developments
because it is a proof-of-concept in scope and, importantly, not receiving active dependency updates; pyiron_workflow
should be in Next Generation Developments
because it is feature-incomplete (storage is not merged, database interactions are non-existent).
In contrast, pyiron_lammps
and pyiron_ontology
are both feature-complete, stable, and useable as-is. Stand alone
is quite a sensible place for both.
(As an aside, pyiron_gui
can probably be over in Stable
as well, although it's possible @niklassiemer has some feature incompleteness concerns he wants to address first, similar to my feelings on pyiron_workflow
).
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.
I guess we should discuss this topic in the next pyiron meeting, as I feel it is a more fundamental discussion how we want to define the categories on the GitHub overview page.
As discussed in the pyiron meeting, we agreed to move |
Dependencies are all pinned properly with daily CI runs working fine; coverage is 95%; readthedocs is up and running.
The dependencies are only numpy, owlready2, pandas, and pint, so I think "standalone" make sense.