Page MenuHomeSoftware Heritage

pip install swh.core on windows machines does not install properly
Closed, MigratedEdits Locked

Description

Sorry for my very late reply, and thank you for your very useful support!
I have just implemented our script which requires the URL of a public
repository as an input and mainly works as follows:

  1. Repository local clone
  2. SWHID local computation by shw tool ( https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html#implementation )
  3. Repository save by SH API, save method ( https://archive.softwareheritage.org/api/1/origin/save/doc/)
  4. SH URL revolve by SH API, resolve method ( https://archive.softwareheritage.org/api/1/resolve/doc/) - this is used to get the archive URL when available and publish it on our website

By exploiting your staging application, I made some tests and our script
works as expected from my *Linux-Ubuntu *machine.

Unfortunately, we need to use it from a *Windows 10 64bit machine*, where
python 3.8.5 and pip 21.3.1 are already installed.
We tried to install the swh tool to locally compute the repository SWHID,
but the installation fails with the following error:

*Installing collected packages: swh.coreERROR: Could not install packages
due to an OSError: [Errno 22] Invalid argument:
'D:\\SYNC_DATA\\Attivita_Scientifica\\GRSI\\GRSI_Env_Win64\\python\\Lib\\site-packages\\swh\\core\\tests\\data\\https_www.reference.com
http://https_www.reference.com\\web,q=What+Is+an+Example+of+a+URL?,qo=contentPageRelatedSearch,o=600605,l=dir,sga=1'*

Do you have any idea and/or suggestion on how to proceed to solve the issue
and install swh package on our Windows machine?

Best Regards,

Event Timeline

ardumont triaged this task as Normal priority.Dec 9 2021, 3:20 PM
ardumont created this task.

The immediate issue is that : is an invalid character in windows file names, so we'll need to change the name of all fixture directories to avoid that character.

Relaying discussion because i don't fully trust my memory on this:

15:21 <+ardumont> i've opened T3786 if someone has any ideas, please ping in in the task
15:21 -- Notice(swhbot): T3786 (submitter: ardumont, status: Open): pip install swh.core on windows machines does not install properly <https://forge.softwareheritage.org/T3786>
15:21 <+ardumont> (i'll eventually relay if they don't come back to that task)
15:22 <+ardumont> tia
15:22 <+olasd> yes, : is an invalid character in windows file names
15:25 <+ardumont> is that coming from us?
15:25 <+olasd> yes
15:25 <+olasd> all our requests_mock fixtures have : in filenames
15:26 <+ardumont> looks like i was right in opening that task...
15:28 <+olasd> as a workaround, in the meantime, they could run a full linux stack through WSL2

To install WSL as suggested, that documentation [1] should probably help.

[1] https://docs.microsoft.com/en-us/windows/wsl/install