build icon indicating copy to clipboard operation
build copied to clipboard

Corrupted filenames of created sdist on windows

Open JohnnyWalker7 opened this issue 3 years ago • 6 comments

Hello,

I don't know if this is the right place to ask ... I'm using build in some of my projects and noticed that filenames of the e.g. example.tar.gz file that is created are cut of. Shouldn't build create a sdist zip file on windows?

Regards,

Johnny

JohnnyWalker7 avatar Aug 01 '22 14:08 JohnnyWalker7

Probably need more info. Build does work on Windows. Are you sure the extensions are missing (not just looking at them in Explorer, which can hide extensions), do you have some configuration files, what backend are you using, etc?

henryiii avatar Aug 01 '22 14:08 henryiii

The filenames are cut of after 32 characters. It happens with files I have included like

src_folder_name =
    mockups/csv_data/*.csv

I'm building with cmd and python 3.10.5

In the setup.cfg file I tried classifiers:

Operating System :: Microsoft :: Windows :: Windows 10

and

Operating System :: OS Independent

With both classifiers the problem is present

The build itself is not the problem only when I want to access/extract the tar.gz files with 7-Zip

JohnnyWalker7 avatar Aug 01 '22 14:08 JohnnyWalker7

In another case the folder-path is 4 characters longer and the filnames in that folder are cut after 28 characters. Therefore the whole path length is probably decisive.

I've investigated a bit more and it turns out, when I extract the tar.gz (sdist) file in the dist folder all the files that have a path longer than 195 characters are cut of. But it does not matter where I extract the tar.gz. The number of characters would be another, but they would all be cut at the same length. My assumption is, that it has something to do with the 260 characters in path limitation Windows had or has. Maybe it is exceeded during the packing process?!

JohnnyWalker7 avatar Aug 02 '22 06:08 JohnnyWalker7

I cloned the project to another location, to reduce the path length. I extraced the sdist again in the dist folder. Here the total path length of the mentioned files is 141 characters. They are still cut off.

JohnnyWalker7 avatar Aug 02 '22 08:08 JohnnyWalker7

Could you try increasing the path length limit? https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file#maximum-path-length-limitation

Classifiers don't affect things, they are just metadata. The build is happening in a temporary directory, so the location of the build source probably doesn't matter.

henryiii avatar Aug 02 '22 14:08 henryiii

I checked in the registry, LongPathsEnabled is set to 1

JohnnyWalker7 avatar Aug 05 '22 14:08 JohnnyWalker7