-
Notifications
You must be signed in to change notification settings - Fork 3
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
tiledbsoma 1.11.2 #157
tiledbsoma 1.11.2 #157
Conversation
Surprisingly the osx-* builds passed but the linux-64 Python builds failed to obtain the version in this setup where
Here's the traceback: File "/home/conda/feedstock_root/build_artifacts/tiledbsoma_1716331838735/work/apis/python/version.py", line 275, in get_version
version = get_git_version()
^^^^^^^^^^^^^^^^^
File "/home/conda/feedstock_root/build_artifacts/tiledbsoma_1716331838735/work/apis/python/version.py", line 223, in get_git_version
latest_tag = get_latest_remote_tag(remote)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/conda/feedstock_root/build_artifacts/tiledbsoma_1716331838735/work/apis/python/version.py", line 133, in get_latest_remote_tag
raise RuntimeError(f"No tags found in remote {remote}")
RuntimeError: No tags found in remote origin
error: subprocess-exited-with-error This error is surprising given the recent updates to build from an sdist that led to closing single-cell-data/TileDB-SOMA#2588 |
@jdblischak @ryan-williams I think this may be involved:
|
I was able to build it locally from the 1.11.2 GitHub release tarball using Python 3.9: mamba create --yes -n test-soma python=3.9 pip
mamba activate test-soma
wget https://github.com/single-cell-data/TileDB-SOMA/archive/refs/tags/1.11.2.tar.gz
tar xzf 1.11.2.tar.gz
cd TileDB-SOMA-1.11.2/
git status
## fatal: not a git repository (or any of the parent directories): .git
cd apis/python/
echo "1.11.2" >> RELEASE-VERSION
python -m pip install . -vv This of course isn't identical to the conda build setup (since I didn't pre-install libtiledb or libtiledbsoma), but I don't think that should affect the logic of |
@jdblischak I'm not aware that I'm doing any preventing -- am I doing something wrong that I'm not aware of? Am I doing something right that I'm not aware of? |
My only guess was that maybe you edited
If my above guess is wrong, then don't change anything! :-) You might have a slightly older conda-smithy installed locally, but we don't want those Python 3.12 variants anyways. |
@@ -19,11 +19,13 @@ package: | |||
source: | |||
url: https://github.com/single-cell-data/TileDB-SOMA/archive/{{ version }}.tar.gz | |||
sha256: {{ sha256 }} | |||
patches: # [osx and not arm64] | |||
- 0001-version-py-workaround-1-11-2.patch | |||
|
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.
A few notes:
- I think we should apply the patch to all the builds. We know code will be in the next release, so we may as well test it now
- I don't think the Jinja2 preprocessing selectors are that smart. I think you have to apply it to each line you want to remove
- The
version.py
issues are with the linux-64 builds, so if we are going to selectively apply the patch, I think we would use# [linux]
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 think we should apply the patch to all the builds. We know code will be in the next release, so we may as well test it now
Sorry, I lack your expersite -- how am I not? What am I doing wrong?
I don't think the Jinja2 preprocessing selectors are that smart
Here too -- where is Jinja involved here?
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.
we would use # [linux]
This one I think I understand -- mindless copypasta from my recent work on r-tiledb-feedstock
-- I'll update ...
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.
c51fec9
🤞
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.
Here too -- where is Jinja involved here?
The preprocessing selectors like [linux]
and [osx and not arm64]
are processed by the Python package jinja2. If the variable is true, the line is kept. If the variable is false, the line is removed from the recipe.
My first suggestion was to remove all of the selectors from the patch, so that the patch would be applied to all of the builds. You implemented my other suggestion, which was to use # [linux]
. This is fine since it applies the patch only to the linux builds, which is what we need for green CI.
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.
OK thanks @jdblischak ... as always I creep slowly in the direction of understanding when it comes to Conda ... 🤞
Previous build seems to have failed with:
The SHA parts match, but the right side contains an extra |
@ryan-williams See my comment above, #157 (comment), about jinja2 not being that smart. This confirms my understanding. It has no understanding of the YAML sections, but is simply applied line by line. So what happened was that the field |
For my future reference: this means operationally: if some yaml file has
this is not good -- such lines need to be like
where the |
Post-merge CI link FYI: |
... success!! :) Now I'll monitor https://anaconda.org/tiledb/libtiledbsoma/labels to verify in the next hour or two that 1.11.2 artifacts arrive. This will prove we've gotten the artifact-creation issue from this release, confined to this release. |
Following our established procedure