Opened 12 years ago
Closed 10 years ago
#23113 closed defect (bug) (worksforme)
Automatic notice of new localized version missing
Reported by: |
|
Owned by: | |
---|---|---|---|
Milestone: | Priority: | normal | |
Severity: | major | Version: | 3.5 |
Component: | Upgrade/Install | Keywords: | |
Focuses: | Cc: |
Description
There was standard behaviour, that users could upgrade quickly to the latest WordPress version and when localized version was ready and released, notice about new localized version appeared in administration. But some users found that it was changed (in 3.5 or maybe 3.4) and when they upgrade to English version, they are not noticed about new Czech version in the future which is annoying. I tried it on some websites and it is true. I am not sure, if it is wanted change (but does not make sense for me) or bug (regression)?
Change History (10)
#2
@
12 years ago
- Cc forumi@… added
It's hard to reproduce this until new release. I suspect that this is issue with api.wordpress.org that doesn't indicate that locale package is 'upgrade' and instead marks it as 'latest'.
If you have access to some sites that have upgraded to en_US but didn't to locale one, I can give you code to debug response they get.
#3
@
12 years ago
Sure, I can test it. But it can be reproduced when you install Localized version (3.4.2) and then manually (FTP) upgrade to English version (3.5). There should be an update notice to latest Localized version (3.5) as it was several months ago.
#4
follow-up:
↓ 5
@
12 years ago
- Severity changed from normal to major
There is another serious problem which is probably also somehow related.
1) Install English version of 3.4.2
2) Add following code into wp-config.php:
define('WPLANG', 'cs_CZ');
3) After uploading localized files into wp-content/languages is WordPress install localized.
But it is not possible to update to Czech version of WordPress 3.5. There is only English version available. It is also regression, because it was possible several months ago. Now there is no chance to update to localized version and several Czech users had troubles with this behaviour. So, when you start working in English and want to switch to localized version, automatic updates will not work. Never. Too bad...
It is probaly caused by some new check for $wp_local_package in wp-includes/version.php ?
#5
in reply to:
↑ 4
@
12 years ago
Replying to pavelevap:
But it is not possible to update to Czech version of WordPress 3.5. There is only English version available. It is also regression, because it was possible several months ago.
Could not reproduce. When I complete those 3 steps with define('WPLANG', 'ru_RU')
, I get both Russian and English 3.5.1 packages listed on the Updates screen. Note that the Updates screen has a 60 seconds timeout before refreshing the data.
With define('WPLANG', 'cs_CZ')
, currently only the English package is displayed indeed, probably because there's no 3.5.1 package on cs.wordpress.org yet.
#6
@
12 years ago
Hmmm, strange, it works now... Tested with latest 3.5.1 and Czech version is offered for update... Sorry, for bothering you, maybe somehow corrupted cs_CZ package or problem with connectivity?
But originally reported problem is still not solved. Steps to reproduce:
1) Install English version of 3.5.1
2) Add following code into wp-config.php:
define('WPLANG', 'cs_CZ');
3) Go to Dashboard - Updates.
There are options to Re-install or Download Czech version (after clicking Check again button), but original English version is missing. Also Re-install button for Czech version should be highlighted (blue)? And there should be also standard notice (yellow row), that there is new localized version available (user has only English version with one line in wp-config and missing $wp_local_package in wp-includes/version.php)?
Different steps for this (or similar) problem are mentioned here: http://core.trac.wordpress.org/ticket/23113#comment:3
#7
@
12 years ago
Replying to pavelevap:
There are options to Re-install or Download Czech version (after clicking Check again button), but original English version is missing.
Confirmed. The API doesn't return the English package when version
is the latest release and local_package
is not set:
http://api.wordpress.org/core/version-check/1.6/?version=3.5.1&php=5.2.14&locale=cs_CZ&mysql=5.0.45&local_package=&blogs=1&users=1&multisite_enabled=0
Response:
a:1:{s:6:"offers";a:1:{i:0;a:9:{s:8:"response";s:6:"latest";s:8:"download";s:49:"http://cs.wordpress.org/wordpress-3.5.1-cs_CZ.zip";s:6:"locale";s:5:"cs_CZ";s:8:"packages";a:4:{s:4:"full";s:49:"http://cs.wordpress.org/wordpress-3.5.1-cs_CZ.zip";s:10:"no_content";b:0;s:11:"new_bundled";b:0;s:7:"partial";b:0;}s:7:"current";s:5:"3.5.1";s:11:"php_version";s:5:"5.2.4";s:13:"mysql_version";s:3:"5.0";s:11:"new_bundled";s:3:"3.5";s:15:"partial_version";b:0;}}}
With local_package
set:
http://api.wordpress.org/core/version-check/1.6/?version=3.5.1&php=5.2.14&locale=cs_CZ&mysql=5.0.45&local_package=cs_CZ&blogs=1&users=1&multisite_enabled=0
Response:
a:1:{s:6:"offers";a:2:{i:0;a:9:{s:8:"response";s:6:"latest";s:8:"download";s:49:"http://cs.wordpress.org/wordpress-3.5.1-cs_CZ.zip";s:6:"locale";s:5:"cs_CZ";s:8:"packages";a:4:{s:4:"full";s:49:"http://cs.wordpress.org/wordpress-3.5.1-cs_CZ.zip";s:10:"no_content";b:0;s:11:"new_bundled";b:0;s:7:"partial";b:0;}s:7:"current";s:5:"3.5.1";s:11:"php_version";s:5:"5.2.4";s:13:"mysql_version";s:3:"5.0";s:11:"new_bundled";s:3:"3.5";s:15:"partial_version";b:0;}i:1;a:9:{s:8:"response";s:6:"latest";s:8:"download";s:40:"http://wordpress.org/wordpress-3.5.1.zip";s:6:"locale";s:5:"en_US";s:8:"packages";a:4:{s:4:"full";s:40:"http://wordpress.org/wordpress-3.5.1.zip";s:10:"no_content";s:51:"http://wordpress.org/wordpress-3.5.1-no-content.zip";s:11:"new_bundled";s:52:"http://wordpress.org/wordpress-3.5.1-new-bundled.zip";s:7:"partial";b:0;}s:7:"current";s:5:"3.5.1";s:11:"php_version";s:5:"5.2.4";s:13:"mysql_version";s:3:"5.0";s:11:"new_bundled";s:3:"3.5";s:15:"partial_version";b:0;}}}
Note "offers";a:1
(Czech version only) vs. "offers";a:2
(both Czech and English versions).
If I change version
from 3.5.1 to 3.5 or 3.4.2 though (anything earlier than the current stable release), the API returns both English and Czech versions, regardless of local_package
value.
However, this sounds different from the original issue in the description and comment:3 (the inability to install Czech version after upgrading to English version), which I could not reproduce.
After completing the steps from comment:3, I get update notifications for both Czech and English 3.5.1 package. If I update to 3.5.1-en_US, I only get the ability to re-install or download the Czech version (the English version disappears), as you describe in comment:6.
Note that the Updates screen has a 60 seconds timeout before refreshing the data:
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/update.php#L37
When testing, I set the $timeout
value in line 38 to 0, so that I could see the results immediately.
#8
@
12 years ago
FYI, with version-check/1.6, you can use ?debug to trigger a non-serialized response that's easier to read.
The API doesn't return the English package when version is the latest release and local_package is not set
Indeed. Not that it shouldn't change, but this is the same behavior prior to the 1.6 version of the API. Replace 1.6 with 1.5 and you'll get the same.
#10
@
10 years ago
- Milestone WordPress.org deleted
- Resolution set to worksforme
- Status changed from new to closed
There is a lot of outdated data here. If this is still an issue please create a new ticket with steps to reproduce. If it's an issue with the API please create a ticket on meta.trac.wordpress.org.
I don't remember that behaviour, probably because I've never tried to update to English version first. Still, doesn't sound like an intended change.