Merge "Remove DB2 support"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Fri, 1 Mar 2013 22:00:46 +0000 (22:00 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Fri, 1 Mar 2013 22:00:46 +0000 (22:00 +0000)
1  2 
RELEASE-NOTES-1.21
includes/AutoLoader.php
includes/GlobalFunctions.php
includes/installer/Installer.i18n.php

diff --combined RELEASE-NOTES-1.21
@@@ -85,8 -85,6 +85,8 @@@ production
    in MW 1.20 (saving preferences using Special:Preferences cleared any
    additional fields) and which has been disabled in 1.20.1 as a part of
    a security fix (bug 42202).
 +* Added option to specify "others" as author in extension credits using
 +  "..." as author name.
  * Added the ability to limit the wall clock time used by shell processes,
    as well as the CPU time. Configurable with $wgMaxShellWallClockTime.
  * Allow memory of shell subprocesses to be limited using Linux cgroups
  * (bug 5346) Categories that are redirects will be displayed italic in
    the category links section at the bottom of a page.
  * (bug 43915) New maintenance script deleteEqualMessages.php.
 -* New collation uppercase-sv, which is like uppercase, but adapted
 -  to Swedish sort order.
  * WikiText now permits the use of WAI-ARIA's role="presentation" inside of
    html elements and tables. This allows presentational markup, especially
    tables. To be marked up as such.
  * maintenance/sql.php learned the --cluster option. Let you run the script
    on some external cluster instead of the primary cluster for a given wiki.
  * (bug 20281) test the parsing of inline URLs.
 +* Added Special:PagesWithProp, which lists pages using a particular page property.
 +* Implemented language-specific collations for category sorting for 67 languages
 +  based in latin, greek and cyrillic alphabets. This allows one to *finally* get
 +  articles to be correctly sorted on category pages. They are named
 +  'uca-<langcode>', where <langcode> is one of: af, ast, az, be, bg, br, bs, ca,
 +  co, cs, cy, da, de, dsb, el, en, eo, es, et, eu, fi, fo, fr, fur, fy, ga, gd,
 +  gl, hr, hsb, hu, is, it, kk, kl, ku, ky, la, lb, lt, lv, mk, mo, mt, nl, no,
 +  oc, pl, pt, rm, ro, ru, rup, sco, sk, sl, smn, sq, sr, sv, tk, tl, tr, tt, uk,
 +  uz, vi.
  
  === Bug fixes in 1.21 ===
  * (bug 40353) SpecialDoubleRedirect should support interwiki redirects.
  * (bug 43251) prop=pageprops&ppprop= now accepts multiple props to query.
  * ApiQueryImageInfo will now limit the number of calls to File::transform made
    in any one query. If there are too many, iicontinue will be returned.
 +* action=query&meta=siteinfo&siprop=general will now return the regexes used for
 +  link trails and link prefices. Added for Parsoid support.
 +* Added an API query module list=pageswithprop, which lists pages using a
 +  particular page property.
 +* Added an API query module list=pagepropnames, which lists all page prop names
 +  currently in use on the wiki.
 +* (bug 44921) ApiMain::execute() will now return after the CORS check for an
 +  HTTP OPTIONS request.
 +* (bug 44923) action=upload works correctly if the entire file is uploaded in
 +  the first chunk.
  
  === API internal changes in 1.21 ===
  * For debugging only, a new global $wgDebugAPI removes many API restrictions when true.
@@@ -279,14 -260,15 +279,15 @@@ changes to languages because of Bugzill
    were using it, you have to either copy it to your extension, or install the
    Vector extension (and possibly disable its features using config settings if
    you don't want them).
+ * Experimental IBM DB2 support was removed due to lack of interest and maintainership
  
  == Compatibility ==
  
  MediaWiki 1.21 requires PHP 5.3.2 or later.
  
  MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
- support for them is somewhat less mature. There is experimental support for IBM
DB2 and Oracle.
+ support for them is somewhat less mature. There is experimental support for
+ Oracle.
  
  The supported versions are:
  
diff --combined includes/AutoLoader.php
@@@ -136,6 -136,7 +136,6 @@@ $wgAutoloadLocalClasses = array
        'HTMLTextField' => 'includes/HTMLForm.php',
        'Http' => 'includes/HttpFunctions.php',
        'HttpError' => 'includes/Exception.php',
 -      'HttpRequest' => 'includes/HttpFunctions.old.php',
        'ICacheHelper' => 'includes/CacheHelper.php',
        'IcuCollation' => 'includes/Collation.php',
        'IdentityCollation' => 'includes/Collation.php',
        'UnlistedSpecialPage' => 'includes/SpecialPage.php',
        'UploadSourceAdapter' => 'includes/Import.php',
        'UppercaseCollation' => 'includes/Collation.php',
 -      'UppercaseSvCollation' => 'includes/Collation.php',
        'User' => 'includes/User.php',
        'UserArray' => 'includes/UserArray.php',
        'UserArrayFromResult' => 'includes/UserArray.php',
        'ApiQueryLogEvents' => 'includes/api/ApiQueryLogEvents.php',
        'ApiQueryORM' => 'includes/api/ApiQueryORM.php',
        'ApiQueryPageProps' => 'includes/api/ApiQueryPageProps.php',
 +      'ApiQueryPagesWithProp' => 'includes/api/ApiQueryPagesWithProp.php',
 +      'ApiQueryPagePropNames' => 'includes/api/ApiQueryPagePropNames.php',
        'ApiQueryProtectedTitles' => 'includes/api/ApiQueryProtectedTitles.php',
        'ApiQueryQueryPage' => 'includes/api/ApiQueryQueryPage.php',
        'ApiQueryRandom' => 'includes/api/ApiQueryRandom.php',
        'ChronologyProtector' => 'includes/db/LBFactory.php',
        'CloneDatabase' => 'includes/db/CloneDatabase.php',
        'DatabaseBase' => 'includes/db/Database.php',
-       'DatabaseIbm_db2' => 'includes/db/DatabaseIbm_db2.php',
        'DatabaseMssql' => 'includes/db/DatabaseMssql.php',
        'DatabaseMysql' => 'includes/db/DatabaseMysql.php',
        'DatabaseOracle' => 'includes/db/DatabaseOracle.php',
        'DBUnexpectedError' => 'includes/db/DatabaseError.php',
        'FakeResultWrapper' => 'includes/db/DatabaseUtility.php',
        'Field' => 'includes/db/DatabaseUtility.php',
-       'IBM_DB2Blob' => 'includes/db/DatabaseIbm_db2.php',
-       'IBM_DB2Field' => 'includes/db/DatabaseIbm_db2.php',
-       'IBM_DB2Helper' => 'includes/db/DatabaseIbm_db2.php',
-       'IBM_DB2Result' => 'includes/db/DatabaseIbm_db2.php',
        'LBFactory' => 'includes/db/LBFactory.php',
        'LBFactory_Fake' => 'includes/db/LBFactory.php',
        'LBFactory_Multi' => 'includes/db/LBFactory_Multi.php',
        'CliInstaller' => 'includes/installer/CliInstaller.php',
        'DatabaseInstaller' => 'includes/installer/DatabaseInstaller.php',
        'DatabaseUpdater' => 'includes/installer/DatabaseUpdater.php',
-       'Ibm_db2Installer' => 'includes/installer/Ibm_db2Installer.php',
-       'Ibm_db2Updater' => 'includes/installer/Ibm_db2Updater.php',
        'InstallDocFormatter' => 'includes/installer/InstallDocFormatter.php',
        'Installer' => 'includes/installer/Installer.php',
        'LocalSettingsGenerator' => 'includes/installer/LocalSettingsGenerator.php',
        'RefreshLinksJob' => 'includes/job/jobs/RefreshLinksJob.php',
        'RefreshLinksJob2' => 'includes/job/jobs/RefreshLinksJob.php',
        'UploadFromUrlJob' => 'includes/job/jobs/UploadFromUrlJob.php',
 +      'AssembleUploadChunksJob' => 'includes/job/jobs/AssembleUploadChunksJob.php',
 +      'PublishStashedFileJob' => 'includes/job/jobs/PublishStashedFileJob.php',
  
        # includes/json
        'FormatJson' => 'includes/json/FormatJson.php',
        'SearchEngine' => 'includes/search/SearchEngine.php',
        'SearchEngineDummy' => 'includes/search/SearchEngine.php',
        'SearchHighlighter' => 'includes/search/SearchEngine.php',
-       'SearchIBM_DB2' => 'includes/search/SearchIBM_DB2.php',
        'SearchMssql' => 'includes/search/SearchMssql.php',
        'SearchMySQL' => 'includes/search/SearchMySQL.php',
        'SearchNearMatchResultSet' => 'includes/search/SearchEngine.php',
        'SpecialNewFiles' => 'includes/specials/SpecialNewimages.php',
        'SpecialNewpages' => 'includes/specials/SpecialNewpages.php',
        'SpecialPasswordReset' => 'includes/specials/SpecialPasswordReset.php',
 +      'SpecialPagesWithProp' => 'includes/specials/SpecialPagesWithProp.php',
        'SpecialPermanentLink' => 'includes/SpecialPage.php',
        'SpecialPreferences' => 'includes/specials/SpecialPreferences.php',
        'SpecialPrefixindex' => 'includes/specials/SpecialPrefixindex.php',
@@@ -329,40 -329,6 +329,40 @@@ function wfRandomString( $length = 32 
        return substr( $str, 0, $length );
  }
  
 +/**
 + * Given an array of non-normalised probabilities, this function will select
 + * an element and return the appropriate key
 + *
 + * @param $weights array
 + *
 + * @return bool|int|string
 + */
 +function wfPickRandom( $weights ){
 +      if ( !is_array( $weights ) || count( $weights ) == 0 ) {
 +              return false;
 +      }
 +
 +      $sum = array_sum( $weights );
 +      if ( $sum == 0 ) {
 +              # No loads on any of them
 +              # In previous versions, this triggered an unweighted random selection,
 +              # but this feature has been removed as of April 2006 to allow for strict
 +              # separation of query groups.
 +              return false;
 +      }
 +      $max = mt_getrandmax();
 +      $rand = mt_rand( 0, $max ) / $max * $sum;
 +
 +      $sum = 0;
 +      foreach ( $weights as $i => $w ) {
 +              $sum += $w;
 +              if ( $sum >= $rand ) {
 +                      break;
 +              }
 +      }
 +      return $i;
 +}
 +
  /**
   * We want some things to be included as literal characters in our title URLs
   * for prettiness, which urlencode encodes by default.  According to RFC 1738,
@@@ -1420,13 -1386,9 +1420,13 @@@ function wfUILang() 
  }
  
  /**
 - * This is the new function for getting translated interface messages.
 - * See the Message class for documentation how to use them.
 - * The intention is that this function replaces all old wfMsg* functions.
 + * This is the function for getting translated interface messages.
 + *
 + * @see Message class for documentation how to use them.
 + * @see https://www.mediawiki.org/wiki/Manual:Messages_API
 + *
 + * This function replaces all old wfMsg* functions.
 + *
   * @param $key \string Message key.
   * Varargs: normal message parameters.
   * @return Message
@@@ -2468,11 -2430,6 +2468,6 @@@ define( 'TS_ORACLE', 6 )
   */
  define( 'TS_POSTGRES', 7 );
  
- /**
-  * DB2 format time
-  */
- define( 'TS_DB2', 8 );
  /**
   * ISO 8601 basic format with no timezone: 19860209T200000Z.  This is used by ResourceLoader
   */
@@@ -241,7 -241,6 +241,6 @@@ Consider putting the database somewher
        'config-type-postgres'            => 'PostgreSQL',
        'config-type-sqlite'              => 'SQLite',
        'config-type-oracle'              => 'Oracle',
-       'config-type-ibm_db2'             => 'IBM DB2',
        'config-support-info'             => 'MediaWiki supports the following database systems:
  
  $1
@@@ -251,12 -250,10 +250,10 @@@ If you do not see the database system y
        'config-support-postgres'         => '* $1 is a popular open source database system as an alternative to MySQL ([http://www.php.net/manual/en/pgsql.installation.php how to compile PHP with PostgreSQL support]). There may be some minor outstanding bugs, and it is not recommended for use in a production environment.',
        'config-support-sqlite'           => '* $1 is a lightweight database system which is very well supported. ([http://www.php.net/manual/en/pdo.installation.php How to compile PHP with SQLite support], uses PDO)',
        'config-support-oracle'           => '* $1 is a commercial enterprise database. ([http://www.php.net/manual/en/oci8.installation.php How to compile PHP with OCI8 support])',
-       'config-support-ibm_db2'          => '* $1 is a commercial enterprise database. ([http://www.php.net/manual/en/ibm-db2.installation.php How to compile PHP with IBM DB2 support])',
        'config-header-mysql'             => 'MySQL settings',
        'config-header-postgres'          => 'PostgreSQL settings',
        'config-header-sqlite'            => 'SQLite settings',
        'config-header-oracle'            => 'Oracle settings',
-       'config-header-ibm_db2'           => 'IBM DB2 settings',
        'config-invalid-db-type'          => 'Invalid database type',
        'config-missing-db-name'          => 'You must enter a value for "Database name"',
        'config-missing-db-host'          => 'You must enter a value for "Database host"',
@@@ -349,8 -346,6 +346,6 @@@ This is more efficient than MySQL's UTF
  
  In '''UTF-8 mode''', MySQL will know what character set your data is in, and can present and convert it appropriately, but it will not let you store characters above the [//en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes Basic Multilingual Plane].",
  
-       'config-ibm_db2-low-db-pagesize'  => "Your DB2 database has a default tablespace with an insufficient pagesize. The pagesize has to be '''32K''' or greater.",
        'config-site-name'                => 'Name of wiki:',
        'config-site-name-help'           => "This will appear in the title bar of the browser and in various other places.",
        'config-site-name-blank'          => 'Enter a site name.',
@@@ -668,7 -663,6 +663,7 @@@ If you\'re translating this message to 
        'config-admin-password' => '{{Identical|Password}}',
        'config-admin-email' => '{{Identical|E-mail address}}',
        'config-subscribe' => 'Used as label for the installer checkbox',
 +      'config-subscribe-help' => '"Low-volume" in this context means that there will be few e-mails to that mailing list per time period.',
        'config-profile-help' => 'Messages referenced:
  * {{msg-mw|config-profile-wiki}}
  * {{msg-mw|config-profile-no-anon}}
        'config-page-copying' => 'Copiar',
        'config-page-upgradedoc' => 'Anovando',
        'config-page-existingwiki' => 'Wiki esistente',
 +      'config-download-localsettings' => 'Descargar <code>LocalSettings.php</code>',
 +      'config-help' => 'Ayuda',
 +      'config-nofile' => 'Nun pudo atopase\'l ficheru "$1". ¿Desaniciose?',
        'mainpagetext' => "'''MediaWiki instalóse correchamente.'''",
 -      'mainpagedocfooter' => "Visita la [//meta.wikimedia.org/wiki/Help:Contents Guía d'usuariu] pa saber cómo usar esti software wiki.
 +      'mainpagedocfooter' => 'Visita la [//meta.wikimedia.org/wiki/Help:Contents Guía del usuariu] pa saber cómo usar esti software wiki.
  
  == Empecipiando ==
  
  * [//www.mediawiki.org/wiki/Manual:Configuration_settings Llista de les opciones de configuración]
  * [//www.mediawiki.org/wiki/Manual:FAQ FAQ de MediaWiki]
 -* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Llista de corréu de les ediciones de MediaWiki]", # Fuzzy
 +* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Llista de corréu de les ediciones de MediaWiki]
 +* [//www.mediawiki.org/wiki/Localisation#Translation_resources Llocaliza MediaWiki na to llingua]',
  );
  
  /** Kotava (Kotava)
@@@ -6298,8 -6288,7 +6293,8 @@@ $messages['gd'] = array
  == Toiseach tòiseachaidh ==
  * [//www.mediawiki.org/wiki/Manual:Configuration_settings Liosta suidheachadh nan roghainnean]
  * [//www.mediawiki.org/wiki/Manual:FAQ CÀBHA MediaWiki]
 -* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Liosta puist nan sgaoilidhean MediaWiki]",
 +* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Liosta puist nan sgaoilidhean MediaWiki]
 +* [//www.mediawiki.org/wiki/Localisation#Translation_resources Cuir do chànan air MediaWiki]",
  );
  
  /** Galician (galego)
@@@ -10317,7 -10306,7 +10312,7 @@@ chmod a+w $3</pre>'
        'config-admin-error-user' => '"<nowiki>$1</nowiki>"という名前の管理者を作成する際に内部エラーが発生しました。',
        'config-admin-error-password' => '管理者"<nowiki>$1</nowiki>"のパスワードを設定する際に内部エラーが発生しました: <pre>$2</pre>',
        'config-subscribe' => '[https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce リリース告知のメーリングリスト]を購読する。',
 -      'config-subscribe-help' => 'これは、リリースの告知 (重要なセキュリティに関する案内を含む) に使用される、低容量のメーリングリストです。
 +      'config-subscribe-help' => 'これは、リリースの告知 (重要なセキュリティに関する案内を含む) に使用される、流量が少ないメーリングリストです。
  このメーリングリストを購読して、新しいバージョンが出た場合にMediaWikiを更新してください。',
        'config-almost-done' => 'これでほぼ終わりました!
  残りの設定を飛ばして、ウィキを今すぐインストールできます。',