?
avatar alikon
alikon
23 Sep 2020

Steps to reproduce the issue

install the latest 3.9 nightly build
change the custom url to install the 3.10 nightly build
update to 3.10
change the custom url to install the 4 nightly build
update to 4

Expected result

update from 3.10 to 4 works fine

Actual result

image

the update is looking for a file XSalsa20.php

but the file present on the folder is Xsalsa20.php

image

System information (as much as possible)

php. 7.4.10

avatar alikon alikon - open - 23 Sep 2020
avatar joomla-cms-bot joomla-cms-bot - change - 23 Sep 2020
Labels Added: ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 23 Sep 2020
avatar alikon
alikon - comment - 23 Sep 2020

@zero-24 can you have a look

avatar richard67
richard67 - comment - 23 Sep 2020

There are 2 folders in that libraries/vendor/paragonie/sodium_compat/src/ folder: Core and Core32. In Core it has the wrong name Xsalsa20.php, in Core32 the right name XSalsa20.php.

In their GitHub repo the file in the Core folder has the right name: https://github.com/paragonie/sodium_compat/blob/master/src/Core/XSalsa20.php.

I've checked the history for a rename, but they seem not to have a very long one: https://github.com/paragonie/sodium_compat/commits/master/src/Core/XSalsa20.php. It only goes back for some 3 years. Maybe our version is older?

avatar richard67
richard67 - comment - 23 Sep 2020

Ping @wilsonge , too.

avatar richard67
richard67 - comment - 23 Sep 2020

Strange is: On my 64 bit Linux virtual machine (VMware workstation) here I can't reproduce the problem.

avatar richard67
richard67 - comment - 23 Sep 2020

I see their file was renamed end of August 2017: paragonie/sodium_compat@a998aad#diff-a3e132db53566250cd35112b9e76329f

If our version is older, maybe we can just update it?

avatar alikon
alikon - comment - 23 Sep 2020

i'm experiencing this under docker
images are based on debian:buster-slim php is 7.4.10
just to be clear i don't use any joomla docker image

avatar richard67
richard67 - comment - 23 Sep 2020

In our repository the file still has the wrong name, even if history shows that dependency has been updated on June 4, 2018: https://github.com/joomla/joomla-cms/blob/staging/libraries/vendor/paragonie/sodium_compat/src/Core/Xsalsa20.php

avatar alikon
alikon - comment - 23 Sep 2020

from composer.json
3.9 -> "paragonie/sodium_compat": "1.9.1",
3.10 ->"paragonie/sodium_compat": "1.9.1",
4 .0 ->"paragonie/sodium_compat": "~1.9.1",

avatar richard67
richard67 - comment - 23 Sep 2020

1.9.1 is from March 20 last year. But in our repo the file still has the wrong name, see my previous comment. Am confused.

avatar richard67
richard67 - comment - 23 Sep 2020

In their 1.9.1 zip package of the sources which I've just donwloaded from here https://github.com/paragonie/sodium_compat/releases/tag/v1.9.1, the file has the right name. Only in our repository not. This affects the staging and the 3.10-dev branch. In the 4.0-dev branch it is not in our sources anymore but fetched with composer install on every build.

avatar richard67
richard67 - comment - 23 Sep 2020

If we wanna rename the file from Xsalsa20.php to XSalsa20.php in staging (and later 3.10-dev), then we might run into the old problem that when updating to the next version, replacing the file on Windows will not change casing, i.e. the file will be replaced but keeps the old name Xsalsa20.php. Do we (or PHP) have a way to handle that meanwhile?

@zero-24 @wilsonge What to do?

avatar richard67
richard67 - comment - 23 Sep 2020

@alikon Could you test PR #30746 ? I suggest to leave this issue open until we know that the PR fixes it for you, and maybe until we have some feedback if my fix is ok.

avatar richard67 richard67 - close - 23 Sep 2020
avatar richard67
richard67 - comment - 23 Sep 2020

Closing as my PR #30746 seems to fix it.

avatar richard67 richard67 - change - 23 Sep 2020
Status New Closed
Closed_Date 0000-00-00 00:00:00 2020-09-23 13:51:53
Closed_By richard67

Add a Comment

Login with GitHub to post a comment