]> source.dussan.org Git - jquery-ui.git/commitdiff
Build: Report compressed sizes in compare_size
authorMichał Gołębiowski-Owczarek <m.goleb@gmail.com>
Mon, 20 May 2024 16:59:58 +0000 (18:59 +0200)
committerGitHub <noreply@github.com>
Mon, 20 May 2024 16:59:58 +0000 (18:59 +0200)
Just like it has always worked in Core. This will help with size comparisons
between 1.13 & 1.14.

After this PR:

```
$ grunt sizer
Running "requirejs:js" (requirejs) task

Running "uglify:main" (uglify) task
>> 1 file created 549 kB → 267 kB

Running "compare_size:all" (compare_size) task
   raw     gz Sizes
549319 128757 dist/jquery-ui.js
266710  69612 dist/jquery-ui.min.js

Done.
```

Before, only the less interesting `raw` sizes were reported.

Closes gh-2254
Ref gh-2248

Gruntfile.js

index d737dbef7ed3577098f273105c3db85f1125bfa1..05e83c9613aa0df41f4359b7396b704da689d673 100644 (file)
@@ -2,6 +2,8 @@
 
 module.exports = function( grunt ) {
 
+const { gzipSync } = require( "node:zlib" );
+
 // files
 const coreFiles = [
        "widget.js",
@@ -74,7 +76,15 @@ const compareFiles = {
        all: [
                "dist/jquery-ui.js",
                "dist/jquery-ui.min.js"
-       ]
+       ],
+       options: {
+               compress: {
+                       gz: function( contents ) {
+                               return gzipSync( contents ).length;
+                       }
+               },
+               cache: "build/.sizecache.json"
+       }
 };
 
 const htmllintBad = [
@@ -105,8 +115,6 @@ uiFiles.concat( allI18nFiles ).forEach( function( file ) {
 } );
 
 uiFiles.forEach( function( file ) {
-
-       // TODO this doesn't do anything until https://github.com/rwldrn/grunt-compare-size/issues/13
        compareFiles[ file ] = [ file, mapMinFile( file ) ];
 } );