Commit graph

81 commits

Author SHA1 Message Date
umherirrender
6b4c44c2db Add missing @param to function docs
Change-Id: Ib26407bc55dff7969d8a3b1e2ae51751b202d8fb
2014-08-18 16:24:59 +00:00
Siebrand Mazeland
ebbf031774 Pass phpcs-strict on maintenance/ (7/8)
Change-Id: Ibb03a775055c687a4c5bc6864172e043d3a7e3d8
2014-04-23 12:16:10 +02:00
Timo Tijhof
beb1c4a0ec phpcs: More require/include is not a function
Follows-up I1343872de7, Ia533aedf63 and I2df2f80b81.

Also updated usage in text in documentation and the
installer LocalSettingsGenerator.

Most of them were handled by this regex:
- find: (require|include|require_once|include_once)\s*\(\s*(.+?)\s*\)\s*;$
- replace: $1 $2;

Change-Id: I6b38aad9a5149c9c43ce18bd8edbab14b8ce43fa
2013-05-21 23:26:28 +02:00
jeroendedauw
38c7f444e1 Use __DIR__ instead of dirname( __FILE__ )
We can now do this since we finally switched to PHP 5.3 for MW 1.20 and get rid of the silly dirname(__FILE__) stuff :)

Change-Id: Id9b2c9cd2e678197aa81c78adced5d1d31ff57b1
2012-08-27 21:45:00 +02:00
Sam Reed
2587017c33 Fix typo in SpecialVersion
Change require to require_once in commandLine.inc

Make eval.php require an absolute path rather than just one in itself

Simplify if statement
2012-01-12 22:14:56 +00:00
Sam Reed
5d39b698b6 Add braces
Fix documentation
2011-12-31 00:21:27 +00:00
Aaron Schulz
8568568191 Removed $wgUseNormalUser var; not used by any scripts anymore 2011-10-28 01:16:18 +00:00
Chad Horohoe
26505b170a Fix concern raised by Brion in r74108 (but has really existed since the maintenance rewrite). Right now, including a maintenance script causes it to execute. This is bad when you want to reuse the particular class but not have it start executing all by itself.
Until now, we relied on setting MW_NO_SETUP which was a) hacky, b) irreversable, and c) likely to be forgotten if you didn't use one of the wrappers like runChild().

Instead, move the freaky magic to doMaintenance and have *it* check if it's in a specific call stack that indicates this is being run from the file scope and should be executed. Rename DO_MAINTENANCE to RUN_MAINTENANCE_IF_MAIN so it's nice and clear what magic happens behind the require_once().
2011-01-13 22:58:55 +00:00
Alexandre Emsenhuber
9f5d06527c Part of bug 26280: added license headers to PHP files in maintenance 2010-12-16 19:15:12 +00:00
Mark A. Hershberger
617a5b1e15 Whitespace fixup under tha maint directory. 2010-12-04 03:20:14 +00:00
Platonides
32660c170e Follow up r72799.
Make this global so the Maps tests can work when called from phpunit.
2010-09-11 12:21:11 +00:00
Sam Reed
659778619c Stylize maintenance folder.. 2010-05-22 16:50:39 +00:00
Chad Horohoe
9b5196a68d Fix child class visibility 2010-03-10 12:59:44 +00:00
Alexandre Emsenhuber
6a238e13ca Use $wgUseNormalUser only in commandLine.inc (and use getDbType() instead in Maintenance) 2010-02-06 14:29:37 +00:00
Alexandre Emsenhuber
9a81cbd40a Re-implementing Maintenance::maybeHelp() in CommandLineInc to not show Maintenance's help when passing --help (previous method was not working correctly) 2009-09-24 21:41:17 +00:00
Alexandre Emsenhuber
11c921c459 Fix for r55810: oly set $optionsWithArgs if it's not defined, as in the old version; when defined by scripts, it's always set before including commandLine.inc, and thus setting it always to an empty array will break these scripts 2009-09-05 19:40:52 +00:00
Tim Starling
ce9228369f * Rewrote commandLine.inc to be a simple wrapper around Maintenance.php
* Don't show help if the first argument is "help", only show it if there is a "--help" option. That makes more sense for the scripts that accept filenames as parameters and is the backwards-compatible behaviour.
* Renamed spawnChild() to runChild(), spawn implies creating a new process to run simultaneously with the old one
* Removed error_reporting override, that's a matter for local policy
* s/private/protected
2009-09-04 08:02:00 +00:00
Brion Vibber
17ad472958 De-clutter base directory; moving install-utils.inc into maintenance. 2009-08-19 23:40:48 +00:00
Chad Horohoe
d0ff1e57ff * (bug 14201) Set $wgDBadminuser/$wgDBadminpassword during setup
* (bug 18768) Remove AdminSettings requirements. Maintenance environment will still load it if it exists, but it's not required for anything
2009-07-23 00:31:37 +00:00
Alexandre Emsenhuber
51c7fe4f34 * Fix for r50316 and r50324: require ProfilerStub.php if StartProfiler.php doesn't exist to aviod call to undefined function wfProfileIn()
* Removed already commented out "require_once( $IP.'/includes/ProfilerStub.php' );" now really obsolete
2009-05-08 08:54:47 +00:00
Chad Horohoe
efc95a66bb Followup to r50316: Fix inclusion of profiler in maintenance scripts. 2009-05-07 20:30:55 +00:00
Tim Starling
fbc6197e2d * Remove /home references in wikimedia mode
* Allow MW_INSTALL_PATH='' as a shortcut for deletion of the environment variable
2009-02-23 12:37:33 +00:00
Aaron Schulz
b355f9a560 Follow up to r45915: disable profiler.php (not the udp versions and such) for maintenance scripts 2009-01-19 23:43:54 +00:00
Tim Starling
c6b902f180 * Reorganised the includes directory, creating subdirectories db, parser and specials
* Wrote a tool to check the integrity of the autoloader class list, fixed some issues that came up.
* Start the autoloader before LocalSettings.php, so that when an extension writer thinks an inefficient one-file special page extension is the way to go, they don't have to use explicit includes to make the class inheritance work. Should continue to work with $IP set in LocalSettings.php as long as $IP is set before extensions are included.
2008-06-16 20:21:26 +00:00
Tim Starling
7ce2893f68 Use --wiki to specify the wiki ID (database name). Similar to the Wikimedia hack but applicable to all farm installations. Requires special handling in LocalSettings.php to transfer the MW_DB through to $wgDBname. 2008-06-04 01:46:53 +00:00
Alexandre Emsenhuber
087a9f70c5 WARNING: HUGE COMMIT
Doxygen documentation update:
* Changed alls @addtogroup to @ingroup. @addtogroup adds the comment to the group description, but doesn't add the file, class, function, ... to the group like @ingroup does. See for example http://svn.wikimedia.org/doc/group__SpecialPage.html where it's impossible to see related files, classes, ... that should belong to that group.
* Added @file to file description, it seems that it should be explicitely decalred for file descriptions, otherwise doxygen will think that the comment document the first class, variabled, function, ... that is in that file.
* Removed some empty comments
* Removed some ?>

Added following groups:
* ExternalStorage
* JobQueue
* MaintenanceLanguage

One more thing: there are still a lot of warnings when generating the doc.
2008-05-20 17:13:28 +00:00
Brion Vibber
92aecd02c1 apply live hacks from wikimedia site:
* fix $wgDBadminuser/pass usage with new load balancer
* some test.wikipedia check... yay hardcoded crap :D
* hardcoded wikimedia PMTPA check, yay
2008-05-12 22:01:44 +00:00
Roan Kattouw
3ad925a207 Fixing grammar in error message 2008-05-10 16:25:49 +00:00
Daniel Friesen
498f57ac2f Tweak to commandLine.inc to make it follow the MW_INSTALL_PATH environment variable like tweaked maintenance scripts. 2008-05-02 06:09:58 +00:00
Robert Leverington
5fbd690af0 Supress errors when setting the PHP timeout so output isn't ugly when safe mode is enabled. 2008-04-17 19:20:27 +00:00
Aryeh Gregor
fa7fd87647 Don't require commandLine.inc when not using the command line; instead, move wfWaitForSlaves() to GlobalFunctions.php, which is where I expected it to be to begin with. That appears, sensibly, to be loaded by all code paths. While I'm there, add some documentation. 2008-03-18 13:18:06 +00:00
Brion Vibber
60c13d2853 * (bug 12184) Exceptions now sent to stderr instead of stdout for command-line
scripts, making for cleaner reporting during batch jobs. PHP errors will also
  be redirected in most cases on PHP 5.2.4 and later, switching 'display_errors'
  to 'stderr' at runtime.
2007-12-06 21:07:49 +00:00
Rob Church
62bda31399 (bug 9058) Introduce '--aconf' option for all maintenance scripts, to provide a path to the AdminSettings.php file 2007-06-08 18:12:07 +00:00
Brion Vibber
72a4abe588 * Skip additional setting of include_path in commandLine.inc (for non-Wikimedia mode)
* Fix some scripts that assumed include_path was set with various additional directories
Stuff now seems to mostly work when not overriding include_path.
Taking that out of LocalSettings is the next step... whee!
2007-06-06 16:01:14 +00:00
Aryeh Gregor
81a745aba2 (bug 8780) Clarify message for command-line scripts if LocalSettings.php exists but is not readable 2007-01-25 21:10:19 +00:00
Antoine Musso
c771fc9c96 Use Doxygen @addtogroup instead of phpdoc @package && @subpackage 2007-01-20 15:09:52 +00:00
Nick Jenkins
74ea267553 Prevent the following strict-standards warnings - i.e. when running with error_logging(E_ALL | E_STRICT); - which seems to disable the yucky "@" operator, as well as maxing out the pedantry of warnings. Nothing major found, just nice to be as explicit and as forward-compatible as possible.
* Strict Standards: Undefined index: switch in includes/Parser.php on line 3849
* Strict Standards: Undefined index: ref in includes/Parser.php on line 3818
* Strict Standards: Non-static method OutputPage::setEncodings() should not be called statically in index.php on line 11
* Strict Standards: Only variables should be assigned by reference in includes/Skin.php on line 888
* Strict Standards: Non-static method Title::newFromURL() should not be called statically in includes/SpecialContributions.php on line 178
* Strict Standards: Only variables should be assigned by reference in includes/GlobalFunctions.php on line 2054
* Strict Standards: Undefined index:  contributions-summary in languages/Language.php on line 764
* Strict Standards: Undefined index:  trackbackhtml in skins/MonoBook.php on line 86
* Strict Standards: Undefined index:  blockip in skins/MonoBook.php on line 204
* Strict Standards: Undefined index:  tagline in skins/MonoBook.php on line 261
* Strict Standards: Undefined index: uselang in includes/SkinTemplate.php on line 1159
* Strict Standards: Non-static method CoreParserFunctions::plural() cannot be called statically in includes/Parser.php on line 2902
* Strict Standards: Undefined offset:  0 in includes/SkinTemplate.php on line 196
* Strict Standards: Undefined index:  USE INDEX in includes/Database.php on line 1015
* Strict Standards: Undefined index:  image_tests in includes/Parser.php on line 3488
* Strict Standards: Undefined offset:  0 in includes/Parser.php on line 3507
* Strict Standards: Non-static method ChangesList::newFromUser() should not be called statically in includes/SpecialWatchlist.php on line 361
* Strict Standards: Non-static method RecentChange::newFromCurRow() should not be called statically in includes/SpecialWatchlist.php on line 367
* Strict Standards: is_a(): Deprecated. Please use the instanceof operator in includes/Exception.php on line 168
* Strict Standards: Non-static method LogPage::logName() should not be called statically in includes/SpecialContributions.php on line 325
* Strict Standards: ob_end_flush(): failed to delete and flush buffer. No buffer to delete or flush. in maintenance/commandLine.inc on line 191
* Strict Standards: Undefined index:  meatball in languages/Language.php on line 234
* Strict Standards: rmdir(/tmp/mwParser-2108164586-images/thumb): Directory not empty in maintenance/parserTests.inc on line 605
* Cleaning out some new temp files left over by parserTests (there were one or two straggler dirs/files that would persist after the test run ended, due to new tests being added over time)
* Strict Standards: Non-static method CoreParserFunctions::special() cannot be called statically in includes/Parser.php on line 2902
* Strict Standards: Declaration of ListUsersPage::preprocessResults() should be compatible with that of QueryPage::preprocessResults() in includes/SpecialListusers.php on line 38
* Strict Standards: Only variables should be passed by reference in includes/SpecialBlockip.php on line 175
* Strict Standards: Skin::include_once(skins/Standard.deps.php) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in includes/Skin.php on line 121
* Strict Standards: Declaration of ApiMain::getResult() should be compatible with that of ApiBase::getResult() in includes/api/ApiMain.php on line 35
* Strict Standards: is_a(): Deprecated. Please use the instanceof operator in includes/WikiError.php on line 63
* Strict Standards: Non-static method WikiError::isError() should not be called statically in includes/SpecialImport.php on line 64
* Strict Standards: Non-static method ImportStreamSource::newFromInterwiki() should not be called statically in includes/SpecialImport.php on line 58<b
* Strict Standards: Only variables should be assigned by reference in includes/SpecialUndelete.php on line 501
* Strict Standards: Non-static method Image::newFromName() should not be called statically in thumb.php on line 56
* Strict Standards: Non-static method CoreParserFunctions::numberoffiles() cannot be called statically in includes/Parser.php on line 2902
* Strict Standards: Non-static method CoreParserFunctions::statisticsFunction() should not be called statically in includes/CoreParserFunctions.php on line 139
* Strict Standards: Non-static method CoreParserFunctions::isRaw() should not be called statically in includes/CoreParserFunctions.php on line 128
* Strict Standards: Non-static method CoreParserFunctions::grammar() cannot be called statically in includes/Parser.php on line 2902
* Strict Standards: Undefined offset:  1 in includes/SpecialMIMEsearch.php on line 130
* Strict Standards: Undefined index:  recentchangeslinked in skins/MonoBook.php on line 184
* Strict Standards: Declaration of DumpNotalkFilter::pass() should be compatible with that of DumpFilter::pass() in includes/Export.php on line 612
* Strict Standards: Declaration of DumpNamespaceFilter::pass() should be compatible with that of DumpFilter::pass() in includes/Export.php on line 665
* Strict Standards: Non-static method ImportStreamSource::newFromUpload() should not be called statically in includes/SpecialImport.php on line 46
* Strict Standards: Undefined offset:  5 in includes/Sanitizer.php on line 396
* Strict Standards: Undefined index:  wikidbUserName in includes/SpecialUserlogin.php on line 562
* Strict Standards: Only variables should be assigned by reference in includes/api/ApiQueryBase.php on line 95
* Strict Standards: Only variables should be assigned by reference in includes/api/ApiQueryBase.php on line 116
* Strict Standards: Only variables should be assigned by reference in includes/api/ApiQueryWatchlist.php on line 128
* Strict Standards: Undefined property:  stdClass::$rc_id in includes/api/ApiQueryBase.php on line 131
* Strict Standards: Undefined property:  stdClass::$rc_last_oldid in includes/api/ApiQueryBase.php on line 164
* Strict Standards: Undefined property:  stdClass::$rc_moved_to_ns in includes/api/ApiQueryBase.php on line 285
* Strict Standards: Undefined property:  stdClass::$rc_patrolled in includes/api/ApiQueryBase.php on line 176
* Strict Standards: Undefined index:  comment in includes/api/ApiFeedWatchlist.php on line 85
* Strict Standards: Undefined offset:  0 in includes/Skin.php on line 302
* Strict Standards: Non-static method User::SetupSession() should not be called statically in includes/SpecialUserlogin.php on line 15

... There are certain to be other things too, so this is not intended to be comprehensive, rather the above just stops most of the notifications I observed.
2006-11-29 05:45:03 +00:00
Brion Vibber
2000b29643 * Friendlier check for PHP 5 in command-line scripts; it's common for parallel
PHP 4 and 5 installations to interfere on the command-line.
2006-10-15 20:12:08 +00:00
Tim Starling
b29f4b2f84 show SQL errors in command line scripts 2006-09-28 09:04:39 +00:00
Rotem Liss
8de5904f8c Reverting a test code. 2006-08-04 20:59:13 +00:00
Rotem Liss
83f7f25ea2 In the language scripts:
* Using Language::getMessagesFor instead of creating new language objects.
* Allowing a parameter which specifies the language code to check instead of the default one, in checktrans.php, duplicatetrans.php and unusedMessages.php.
checktrans.php still does not work; duplicatetrans.php still works improperly.
2006-08-04 20:58:19 +00:00
Tim Starling
43b2fb56b6 Merged localisation-work branch:
* Made lines from initialiseMessages() appear as list items during installation
* Moved the bulk of the localisation data from the Language*.php files to the Messages*.php files. Deleted most of the Languages*.php files.
* Introduced "stub global" framework to provide deferred initialisation of core modules. 
* Removed placeholder values for $wgTitle and $wgArticle, these variables will now be null during the initialisation process, until they are set by index.php or another entry point.
* Added DBA cache type, for BDB-style caches. 
* Removed custom date format functions, replacing them with a format string in the style of PHP's date(). Used string identifiers instead of integer identifiers, in both the language files and user preferences. Migration should be transparent in most cases.
* Simplified the initialisation API for LoadBalancer objects.
* Removed the broken altencoding feature.
* Moved default user options and toggles from Language to User. Language objects are still able to define default preference overrides and extra user toggles, via a slightly different interface.
* Don't include the date option in the parser cache rendering hash unless $wgUseDynamicDates is enabled.
* Merged LanguageUtf8 with Language. Removed LanguageUtf8.php. 
* Removed inclusion of language files from the bottom of Language.php. This is now consistently done from Language::factory(). 
* Add the name of the executing maintenance script to the debug log. Start the profiler during maintenance scripts.
* Added "serialized" directory, for storing precompiled data in serialized form.
2006-07-26 07:15:39 +00:00
Domas Mituzas
9aa7ac0d2c microtime(true) instead of slow php4 hacks 2006-05-28 21:25:03 +00:00
Tim Starling
d5b370f1bc Argument with -- alone specifies that the following arguments are not options 2006-04-16 06:29:44 +00:00
Brion Vibber
0188f36e00 Return non-zero when LocalSettings.php is missing. 2006-04-04 10:19:19 +00:00
Brion Vibber
95894dc863 Fix use of $wgDBadminuser on 'simple' database setup, where $wgDBservers isn't set 2006-04-04 06:36:02 +00:00
Brion Vibber
e3da80a5a2 Set $wgRequestTime, so database error exits show the script runtime instead of wacky numbers and PHP notices. 2006-04-04 05:45:38 +00:00
Brion Vibber
0f2812d732 Live fix: include ProfilerStub.php, some scripts need it 2006-04-02 04:17:00 +00:00
Tim Starling
dd0930677f revert accidentally committed live hack 2006-02-28 05:34:36 +00:00
Tim Starling
5562abd524 Job::pop() may occasionally return false when there are actually more jobs remaining, but there is too much contention to efficiently delete one. runJobs can keep trying, as opposed to apache threads which should stop in this case. 2006-02-28 05:24:52 +00:00