hyperbuild 0.0.28 → 0.0.37
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +28 -24
- data/lib/hyperbuild.rb +1 -1
- data/lib/linux-ruby2.5 +0 -0
- data/lib/linux-ruby2.6 +0 -0
- data/lib/{linux → linux-ruby2.7} +0 -0
- data/lib/macos-ruby2.5 +0 -0
- data/lib/macos-ruby2.6 +0 -0
- data/lib/macos-ruby2.7 +0 -0
- metadata +8 -4
- data/lib/macos +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b23b9c0aacb7a786afdf9c80453c9725810ff205db9de642a84384085a5e306
|
4
|
+
data.tar.gz: 8bfc69dba0c8ed40a6e399089a69bc46f1c5e2363a994d94e565b2ba397eb7de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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="
|
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.
|
29
|
-
[macOS](https://wilsonl.in/hyperbuild/bin/0.0.
|
30
|
-
[Linux](https://wilsonl.in/hyperbuild/bin/0.0.
|
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.
|
47
|
+
hyperbuild = "0.0.37"
|
48
48
|
```
|
49
49
|
|
50
50
|
##### Use
|
@@ -99,11 +99,17 @@ hyperbuild is available via [JNI](https://github.com/jni-rs/jni-rs), and support
|
|
99
99
|
|
100
100
|
##### Get
|
101
101
|
|
102
|
-
|
102
|
+
Add as a Maven dependency:
|
103
103
|
|
104
|
-
|
104
|
+
```xml
|
105
|
+
<dependency>
|
106
|
+
<groupId>in.wilsonl.hyperbuild</groupId>
|
107
|
+
<artifactId>hyperbuild</artifactId>
|
108
|
+
<version>0.0.37</version>
|
109
|
+
</dependency>
|
110
|
+
```
|
105
111
|
|
106
|
-
|
112
|
+
##### Use
|
107
113
|
|
108
114
|
```java
|
109
115
|
import in.wilsonl.hyperbuild.Hyperbuild;
|
@@ -120,18 +126,14 @@ class Main {
|
|
120
126
|
<details>
|
121
127
|
<summary><strong>Python</strong></summary>
|
122
128
|
|
123
|
-
hyperbuild is available as a [native module](https://github.com/PyO3/pyo3), and supports CPython (the default Python interpreter) versions 3.5 and higher.
|
129
|
+
hyperbuild is [on PyPI](https://pypi.org/project/hyperbuild), available as a [native module](https://github.com/PyO3/pyo3), and supports CPython (the default Python interpreter) versions 3.5 and higher.
|
124
130
|
|
125
131
|
##### Get
|
126
132
|
|
127
|
-
|
128
|
-
|
129
|
-
Rename the file to `hyperbuild.pyd` on Windows or `hyperbuild.so` on macOS/Linux.
|
133
|
+
Add the PyPI project as a dependency and install it using `pip` or `pipenv`.
|
130
134
|
|
131
135
|
##### Use
|
132
136
|
|
133
|
-
Make sure the native module can be [found by Python](https://docs.python.org/3/tutorial/modules.html#the-module-search-path). This is usually done by placing it into a folder declared in the `PYTHONPATH` environment variable or `sys.path` value, or the same folder as the script that will import it.
|
134
|
-
|
135
137
|
```python
|
136
138
|
import hyperbuild
|
137
139
|
|
@@ -143,18 +145,18 @@ minified = hyperbuild.minify("<p> Hello, world! </p>")
|
|
143
145
|
<details>
|
144
146
|
<summary><strong>Ruby</strong></summary>
|
145
147
|
|
146
|
-
hyperbuild is available as a [native module](https://github.com/danielpclark/rutie) for macOS and Linux, and supports Ruby versions 2.5 and higher.
|
148
|
+
hyperbuild is published on [RubyGems](https://rubygems.org/gems/hyperbuild), available as a [native module](https://github.com/danielpclark/rutie) for macOS and Linux, and supports Ruby versions 2.5 and higher.
|
147
149
|
|
148
150
|
##### Get
|
149
151
|
|
150
|
-
|
152
|
+
Add the library as a dependency to `Gemfile` or `*.gemspec`.
|
151
153
|
|
152
154
|
##### Use
|
153
155
|
|
154
156
|
```ruby
|
155
157
|
require 'hyperbuild'
|
156
158
|
|
157
|
-
print
|
159
|
+
print Hyperbuild.minify "<p> Hello, world! </p>"
|
158
160
|
```
|
159
161
|
|
160
162
|
</details>
|
@@ -363,10 +365,10 @@ Any entities in attribute values are decoded, and then the shortest representati
|
|
363
365
|
- Single quoted, with any `'` encoded.
|
364
366
|
- Unquoted, with `"`/`'` first character (if applicable), `>` last character (if applicable), and any whitespace encoded.
|
365
367
|
|
366
|
-
`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.
|
367
369
|
|
368
370
|
[Boolean attribute](./gen/attrs.json) values are removed.
|
369
|
-
[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.
|
370
372
|
|
371
373
|
`type` attributes on `script` tags with a value equaling a [JavaScript MIME type](https://mimesniff.spec.whatwg.org/#javascript-mime-type) are removed.
|
372
374
|
|
@@ -378,10 +380,12 @@ Spaces are removed between attributes if possible.
|
|
378
380
|
|
379
381
|
Entities are decoded if valid (see relevant parsing section) and their decoded characters as UTF-8 is shorter or equal in length.
|
380
382
|
|
381
|
-
Numeric entities that do not refer to a valid Unicode Scalar Value are
|
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).
|
382
384
|
|
383
385
|
If an entity is unintentionally formed after decoding, the leading ampersand is encoded, e.g. `&amp;` becomes `&amp;`. This is done as `&` 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`.
|
384
386
|
|
387
|
+
Right chevrons after any decoding in text are encoded to `>` if possible or `>` otherwise.
|
388
|
+
|
385
389
|
### Comments
|
386
390
|
|
387
391
|
Comments are removed.
|
@@ -398,7 +402,7 @@ hyperbuild simply does HTML minification, and almost does no syntax checking or
|
|
398
402
|
|
399
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>`
|
400
404
|
|
401
|
-
However, there are some syntax requirements for speed and sanity
|
405
|
+
However, there are some syntax requirements for speed and sanity.
|
402
406
|
|
403
407
|
### Tags
|
404
408
|
|
@@ -423,7 +427,7 @@ Numeric character references that do not reference a valid [Unicode Scalar Value
|
|
423
427
|
Backticks (`` ` ``) are not valid quote marks and not interpreted as such.
|
424
428
|
However, backticks are valid attribute value quotes in Internet Explorer.
|
425
429
|
|
426
|
-
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
|
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.
|
427
431
|
|
428
432
|
### Script and style
|
429
433
|
|
@@ -433,6 +437,6 @@ hyperbuild does **not** handle [escaped and double-escaped](./notes/Script%20dat
|
|
433
437
|
|
434
438
|
## Issues and contributions
|
435
439
|
|
436
|
-
|
440
|
+
Pull requests and any contributions welcome!
|
437
441
|
|
438
|
-
If hyperbuild did something unexpected,
|
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/hyperbuild.rb
CHANGED
data/lib/linux-ruby2.5
ADDED
Binary file
|
data/lib/linux-ruby2.6
ADDED
Binary file
|
data/lib/{linux → linux-ruby2.7}
RENAMED
Binary file
|
data/lib/macos-ruby2.5
ADDED
Binary file
|
data/lib/macos-ruby2.6
ADDED
Binary file
|
data/lib/macos-ruby2.7
ADDED
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.
|
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-
|
11
|
+
date: 2020-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fiddle
|
@@ -33,8 +33,12 @@ extra_rdoc_files: []
|
|
33
33
|
files:
|
34
34
|
- README.md
|
35
35
|
- lib/hyperbuild.rb
|
36
|
-
- lib/linux
|
37
|
-
- lib/
|
36
|
+
- lib/linux-ruby2.5
|
37
|
+
- lib/linux-ruby2.6
|
38
|
+
- lib/linux-ruby2.7
|
39
|
+
- lib/macos-ruby2.5
|
40
|
+
- lib/macos-ruby2.6
|
41
|
+
- lib/macos-ruby2.7
|
38
42
|
homepage: https://github.com/wilsonzlin/hyperbuild
|
39
43
|
licenses:
|
40
44
|
- MIT
|
data/lib/macos
DELETED
Binary file
|