You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To get rid of PathMixin and RepositoryApiMixin move the following properties to the config class from #3081 and use the config dispatcher where they are needed.
RepositoryApiMixin.renku_home
RepositoryApiMixin.renku_path
RepositoryApiMixin.parent
RepositoryApiMixin.data_dir
RepositoryApiMixin.docker_path
RepositoryApiMixin.template_checksums
RepositoryApiMixin.database_path
In addition, LOCK_SUFFIX, DATABASE_PATH, DOCKERFILE, TEMPLATE_CHECKSUMS, RENKU_PROTECTED_PATHS and DATABASE_METADATA_PATHshould just be module level constants in renku/core/constant.py.
We should remove attrs and replace it with proper __init__.
with_metadata should be a ProjectContext (or similar) context manager. is_project_set can be removed, as it's only used in one place and essentially useless. RepositoryApiMixin.project should be removed as well in favor of using the IProjectGateway directly. transaction_id can probably be moved to Repository.
All the methods should be normal business logic methods, unless they really need to be on a class.
The locks can be added to the lock class from #3082 that also gets injected.
To get rid of
PathMixin
andRepositoryApiMixin
move the following properties to the config class from #3081 and use the config dispatcher where they are needed.In addition,
LOCK_SUFFIX
,DATABASE_PATH
,DOCKERFILE
,TEMPLATE_CHECKSUMS
,RENKU_PROTECTED_PATHS
andDATABASE_METADATA_PATH
should just be module level constants inrenku/core/constant.py
.We should remove
attrs
and replace it with proper__init__
.with_metadata
should be aProjectContext
(or similar) context manager.is_project_set
can be removed, as it's only used in one place and essentially useless.RepositoryApiMixin.project
should be removed as well in favor of using the IProjectGateway directly.transaction_id
can probably be moved toRepository
.All the methods should be normal business logic methods, unless they really need to be on a class.
The locks can be added to the lock class from #3082 that also gets injected.
blocked by #3081
The text was updated successfully, but these errors were encountered: