wiki.techinc.nl/includes
Tim Starling 7c2c016e46 ResourceLoader: Implement JavaScript source map support
In the debugger of Firefox and Chrome, without any special debug mode,
you will be able to see the original unminified JavaScript source, and
to set breakpoints in it and step through it.

Main visible changes:

* Add a config variable controlling the generation of source map links,
  off by default for now.
* For script responses, move errors to the bottom of the response. This
  avoids disturbing the source map.
* mw.loader.impl() calls will have less whitespace in debug mode,
  because minification is no longer done as a post-processing step on
  these calls.

Details:

* Use an index map when multiple responses are requested. This requires
  an update to the minify library.
* Add a boolean "sourcemap" query parameter which causes load.php to
  deliver source map output instead of regular minified content.
* Bundle sources into the source map and use two kinds of fake URL if a
  real debug URL is not available. "Open in new tab" on a fake URL is
  not functional.
* In the source map mode, respond with 404 if the version is mismatched
  or if the content type is unimplemented.
* Fix createLoaderURL() so that $extraQuery is not ignored when there
  are conflicting context parameters, so that we can successfully
  override the version. The source map version should match the
  delivered content, not the requested version.
* Since minification with source map tracking can't use filter(),
  add a new cache for module source maps and minification. Add hit rate
  stats.

Also:

* Fix unnecessary array_map() in getCombinedVersion()

Bug: T47514
Change-Id: I086e275148fdcac89f67a2fa0466d0dc063a17af
2023-08-28 21:33:28 +01:00
..
actions Allow watchlist UI for temp users with sufficient rights 2023-08-23 10:20:30 +10:00
api Migrate several more Database::select calls to SQB 2023-08-24 14:19:14 +02:00
auth AuthManager: Drop checkAccountCreatePermissions(), deprecated in 1.39 2023-08-23 23:53:43 +00:00
block Merge "Disallow hiding temporary users via blocks" 2023-08-18 21:49:47 +00:00
cache Migrate several more Database::select calls to SQB 2023-08-24 14:19:14 +02:00
Category Replace IDatabase::delete with DeleteQueryBuilder 2023-06-21 17:50:31 +02:00
changes Merge "ChangesList: Cache user links" 2023-08-24 04:17:46 +00:00
changetags Mass migrate Database::insert calls to InsertQueryBuilder 2023-08-07 19:44:27 +02:00
collation Replace some more usages of deprecated MWException 2023-06-09 02:07:08 +02:00
CommentFormatter
CommentStore Mass migrate Database::insert calls to InsertQueryBuilder 2023-08-07 19:44:27 +02:00
composer
config ConfigFactory: Hard-deprecate getDefaultInstance() 2023-08-19 10:39:13 +08:00
content Title::getContentModel: Stop using ContentHandler::getDefaultModelFor() 2023-08-24 15:25:50 -04:00
context Reset the cached skin in RequestContext::setAuthority() 2023-08-03 02:06:16 +02:00
dao rdbms: Move IDBAccessObject from /includes/dao/ to /libs/rdbms 2023-06-01 13:38:28 +01:00
db rdbms: Drop partial disablement of CP and setting client id via header 2023-08-24 11:04:03 +02:00
debug Reorg: Move GitInfo to utils/ 2023-08-21 18:35:32 +02:00
deferred SearchUpdate: Drop support for non-Content update content, deprecated since 1.34 2023-08-24 20:57:14 +00:00
diff Include $wgWikidiff2Options in the diff cache key 2023-08-23 10:00:47 +10:00
edit
editpage TextConflictHelper: Drop support for calling without a ContentHandlerFactory, deprecated since 1.35 2023-08-23 23:53:59 +00:00
exception Replace some more usages of deprecated MWException 2023-06-09 02:07:08 +02:00
export Merge sequences of if that end doing the same thing anyway 2023-06-16 16:09:42 +02:00
ExternalLinks Externallinks: Keep domain wildcard if path is not specified 2023-07-11 12:56:42 +02:00
externalstore Mass migrate Database::insert calls to InsertQueryBuilder 2023-08-07 19:44:27 +02:00
Feed
filebackend Drop LockManagerGroup::getDefault() and getAny(), deprecated since 1.35 2023-08-16 16:58:34 +08:00
filerepo Migrate several more Database::select calls to SQB 2023-08-24 14:19:14 +02:00
gallery gallery: Cast width/height to int for packed gallery 2023-08-15 14:43:24 +02:00
historyblob Migrate more calls of Database::select* to SelectQueryBuilder 2023-07-26 13:01:28 +02:00
Hook Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
HookContainer Make the PrefixSearchBackend hook's deprecation non-silent 2023-08-24 21:00:09 +00:00
Html ResourceLoader: wrap module definitions in functions 2023-08-11 00:36:52 +00:00
htmlform Condense and simplify some conditionals/returns 2023-08-22 19:21:57 +00:00
http http: fix JobRunner overriding requestId with null 2023-08-09 18:13:58 +02:00
import WikiImporter: Improve error message output 2023-07-09 22:48:55 +00:00
installer Migrate several more Database::select calls to SQB 2023-08-24 14:19:14 +02:00
interwiki interwiki: Switch ClassicInterwikiLookup to use ICP 2023-08-24 13:28:19 +02:00
jobqueue JobQueue: Drop getWiki(), deprecated in 1.33 2023-08-24 20:53:17 +00:00
json
language Merge "Make comments related to escaping and template transformation clearer" 2023-08-19 07:30:56 +00:00
languages Remove ak from core 2023-08-21 18:46:33 -07:00
libs rdbms: Drop partial disablement of CP and setting client id via header 2023-08-24 11:04:03 +02:00
linkeddata Avoid DB access in non-database tests 2023-08-06 22:57:48 +00:00
linker Hard-deprecate Linker::formatComment/commentBlock/revComment 2023-08-08 01:32:26 +02:00
logging ManualLogEntry: Drop setTags(), deprecated in 1.33 2023-08-24 20:54:10 +00:00
mail Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
Maintenance Migrate more usages of Database::update() to UpdateQueryBuilder 2023-06-09 13:36:04 +00:00
media media: Replace deprecated MWException 2023-06-09 18:51:07 +02:00
Message
Navigation
objectcache objectcache: Reduce boilerplate and indirection around makeKey() 2023-08-03 10:42:56 +02:00
page WikiPage: Drop getDeletionUpdates(), deprecated in 1.37 2023-08-24 20:55:27 +00:00
pager Merge "TablePager: Hard-deprecate getBody(), deprecated in 1.24" 2023-08-23 22:30:16 +00:00
ParamValidator/TypeDef
parser Condense and simplify some conditionals/returns 2023-08-22 19:21:57 +00:00
password
Permissions Fix reference to nonexistent concept "create intent" 2023-08-01 10:04:52 +10:00
poolcounter Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
preferences build: Remove unneeded newline from one line condition/foreach 2023-08-22 21:49:58 +02:00
profiler
rcfeed
registration ExtensionRegistry: Stop supporting no manifest_version, deprecated in 1.26 2023-08-23 17:31:01 -04:00
RenameUser
Request Merge "ResourceLoader: Remove support for CSP nonce" 2023-08-10 23:25:21 +00:00
ResourceLoader ResourceLoader: Implement JavaScript source map support 2023-08-28 21:33:28 +01:00
Rest Merge "ParsoidHandler: return 403 for supressed revisions" 2023-08-24 09:34:41 +00:00
Revision Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
revisiondelete Introduce FileSelectQueryBuilder 2023-08-07 19:05:34 +02:00
revisionlist
search Make the PrefixSearchBackend hook's deprecation non-silent 2023-08-24 21:00:09 +00:00
session Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
Settings Move array destructuring into foreach 2023-07-08 19:52:46 +00:00
shell shell: Do not sandbox MediaWiki maintenance scripts 2023-08-07 12:17:11 -07:00
site site: Migrate DBSiteStore to use ICP 2023-08-24 13:34:35 +02:00
SiteStats mark various anonymous functions as static 2023-08-22 19:38:38 +00:00
skins SkinTemplate: Drop getNameSpaceKey(), deprecated in 1.35 2023-08-24 20:57:48 +00:00
sparql
specialpage SpecialLog: Only set valid local user as the relevant user 2023-08-24 23:47:25 +08:00
specials SpecialLog: Only set valid local user as the relevant user 2023-08-24 23:47:25 +08:00
Storage Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
StubObject
templates EnhancedChangesListGroup.mustache: Fix spaces and escaping 2023-07-27 09:46:53 +00:00
tidy Merge sequences of if that end doing the same thing anyway 2023-06-16 16:09:42 +02:00
title Title::getContentModel: Stop using ContentHandler::getDefaultModelFor() 2023-08-24 15:25:50 -04:00
upload build: Remove unneeded newline from one line condition/foreach 2023-08-22 21:49:58 +02:00
user Migrate several more Database::select calls to SQB 2023-08-24 14:19:14 +02:00
utils Reorg: Move GitInfo to utils/ 2023-08-21 18:35:32 +02:00
watcheditem Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
watchlist
widget
WikiMap mark various anonymous functions as static 2023-08-22 19:38:38 +00:00
xml Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
.htaccess
AutoLoader.php AutoLoader: Make $psr4Namespaces private (reinstated) 2023-08-08 00:40:31 +00:00
BootstrapHelperFunctions.php
config-schema.php ResourceLoader: Implement JavaScript source map support 2023-08-28 21:33:28 +01:00
DefaultSettings.php
Defines.php
DevelopmentSettings.php
GlobalFunctions.php Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
Hooks.php Consistently use LogicException for test-only methods 2023-07-22 16:21:42 +00:00
MainConfigNames.php ResourceLoader: Implement JavaScript source map support 2023-08-28 21:33:28 +01:00
MainConfigSchema.php ResourceLoader: Implement JavaScript source map support 2023-08-28 21:33:28 +01:00
MediaWiki.php Revert "MediaWiki: Temp silence FR-induced clearActionName warnings" 2023-08-09 20:02:04 +02:00
MediaWikiServices.php deferred: Drop support for DeferredUpdatesManager 2023-08-21 22:57:41 +00:00
NoLocalSettings.php
OutputHandler.php
OutputPage.php Reorg: Move MWTimestamp to MediaWiki\Utils 2023-08-19 05:53:40 +02:00
PHPVersionCheck.php Expand the PHP installation instructions 2023-05-21 13:00:41 +03:00
ServiceWiring.php site: Migrate DBSiteStore to use ICP 2023-08-24 13:34:35 +02:00
Setup.php phpunit: Throw exception when MediaWikiServices is accessed too early 2023-07-17 12:16:14 +00:00
SetupDynamicConfig.php
SiteConfiguration.php SiteConfiguration: Deprecate ::getConfig() 2023-08-24 13:02:09 +01:00
Status.php Undeprecate Status::getErrorsArray and ::getWarningsArray() 2023-05-22 10:32:40 +10:00
StreamFile.php Replace deprecated MWException 2023-06-09 17:21:12 +02:00
WebRequest.php http: fix JobRunner overriding requestId with null 2023-08-09 18:13:58 +02:00
WebStart.php