Skip to content

PKG-15601 — align python-feedstock with conda-forge - #256

Open
skupr-anaconda wants to merge 2 commits into
masterfrom
PKG-15601-cf-align
Open

skupr-anaconda wants to merge 2 commits into
masterfrom
PKG-15601-cf-align

Conversation

@skupr-anaconda

@skupr-anaconda skupr-anaconda commented Sep 4, 2026

Copy link
Copy Markdown

Destination channel: ad-testing/label/py315

Links

Explanation of changes:

Reconstructed on origin/master after #257 merged. Discarded conflict merge 2a733207 (stray {% endif %} after sha256 broke PBP generate).

  • Free-threading CBC: gil_typefreethreading / PY_FREETHREADING. Zero remaining gil_type / PY_GIL_DISABLED / from_source_control / bootstrap selectors.
  • Unix build_type release/debug (not zipped with channel_targets; all variants → testing py315). PKG-2624 stays a product spike, not a merge gate.
  • Split libpython*.so into libpython (install_shared.sh / install_static.sh). python does not install libpython*.so. SYSCONFIG from the shared build (CF LDLIBRARY is set to libpython3.9a although no static lib is included in mambaforge for Linux conda-forge/python-feedstock#565). ignore_run_exports_from cxx on libpython / libpython-static.
  • CF Add a libpython3.dylib to support ABI3 applications conda-forge/python-feedstock#885 already present (install_shared.sh sha 5dafbd13, osx libpython3.dylib reexport).
  • CF add run-export to libpython conda-forge/python-feedstock#928 added: libpython unix weak run_exports pin_subpackage("libpython", min_pin="x.x", max_pin="x").
  • Remaining CF topology: cpython noarch, python_site_packages_path, python-freethreading / python-gil / python-jit. Deleted unused build_static.sh / build_static.bat.
  • Win FT patches 0026 / 0030 wrapped in {% if freethreading == "yes" %} (not gil_type selectors).
  • Patch numbering matches master: 0028 conda-site.pth, 0029 zlib-ng, 0030 xxlimited.
  • Prefix-replacement tests match CF (case $PKG_NAME: static or shared). python asserts absence of libpython*.so/.dylib/.a.
  • Frozen AR-delta vs CF (do not take): tk 9.0.4 / -ltcl9tk / Win TclVersion=%tk% (not CF 8.6 %THREAD%); llvm-tools-21 + $HOST-llvm-arllvm-ar-21; omit _python_rc; dummy channel_targets (testing dest only); pinned aggregate host deps; msys2-gcc-libs; no binutils; downstreams commented; skip_compile_pyc skipped; license PSF-2.0; python-jit FT skip + run_test_jit.py; always apply 0023-branding.patch; keep 0029/0030; cmake-no-system / ninja-base / make; linux sysroot missing_dso whitelist.

Notes:

  • Upload dest stays ad-testing/label/py315. Do not merge to pkgs/main.
  • Linter: parsing_jinja_failure skipped (freethreading / dummy channel_targets jinja). Graph generate must succeed; linter skip may stay red.
  • python-jit is noarch; run_test_jit.py skips when the interpreter was built without JIT (debug / FT / non-x86_64).
  • Debug + release share the py315 label (F94); consumers must pin build string.

@package-build-platform

Copy link
Copy Markdown
Failed to submit graph for 2a73320

Message:
Failed to run command: 'pbp generate from-feedstock --output /tmp/tmpok_7aa4i/python-feedstock.yaml --custom-metadata-file /tmp/tmpok_7aa4i/custom_metadata.yaml --release-name python-feedstock-256-2a7332071849a403165047e14e19b21691553016 python-feedstock/recipe', with error: 'INFO:root:Found feedstock python-feedstock at /tmp/tmpok_7aa4i/python-feedstock/recipe
INFO:root:Build/Test graph from python-feedstock
Created by sbx_user1051 on 2026-09-21 08:17:48
Command line: /opt/conda/envs/webhook-listener/bin/pbp generate from-feedstock --output /tmp/tmpok_7aa4i/python-feedstock.yaml --custom-metadata-file /tmp/tmpok_7aa4i/custom_metadata.yaml --release-name python-feedstock-256-2a7332071849a403165047e14e19b21691553016 python-feedstock/recipe

INFO:root:Found abs.yaml in /tmp/tmpok_7aa4i/python-feedstock
INFO:pbpcli.utils.common:Setting env var: ANACONDA_ROCKET_ENABLE_PY315 = True.
INFO:root:Creating graph from feedstock at: python-feedstock
INFO:pbpcli.utils.common:Setting env var: CONDA_SUBDIR = linux-64.
INFO:pbpcli.utils.expand_variants:Elapsed time for get_package_variants: 0.11 seconds
INFO:pbpcli.utils.expand_variants:Matrix vars: 4 unchanging vars:(476), changing vars (4): ['blas_impl', 'build_type', 'cuda_compiler_version', 'freethreading']
INFO:pbpcli.utils.expand_variants:Elapsed time for preparation for render: 0.00 seconds
INFO:pbpcli.utils.common:Setting env var: CONDA_PKGS_DIRS = /tmp/conda_pkgs_47xiibgz.
INFO:pbpcli.utils.common:Unsetting env var: CONDA_PKGS_DIRS
INFO:pbpcli.utils.common:Unsetting env var: CONDA_SUBDIR
INFO:pbpcli.utils.common:Unsetting env var: ANACONDA_ROCKET_ENABLE_PY315
Traceback (most recent call last):
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/metadata.py", line 2087, in _get_contents
template = env.get_or_select_template(filename)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/environment.py", line 1087, in get_or_select_template
return self.get_template(template_name_or_list, parent, globals)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/environment.py", line 1016, in get_template
return self._load_template(name, globals)
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/environment.py", line 975, in _load_template
template = self.loader.load(self, name, self.make_globals(globals))
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/loaders.py", line 138, in load
code = environment.compile(source, name, filename)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/environment.py", line 771, in compile
self.handle_exception(source=source_hint)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/jinja2/environment.py", line 942, in handle_exception
raise rewrite_traceback_stack(source=source)
File "/tmp/tmpok_7aa4i/python-feedstock/recipe/meta.yaml", line 71, in template
{% endif %}
jinja2.exceptions.TemplateSyntaxError: Encountered unknown tag 'endif'.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/opt/conda/envs/webhook-listener/bin/pbp", line 10, in
sys.exit(cli())
~~~^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 1524, in call
return self.main(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 1445, in main
rv = self.invoke(ctx)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 1912, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 1912, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 1308, in invoke
return ctx.invoke(self.callback, **ctx.params)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/click/core.py", line 877, in invoke
return callback(*args, **kwargs)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/pbpcli/cli/generate.py", line 351, in wrapper
return func(*args, **kwargs)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/pbpcli/cli/generate.py", line 629, in from_feedstock
build_configs, test_configs = expand_build_matrix(
~~~~~~~~~~~~~~~~~~~^
feedstock.recipe_dir_path, src_channels, parsed_user_variants
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/pbpcli/cli/generate.py", line 99, in expand_build_matrix
_targets, build_configs, test_configs = variants_for_feedstock_and_platform(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
recipe_dir_path, platform, src_channels, user_variants
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/pbpcli/utils/expand_variants.py", line 672, in variants_for_feedstock_and_platform
metadata_tuples = api.render(
parsed.recipe,
...<2 lines>...
variants=user_variants,
)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/api.py", line 91, in render
metadata_tuples = render_recipe(
recipe_path,
...<4 lines>...
permit_unsatisfiable_variants=permit_unsatisfiable_variants,
)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/render.py", line 1082, in render_recipe
m = MetaData(str(recipe), config=config)
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/metadata.py", line 1240, in init
self.parse_again(permit_undefined_jinja=True, allow_no_other_outputs=True)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/metadata.py", line 1329, in parse_again
self._get_contents(
~~~~~~~~~~~~~~~~~~^
permit_undefined_jinja,
^^^^^^^^^^^^^^^^^^^^^^^
allow_no_other_outputs=allow_no_other_outputs,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
bypass_env_check=bypass_env_check,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
),
^
File "/opt/conda/envs/webhook-listener/lib/python3.13/site-packages/conda_build/metadata.py", line 2102, in _get_contents
raise CondaBuildUserError(
f"Failed to render jinja template in {self.meta_path}:\n{str(ex)}"
)
conda_build.exceptions.CondaBuildUserError: Failed to render jinja template in /tmp/tmpok_7aa4i/python-feedstock/recipe/meta.yaml:
Encountered unknown tag 'endif'.
'
aws lambda request id: 42852ad5-afa2-5f28-baa9-49ff45f4f1b7
View in Grafana

Replay #256 topology on origin/master without merge 2a73320.
Keep master patch numbering (0028 site.pth, 0029 zlib-ng, 0030 xxlimited).
Wrap win FT patches in freethreading jinja; add CF conda-forge#928 libpython
unix weak run_exports.

Refs: PKG-15601
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants