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

Change all AlchemiscaleClient methods to use retrieve_* instead of get_* if they return GufeTokenizables #348

Open
dotsdl opened this issue Jan 7, 2025 · 0 comments

Comments

@dotsdl
Copy link
Member

dotsdl commented Jan 7, 2025

It's currently the case that the AlchemiscaleClient has many get_* methods that either return ScopedKeys, GufeTokenizables, lists or dicts of these, or primitive types (such as ints for weights). However, those methods that return GufeTokenizables are often slower due to the higher complexity of these objects, and these objects often cannot be used to refer to other objects in the server, as ScopedKeys can.

To distinguish methods that return GufeTokenizables from those that do not, we propose changing all such methods to start with retrieve_* instead of get_*.

This will enable us to distinguish between methods like get_task_results that should give ScopedKeys for ProtocolDAGResultRefs, and retrieve_task_results, which should return ProtocolDAGResults. The former method could be used for further introspection, such as retrieving execution logs, provenance, STDERR, STDOUT, or result files, while the latter would yield the result objects themselves.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant