#1998638: Replace almost all remaining superglobals ($_GET, $_POST, etc.) with Symfony Request object has broken drush site-install because conf_path() still uses $_SERVER. So anything that uses Drupal from the command line will have the same problems.

Additionally mail.inc uses $_SERVER and drush issues warning about this during site install. The fix in mail.inc is how we detect windows in file.inc and is not reliant on $_SERVER so it's a good thing.

Marking as critical because at the moment the inconsistency between conf_path() and drupal_override_server_variables() is a huge regression. I tried changing conf_path() to use the request object but it appears that this is called pre request.

Basically #1998638: Replace almost all remaining superglobals ($_GET, $_POST, etc.) with Symfony Request object has not done what the title promises - i.e. actually replace all superglobals. For example run-tests.sh only works because it too still sets $_SERVER!!!

CommentFileSizeAuthor
drush-si-fix.patch1.06 KBalexpott
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

webchick’s picture

Status: Needs review » Closed (won't fix)

Rolled back the parent patch; let's fix this properly over there.

(I think this is the right status, if not I apologize. It is not meant as a slight. :))

Dave Reid’s picture

Reading this, I'm curious why we don't just use PHP_EOL instead of our own line ending constant, especially considering it has the same behavior in PHP 5.4.0RC8 and above as the current logic...going to file a separate issue...