Giter Club home page Giter Club logo

Comments (4)

ltalirz avatar ltalirz commented on June 23, 2024

@csadorf can you point me to where this should be fixed? this looks quite straightforward

from aiidalab.

csadorf avatar csadorf commented on June 23, 2024

@ltalirz You would probably want to start here:

aiidalab/aiidalab/app.py

Lines 85 to 88 in 77fed76

if registry_entry is None:
registry_entry = load_app_registry_entry(app_id) or dict(
name=app_id, metadata=dict()
)

One thing to look out for is how to handle releases in that case, because they must be come from the registry. So in that case we would simply have no releases available. That's fine, but just something to look out and test for.

from aiidalab.

csadorf avatar csadorf commented on June 23, 2024

@ltalirz Furthermore, app metadata is defined through the registry, similar to how PyPI stores metadata about a package. So simply sourcing it from the repository breaks a lot of assumptions. So I would like to caution a little bit about considering this straightforward.

from aiidalab.

csadorf avatar csadorf commented on June 23, 2024

As an additional comment on this issue. In the latest revision of the registry, we removed the assumption that an app must have a "metadata.json" file, instead the metadata could be directly declared as part of the registry entry. That may have been a bit short-sighted, but one motivation was to generalize the registry concept and also allow for the registration of codes that may not necessarily have a public code repository associated with it. This would allow us to use the registry in contexts other than AiiDAlab. Apps can still reference a metadata file hosted as part of the app source code using the $ref keyword, see the registry README for details.

Obviously, this was maybe a bit short-sighted when it comes to this particular issue. I suggest that as a stop-gap measure to streamline the installation of apps without registry entry, we either (A) remove the requirement that apps have any metadata at all and make sure that the home app does not complain about this, or (B) fallback to parsing the metadata file from the setup.cfg or local metadata file after all (the exact search path would actually be [.aiidalab/][metadata.[y[a]ml|json]). For solution (B) we would then have to re-define the metadata declared as part of the registry simply as a "default" or "override" to maintain backwards-compatibility.

from aiidalab.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.