rules_python icon indicating copy to clipboard operation
rules_python copied to clipboard

Too many levels of symbolic links at share/terminfo/N/NCR260VT300WPP

Open oxidase opened this issue 1 year ago • 3 comments

🐞 bug report

Is this a regression?

Yes, the previous version in which this bug was not present was: 4dcfd21b4a3f1e0ee3e10a8e42efed5ad635f5b2 The regression was introduced in 3f40e98d3901068aa25fa7ff2573f6bdb5b1fe81

Description

1 the new python runtime 3.12.2 contains terminfo data with a symbolic link which leads to Too many levels of symbolic links on a case-insensitive file system:

wget -q https://github.com/indygreg/python-build-standalone/releases/download/20240224/cpython-3.12.2+20240224-aarch64-unknown-linux-gnu-install_only.tar.gz -O - | tar tv | grep share/terminfo/N/NCR260VT300WPP
lrwxrwxrwx  0 root   root        0 Jan  1 01:00 python/share/terminfo/N/NCR260VT300WPP -> ../n/ncr260vt300wpp

The previous version 3.12.1 has no share/terminfo directory

wget -q https://github.com/indygreg/python-build-standalone/releases/download/20240107/cpython-3.12.1+20240107-aarch64-unknown-linux-gnu-install_only.tar.gz -O - | tar tv | grep share/terminfo

The fix filters out share/terminfo/N/NCR260VT300WPP symbolic link

/cc @trentontrees

🔥 Exception or Error


ERROR: /private/.../external/rules_poetry~~poetry~poetry/BUILD:7317:8: Target '@@rules_poetry~~poetry~poetry//:utm' depends on toolchain '@@rules_python~~python~python_3_12_aarch64-unknown-linux-gnu//:python_runtimes', which cannot be found: no such package '@@rules_python~~python~python_3_12_aarch64-unknown-linux-gnu//': error globbing [bin/**, extensions/**, include/**, lib/**, libs/**, share/**] - [**/* *, lib/libpython3.12.so, lib/**/*.a, lib/python3.12/**/test/**, lib/python3.12/**/tests/**, **/__pycache__/*.pyc.*, share/terminfo/N/NCR260VT300WPP] op=FILES: /private/.../external/rules_python~~python~python_3_12_aarch64-unknown-linux-gnu/share/terminfo/N/NCR260VT300WPP (Too many levels of symbolic links)'

🌍 Your Environment

Operating System:

  
MacOS Sonoma 14.4
FS: APFS
  

Output of bazel version:

  
Bazelisk version: development
Build label: 7.1.0
Build target: @@//src/main/java/com/google/devtools/build/lib/bazel:BazelServer
Build time: Mon Mar 11 17:55:51 2024 (1710179751)
Build timestamp: 1710179751
Build timestamp as int: 1710179751
  

Rules_python version:

  
5ab3e9cca2a1cbd5a320ccb5aa4db093af019374
  

oxidase avatar Mar 12 '24 19:03 oxidase

Looks like this was introduced upstream here.

This will be an issue when working with the linux archive on macOS, since the file system is case-insensitive by default.

jvolkman avatar Mar 12 '24 20:03 jvolkman

Thanks @jvolkman! Created https://github.com/indygreg/python-build-standalone/issues/231

oxidase avatar Mar 12 '24 21:03 oxidase

I guess the right thing for rules_python would be to revert the addition of 3.12.2 until this gets fixed upstream.

aignas avatar Mar 13 '24 11:03 aignas

Should we exclude share/terminfo on Linux toolchains from the filegroup globs? I think that somewhat coincides with the suggested fix (i.e. deleting) upstream.

aignas avatar May 13 '24 08:05 aignas