hyperbuild 0.0.36 → 0.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2655af7a79f7c375572ecf5cf90d4283a5196c1fa211a01e58c7ca81c3f147f8
4
- data.tar.gz: 2ecf6b76878a858a306adee6ba5ae7e77b84d2a69a31a692ce58e8810b862709
3
+ metadata.gz: 7b23b9c0aacb7a786afdf9c80453c9725810ff205db9de642a84384085a5e306
4
+ data.tar.gz: 8bfc69dba0c8ed40a6e399089a69bc46f1c5e2363a994d94e565b2ba397eb7de
5
5
  SHA512:
6
- metadata.gz: 86ab0c1d7769d252a2cf58841f19540194253e9bac550bbe36f1909e3197b70e8856d4e082ddb01cdaab44ec57f5754051bae1b04a853b8e0426ce5df5b57f7f
7
- data.tar.gz: 6327cabea235f6091d199cd75ce874026e3e78b15d7ee128051dc0af1ed8685cb3b9e9dfdb5d669c7d9b37b3142a2e1e48e7033c897c4035d38cb5ef25599f48
6
+ metadata.gz: 371fdf501b2e92993fc8c356d81c8bde4ea74320122a294fa848b56471db6e6bcbfff301032860a4f7d69c38ca4246eb7a8141a27d9a85338c395bc3309ac53b
7
+ data.tar.gz: 512b0672e6030bd8ba72be66b034978aec75a69950ef4c7141d5be5129de0bf7b45c147461c667d351f53293e28661fe4ea3f8621401fbb88a8893c28e332f7b
data/README.md CHANGED
@@ -17,7 +17,7 @@ Available as:
17
17
 
18
18
  Speed and effectiveness of Node.js version compared to [html-minfier](https://github.com/kangax/html-minifier) and [minimize](https://github.com/Swaagie/minimize). See [bench](./bench) folder for more details.
19
19
 
20
- <img width="435" alt="Chart showing speed of HTML minifiers" src="./bench/results/average-speeds.png"> <img width="435" alt="Chart showing effectiveness of HTML minifiers" src="./bench/results/average-sizes.png">
20
+ <img width="435" alt="Chart showing speed of HTML minifiers" src="https://wilsonl.in/hyperbuild/bench/0.0.37/average-speeds.png"> <img width="435" alt="Chart showing effectiveness of HTML minifiers" src="https://wilsonl.in/hyperbuild/bench/0.0.37/average-sizes.png">
21
21
 
22
22
  ## Usage
23
23
 
@@ -25,9 +25,9 @@ Speed and effectiveness of Node.js version compared to [html-minfier](https://gi
25
25
 
26
26
  ##### Get
27
27
 
28
- [Windows](https://wilsonl.in/hyperbuild/bin/0.0.36-windows-x86_64.exe) |
29
- [macOS](https://wilsonl.in/hyperbuild/bin/0.0.36-macos-x86_64) |
30
- [Linux](https://wilsonl.in/hyperbuild/bin/0.0.36-linux-x86_64)
28
+ [Windows](https://wilsonl.in/hyperbuild/bin/0.0.37-windows-x86_64.exe) |
29
+ [macOS](https://wilsonl.in/hyperbuild/bin/0.0.37-macos-x86_64) |
30
+ [Linux](https://wilsonl.in/hyperbuild/bin/0.0.37-linux-x86_64)
31
31
 
32
32
  ##### Use
33
33
 
@@ -44,7 +44,7 @@ hyperbuild --src /path/to/src.html --out /path/to/output.min.html
44
44
 
45
45
  ```toml
46
46
  [dependencies]
47
- hyperbuild = "0.0.36"
47
+ hyperbuild = "0.0.37"
48
48
  ```
49
49
 
50
50
  ##### Use
@@ -105,7 +105,7 @@ Add as a Maven dependency:
105
105
  <dependency>
106
106
  <groupId>in.wilsonl.hyperbuild</groupId>
107
107
  <artifactId>hyperbuild</artifactId>
108
- <version>0.0.36</version>
108
+ <version>0.0.37</version>
109
109
  </dependency>
110
110
  ```
111
111
 
@@ -365,10 +365,10 @@ Any entities in attribute values are decoded, and then the shortest representati
365
365
  - Single quoted, with any `'` encoded.
366
366
  - Unquoted, with `"`/`'` first character (if applicable), `>` last character (if applicable), and any whitespace encoded.
367
367
 
368
- `class` attributes have their whitespace (after any decoding) trimmed and collapsed.
368
+ `class` and `d` attributes have their whitespace (after any decoding) trimmed and collapsed.
369
369
 
370
370
  [Boolean attribute](./gen/attrs.json) values are removed.
371
- [Some attributes](./gen/attrs.json) are completely removed if their value is empty or the default value after any processing.
371
+ [Some other attributes](./gen/attrs.json) are completely removed if their value is empty or the default value after any processing.
372
372
 
373
373
  `type` attributes on `script` tags with a value equaling a [JavaScript MIME type](https://mimesniff.spec.whatwg.org/#javascript-mime-type) are removed.
374
374
 
@@ -380,10 +380,12 @@ Spaces are removed between attributes if possible.
380
380
 
381
381
  Entities are decoded if valid (see relevant parsing section) and their decoded characters as UTF-8 is shorter or equal in length.
382
382
 
383
- Numeric entities that do not refer to a valid Unicode Scalar Value are decoded to U+FFFD REPLACEMENT CHARACTER.
383
+ Numeric entities that do not refer to a valid [Unicode Scalar Value](https://www.unicode.org/glossary/#unicode_scalar_value) are replaced with the [replacement character](https://en.wikipedia.org/wiki/Specials_(Unicode_block)#Replacement_character).
384
384
 
385
385
  If an entity is unintentionally formed after decoding, the leading ampersand is encoded, e.g. `&&#97;&#109;&#112;;` becomes `&ampamp;`. This is done as `&amp` is equal to or shorter than all other entity representations of characters part of an entity (`[&#a-zA-Z0-9;]`), and there is no other conflicting entity name that starts with `amp`.
386
386
 
387
+ Right chevrons after any decoding in text are encoded to `&GT` if possible or `&GT;` otherwise.
388
+
387
389
  ### Comments
388
390
 
389
391
  Comments are removed.
@@ -400,7 +402,7 @@ hyperbuild simply does HTML minification, and almost does no syntax checking or
400
402
 
401
403
  For example, this means that it's not an error to have self-closing tags, declare multiple `<body>` elements, use incorrect attribute names and values, or write something like `<br>alert('');</br>`
402
404
 
403
- However, there are some syntax requirements for speed and sanity reasons.
405
+ However, there are some syntax requirements for speed and sanity.
404
406
 
405
407
  ### Tags
406
408
 
@@ -425,7 +427,7 @@ Numeric character references that do not reference a valid [Unicode Scalar Value
425
427
  Backticks (`` ` ``) are not valid quote marks and not interpreted as such.
426
428
  However, backticks are valid attribute value quotes in Internet Explorer.
427
429
 
428
- Special handling of some attributes require case sensitive names and values. For example, `CLASS` won't be recognised as an attribute to minify, and `type="Text/JavaScript"` on a `<script>` will cause the element to be parsed as a [data block](https://html.spec.whatwg.org/dev/scripting.html#data-block) instead of JavaScript code.
430
+ Special handling of some attributes require case sensitive names and values. For example, `CLASS` won't be recognised as an attribute to minify, and `type="Text/JavaScript"` on a `<script>` will not be removed.
429
431
 
430
432
  ### Script and style
431
433
 
@@ -435,6 +437,6 @@ hyperbuild does **not** handle [escaped and double-escaped](./notes/Script%20dat
435
437
 
436
438
  ## Issues and contributions
437
439
 
438
- Contributions welcome!
440
+ Pull requests and any contributions welcome!
439
441
 
440
- If hyperbuild did something unexpected, such as misunderstood some syntax, or incorrectly did/didn't do some minification, [raise an issue](https://github.com/wilsonzlin/hyperbuild/issues) with some relevant code that causes the issue.
442
+ If hyperbuild did something unexpected, misunderstood some syntax, or incorrectly kept/removed some code, [raise an issue](https://github.com/wilsonzlin/hyperbuild/issues) with some relevant code that can be used to reproduce and investigate the issue.
data/lib/linux-ruby2.5 CHANGED
Binary file
data/lib/linux-ruby2.6 CHANGED
Binary file
data/lib/linux-ruby2.7 CHANGED
Binary file
data/lib/macos-ruby2.5 CHANGED
Binary file
data/lib/macos-ruby2.6 CHANGED
Binary file
data/lib/macos-ruby2.7 CHANGED
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyperbuild
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.36
4
+ version: 0.0.37
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wilson Lin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-20 00:00:00.000000000 Z
11
+ date: 2020-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fiddle