-
Notifications
You must be signed in to change notification settings - Fork 39
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
The latest mxcubeweb is never tested against the latest mxcubecore #1371
Comments
Examples of issues that might have been detected: |
How about using |
Would not change anything because it is still the version pinned in |
Saw this recently: https://docs.astral.sh/uv/concepts/workspaces/ — not a drop-in solution, obviously... |
Indeed, it would mean that we have to re-generate |
There is a lot of aspects to consider in this topic. I do not believe there is one quick and easy solution. I also do not believe that we need to aim for perfect airtight solution. I believe maybe we can minimize such issues by doing some careful changes in tooling and process. Anyway, one aspect of this, is that in principle, for each tagged version in CORE we should check that it does not break WEB. If it breaks WEB, then this version of CORE should be excluded from the valid dependencies range.
Yes, something along those lines would probably help. This is probably a very good ratio effort vs. value. Maybe important is to decide what we want to achieve, what rules are we setting for ourselves. Do we want to set as a policy that latest tagged WEB should work with latest tagged CORE? Or something else?
Yes, maybe that could help. But I would be careful about those new Python dev workflow tools (uv, rye, hatch, pdm, and so on), they are all somewhat new and have lots of breaking changes. I feel like Poetry is just now finally stable enough for a long enough time : D |
One approach would be to always test against current web and current core versions. If you are making changes in tandem you might want to specify a specific version combination but otherwise, if current web does not match current core then surely there is something wrong? |
I'm pretty sure it's possible to trigger workflows across repositories. Let's dream big:
|
@rhfogh: Yes indeed current web should always work with latest core. |
@axelboc: yes thats a nice idea :) seems like a reasonable and doable test |
The way our GitHub Actions workflows (CI pipelines) are setup the latest mxcubeweb is tested against the currently pinned version of mxcubecore.
This leads to incompatibility issues between mxcubecore and mxcubeweb to remain undetected for some time...
See this line, where it shows that we install with Poetry which means the
poetry.lock
file is taken into account and it is the pinned version of mxcubecore that is installed for the tests:mxcubeweb/.github/workflows/build_and_test.yml
Line 53 in e0b3ab7
Here in mxcubeweb, the currently pinned version of mxcubecore is
1.133.0
:mxcubeweb/poetry.lock
Lines 1750 to 1759 in e0b3ab7
The current latest tagged version of mxcubecore is
1.142.0
:https://github.com/mxcube/mxcubecore/blob/61b7828cac708f17b4039ebd3a0632c477a1ace4/pyproject.toml#L3
So currently the mxcubeweb CI pipelines test against a quite outdated version of mxcubecore.
Maybe we should look into this, investigate how bad the damage could be, think of processes and technical solutions to minimize undetected issues.
The text was updated successfully, but these errors were encountered: