Your help is appreciated – I’m not blaming anyone either. Updates have gone smoothly for countless releases.
Nothing shows up in the error logs and it still happens without any plugins enabled.
I looked at the code this morning and here are a few things I found:
wp-admin/update-core.php
$version = isset( $_POST['version'] )? $_POST['version'] : false;
$locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
$update = find_core_update( $version, $locale );
if ( !$update )
return;
On my systems, $version is empty and find_core_update returns false.
wp-admin/includes/update.php
$updates = $from_api->updates;
foreach ( $updates as $update ) {
if ( $update->current == $version && $update->locale == $locale )
return $update;
}
return false; // Returns here
Since $version is empty and $update->current is not empty, it never returns an update. I used Chrome Developer tools to add a version field and set it to 4.1, like so:
<input name="version" type="hidden" value="4.1">
I verified it was set, but that still didn’t fix anything.