Page MenuHomePhabricator

Wikimedia-MinifyComponent
ActivePublic

Members

  • This project does not have any members.
  • View All

Details

Description

The wikimedia/minify PHP library for minification of JavaScript code and CSS stylesheets.

Recent Activity

Mon, Jul 1

larissagaulia moved T368204: Consider removing new-line insertion from JavaScriptMinifier from Inbox, needs triage to Soon on the MediaWiki-Platform-Team board.
Mon, Jul 1, 2:47 PM · MediaWiki-Platform-Team, Wikimedia-Minify

Mon, Jun 24

Maintenance_bot removed a project from T277675: Add native support for ES2016-ES2020 or higher versions: Patch-For-Review.
Mon, Jun 24, 8:30 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
gerritbot added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Change #1048590 merged by jenkins-bot:

[mediawiki/libs/Minify@master] JavaScriptMinifier: Add support for `**=` operator (ECMAScript 2016)

https://gerrit.wikimedia.org/r/1048590

Mon, Jun 24, 8:18 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Sat, Jun 22

Maintenance_bot removed a project from T287526: Minifier can sometimes split "..." spread operator (affects Vue 3.1.5-compat): Patch-For-Review.
Sat, Jun 22, 8:32 PM · MediaWiki-Platform-Team, MW-1.37-notes (1.37.0-wmf.17; 2021-08-02), MW-1.36-notes, Deprecated-Design-Systems-team-board (Deprecated -DST Kanban Board 2021-2022), Wikimedia-Minify, Performance-Team
Krinkle added a comment to T368204: Consider removing new-line insertion from JavaScriptMinifier.

I'm proposing this as a maintenance task next quarter to take on between Hannah and Derick (writing and review, respectively).

Sat, Jun 22, 8:14 PM · MediaWiki-Platform-Team, Wikimedia-Minify
Krinkle triaged T368204: Consider removing new-line insertion from JavaScriptMinifier as Medium priority.
Sat, Jun 22, 8:08 PM · MediaWiki-Platform-Team, Wikimedia-Minify
Krinkle added a comment to T368204: Consider removing new-line insertion from JavaScriptMinifier.

These are examples of issues that this improvement would have avoided or reduced the priority of:

Sat, Jun 22, 8:08 PM · MediaWiki-Platform-Team, Wikimedia-Minify
Krinkle created T368204: Consider removing new-line insertion from JavaScriptMinifier.
Sat, Jun 22, 8:02 PM · MediaWiki-Platform-Team, Wikimedia-Minify

Fri, Jun 21

gerritbot added a project to T277675: Add native support for ES2016-ES2020 or higher versions: Patch-For-Review.
Fri, Jun 21, 11:37 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
gerritbot added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Change #1048590 had a related patch set uploaded (by Krinkle; author: Krinkle):

[mediawiki/libs/Minify@master] JavaScriptMinifier: Add support for `**=` operator (ECMAScript 2016)

https://gerrit.wikimedia.org/r/1048590

Fri, Jun 21, 11:37 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Jun 10 2024

Phispi added a comment to T351610: Support minification of ES2020 Nullish operator syntax.

A big thank you to everybody working on this! @Krinkle: I'll follow your recommendation to include the slint-config-wikimedia package, thanks.

Jun 10 2024, 6:34 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
Krinkle closed T351610: Support minification of ES2020 Nullish operator syntax, a subtask of T277675: Add native support for ES2016-ES2020 or higher versions, as Resolved.
Jun 10 2024, 1:03 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
Krinkle closed T351610: Support minification of ES2020 Nullish operator syntax as Resolved.
Jun 10 2024, 1:03 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 29 2024

Maintenance_bot removed a project from T351610: Support minification of ES2020 Nullish operator syntax: Patch-For-Review.
May 29 2024, 6:30 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
gerritbot added a comment to T351610: Support minification of ES2020 Nullish operator syntax.

Change #1035483 merged by jenkins-bot:

[mediawiki/libs/Minify@master] JavaScriptMinifier: Add support for ES2020 `??` nullish operator

https://gerrit.wikimedia.org/r/1035483

May 29 2024, 5:36 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 28 2024

Krinkle added a comment to T351610: Support minification of ES2020 Nullish operator syntax.

@Phispi To avoid surprises in the future, I recommend running ESLint in your extension. If you already use this, make sure that you set ecmaVersion: 2016 ("ES7") in your ESLint config, which is what MediaWiki 1.39+ supports. There is also the eslint-config-wikimedia package from npm, which would automatically follow other (optional) MediaWiki's code conventions as well. I recommend using the same version as the oldest MW release branch your extension supports: https://github.com/wikimedia/mediawiki/blob/REL1_39/package.json#L24

May 28 2024, 1:15 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 24 2024

Krinkle moved T351610: Support minification of ES2020 Nullish operator syntax from Inbox, needs triage to Current Sprint on the MediaWiki-Platform-Team board.
May 24 2024, 11:21 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 23 2024

Krinkle renamed T351610: Support minification of ES2020 Nullish operator syntax from JavaScriptMinifier must not insert line break between `return` and returned value to Support minification of ES2020 Nullish operator syntax.
May 23 2024, 7:54 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
Krinkle added a parent task for T351610: Support minification of ES2020 Nullish operator syntax: T277675: Add native support for ES2016-ES2020 or higher versions.
May 23 2024, 7:53 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
Krinkle added a subtask for T277675: Add native support for ES2016-ES2020 or higher versions: T351610: Support minification of ES2020 Nullish operator syntax.
May 23 2024, 7:53 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
Hokwelum added a comment to T351610: Support minification of ES2020 Nullish operator syntax.

Currently, JavaScriptMinifier only supports ES2017 tokens. When you try to minify unsupported tokens, it attempts to interpret them and often results in bugs, similar to the one reported.

May 23 2024, 7:17 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
Krinkle updated the task description for T277675: Add native support for ES2016-ES2020 or higher versions.
May 23 2024, 5:33 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
gerritbot added a project to T351610: Support minification of ES2020 Nullish operator syntax: Patch-For-Review.
May 23 2024, 4:28 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify
gerritbot added a comment to T351610: Support minification of ES2020 Nullish operator syntax.

Change #1035483 had a related patch set uploaded (by Hokwelum; author: Hokwelum):

[mediawiki/libs/Minify@master] Fix line break between `return` and returned value

https://gerrit.wikimedia.org/r/1035483

May 23 2024, 4:28 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 14 2024

Krinkle assigned T351610: Support minification of ES2020 Nullish operator syntax to Hokwelum.
May 14 2024, 4:36 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

May 5 2024

Maintenance_bot removed a project from T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10: Patch-For-Review.
May 5 2024, 9:30 AM · MediaWiki-Platform-Team, Wikimedia-Minify
gerritbot added a comment to T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10.

Change #1027538 merged by jenkins-bot:

[mediawiki/libs/Minify@master] PHPUnit 10: Remove deprecated E_WARNING and E_USER_WARNING in CSSMinTest

https://gerrit.wikimedia.org/r/1027538

May 5 2024, 9:19 AM · MediaWiki-Platform-Team, Wikimedia-Minify
pmiazga closed T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10 as Resolved.
May 5 2024, 9:18 AM · MediaWiki-Platform-Team, Wikimedia-Minify
gerritbot added a project to T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10: Patch-For-Review.
May 5 2024, 9:14 AM · MediaWiki-Platform-Team, Wikimedia-Minify
gerritbot added a comment to T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10.

Change #1027538 had a related patch set uploaded (by Lgaulia; author: Lgaulia):

[mediawiki/libs/Minify@master] PHPUnit 10: Remove deprecated E_WARNING and E_USER_WARNING in CSSMinTest

https://gerrit.wikimedia.org/r/1027538

May 5 2024, 9:14 AM · MediaWiki-Platform-Team, Wikimedia-Minify
pmiazga moved T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10 from Inbox, needs triage to Current Sprint on the MediaWiki-Platform-Team board.
May 5 2024, 7:57 AM · MediaWiki-Platform-Team, Wikimedia-Minify
pmiazga changed the status of T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10 from Open to In Progress.
May 5 2024, 7:56 AM · MediaWiki-Platform-Team, Wikimedia-Minify

Apr 28 2024

Reedy created T363650: Minify: Expecting E_WARNING and E_USER_WARNING is deprecated and will no longer be possible in PHPUnit 10.
Apr 28 2024, 4:27 PM · MediaWiki-Platform-Team, Wikimedia-Minify

Apr 24 2024

MSantos moved T351610: Support minification of ES2020 Nullish operator syntax from Needs Input (waiting) to MW Platform Team on the MediaWiki-Engineering board.
Apr 24 2024, 1:49 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

Apr 3 2024

MSantos moved T351610: Support minification of ES2020 Nullish operator syntax from Inbox, needs triage to Needs Input (waiting) on the MediaWiki-Engineering board.
Apr 3 2024, 1:33 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

Mar 27 2024

Krinkle edited Description on Wikimedia-Minify.
Mar 27 2024, 5:36 PM

Mar 13 2024

FJoseph-WMF moved T351610: Support minification of ES2020 Nullish operator syntax from MediaWiki Interfaces team to Inbox, needs triage on the MediaWiki-Engineering board.
Mar 13 2024, 1:35 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

Mar 10 2024

Krinkle removed a project from T277675: Add native support for ES2016-ES2020 or higher versions: Performance-Team.
Mar 10 2024, 2:28 AM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Feb 14 2024

Krinkle renamed T351610: Support minification of ES2020 Nullish operator syntax from Minifier insert line break between `return` and returned value in Javascript to JavaScriptMinifier must not insert line break between `return` and returned value.
Feb 14 2024, 2:34 PM · MediaWiki-Platform-Team, MediaWiki-Engineering, Wikimedia-Minify

Feb 10 2024

SD0001 added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Let's continue the discussion on Gadgets in T357197, since it is indeed off-topic (or only tangentially related) to this task.

Feb 10 2024, 3:27 AM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Feb 9 2024

Nux added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

@Nux Standardisation is not in question. Unlike new Web APIs (such as fetch), which can be polyfilled, or used via a conditional "if" statement, new syntax, if allowed even once, immediately breaks all code in many browsers that we still support. You can complain to upstream TC39 for having introducing features in ES2017 in a way that is backwards-incompatible. When MediaWiki raises its minimum requirement to ES8/ES2017, we will on the same day, raise the ESLint and site script validator to also allow this syntax.

Feb 9 2024, 8:31 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
Krinkle added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

@Nux Standardisation is not in question. Unlike new Web APIs (such as fetch), which can be polyfilled, or used via a conditional "if" statement, new syntax, if allowed even once, immediately breaks all code in many browsers that we still support. You can complain to upstream TC39 for having introducing features in ES2017 in a way that is backwards-incompatible. When MediaWiki raises its minimum requirement to ES8/ES2017, we will on the same day, raise the ESLint and site script validator to also allow this syntax.

Feb 9 2024, 1:55 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Feb 8 2024

Nux added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

There are no plans currently to raise browser requirements to ES8/ES2017 or ES2020 etc. Not likely until browser engines, browser vendors/apps, audience usage thereof catch up.

Feb 8 2024, 7:00 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
TheDJ added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Well... we did tell people not to do that.. its not called requiresES6 for nothing.

Feb 8 2024, 2:42 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
Od1n added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Please, please keep the requiresES6 flag at least until ES8 can be used in scripts. On frwiki, we have scripts that use async/await, and this language feature makes the codes incredibly simpler. We even had codes with the ?. operator, but I rewrote them to avoid using this operator (for now). But the async/await is a must have.

Feb 8 2024, 7:14 AM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Feb 7 2024

Krinkle added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.
Feb 7 2024, 1:42 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
Krinkle added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.
  • async function methods.

I assume this is referring to async methods in classes and/or object literals. But it seems to work? […] Is there a reproducible edge case where it fails?

Feb 7 2024, 1:34 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Jan 19 2024

Maintenance_bot removed a project from T277675: Add native support for ES2016-ES2020 or higher versions: Patch-For-Review.
Jan 19 2024, 7:31 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader
gerritbot added a comment to T277675: Add native support for ES2016-ES2020 or higher versions.

Change 990374 merged by jenkins-bot:

[mediawiki/libs/Minify@master] Add a few tests for ES2017 features

https://gerrit.wikimedia.org/r/990374

Jan 19 2024, 7:14 PM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader

Jan 14 2024

SD0001 updated subscribers of T277675: Add native support for ES2016-ES2020 or higher versions.
  • async function methods.
Jan 14 2024, 7:35 AM · MediaWiki-Platform-Team, Wikimedia-Minify, JavaScript, MediaWiki-ResourceLoader