Comments (8)
So I merged your PR, and will put it on my factory branch, I don't think I really want to make this part of a relatively late hotfix, since it risks breaking existing setups. I tried Python 2.7 and 3.10 where Python is a symlink and it continued to work, that is something I care about. Moving it out to a separate function is bound to make the code maybe more readable.
from nuitka.
Part of the current pre-release.
from nuitka.
Screenshots and no version information, I am sure you can do better, and I have indeed changed something there recently for #2732 and this code for resolving symlinks is needed, because many tools don't work with non-real paths. I think the issue solution there was to indeed avoid resolve something different.
from nuitka.
I fixed getFilenameRealPath
to undo the damage in case drive letters get lost, but it may not be general enough to cover these mounts in the middle of things. You are more than welcome to make it walk the path up if it should be necessary.
from nuitka.
Sorry, I liked to make bug reports completely reproduceable,
but VMs in Windows world are strange, there is no reliable way to make it reproduceable by some unified way (VirtualBox, Hyper-V, Windows Sandbox):
- Windows sanboxes are strangely broken for now
- Working VirtualBox are incompatible with working Hyper-V
- ...
So, I would like to know, what virtualization have you on your windows stand, to make reproduceable examples with vagrant (for example).
I catch the issue sometimes ago, make quick fix "works for me", and was testing on my different projects during several weeks. So, I miss the #2732 and unfortunately, I dont see linked commits that should fix this issue for checking.
I tried to check latest pre-release commit ea9093d
and the issue still persists somehow:
What tools needed real UNC path here? Why just not
...
newpath = path
if not result.startswith('UNC'):
newpath = os.path.join(
os.path.dirname(path), result.rstrip("\r\n")
)
_real_path_windows_cache[path] = newpath
...
from nuitka.
The commit history of the nuitka.utils.FileOperations.py
has it. Due to rebasing for perfect git bisection, I don't use commit hashes as much as others do.
That change handles top level, but can surely be extended.
Like I said, many tools cannot work with symlinks, and need short paths in 8.3 style to work reliably. This includes tools from big companies. The realpath does more than it's supposed to do there, but it cannot do only one thing. Reverting it to drive letter paths, was easy for me. I imagine you can make it more general.
from nuitka.
Thanks for your PRs, these are all super useful, keep em coming :)
from nuitka.
Part of the 2.2 release I just made.
from nuitka.
Related Issues (20)
- Bug: No response with numpy 1.26.4, python 3.12.3, nuitka 2.3rc5 and `--standalone` HOT 2
- pyperf support HOT 3
- Working with setuptools 70.0.0 HOT 1
- crash in onefile.py: assert not os.path.exists(source_dir) HOT 5
- Why is Nuitka sometimes running slower (or not faster) than uncompiled python? HOT 9
- Hyperspy dynamic import fails when packaging an application that contains hyperspy HOT 8
- spacy dependencies failure HOT 13
- How to customize the cached directory HOT 1
- Python 3.12 test failures due to assertions HOT 5
- Failure to delete onefile build folders on Windows HOT 6
- Typo in Warning Message HOT 8
- opcua generated sources is too large for C compilers HOT 5
- Consider using "default" entry points HOT 5
- Packaging Error with PyOpenGL in Editable Mode HOT 4
- Generate compile_commands.json (Bump scons version to 4.x) HOT 10
- Can I include LGPL code in Nuitka, e.g. PySide6? HOT 4
- Pyqt5 issue: FATAL: pyqt5: Plugin issue while working on 'Plugin initialization failed' HOT 3
- Nuitka might generate unsafe code HOT 27
- Performance question on nuitka code HOT 1
- Suggestion: macOS bundle compliance HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nuitka.