-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchangelog.html
146 lines (138 loc) · 6.23 KB
/
changelog.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen" />
<link rel="stylesheet" type="text/css" href="stylesheets/pygment_trac.css" media="screen" />
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print" />
<title>RegPack changelog</title>
</head>
<body>
<header>
<div class="container">
<h1>siorki.github.io</h1>
<h2>RegPack - change log</h2>
<section id="downloads" class="topright">
<a href="https://github.com/Siorki/RegPack" class="btn btn-github"><span class="icon"></span>View on GitHub</a>
</section>
</div>
</header>
<div class="container">
<section id="main_content">
<h3>v5.0.4 - July 2022</h3>
<p>Fixed bugs :</p>
<ul>
<li>#59 : Negated char class : optimal range merge</li>
<li>#74 : Line break removed, leaving no separator between instructions</li>
<li>#79 : Discard C-style and xml-style comments</li>
<li>#86 : Shorten context properties using available variable names</li>
<li>#96 : Do not remove newlines or trailing blanks in template literals</li>
<li>#97 : setTransform turns into getTransform on Chrome</li>
</ul>
<h3>v5.0.3 - February 2019</h3>
<p>Fixed bugs :</p>
<ul>
<li>#87 : Crusher always ignores first character when searching for patterns</li>
<li>#88 : Unable to allocate a variable name for setInterval()</li>
<li>#89 : Empty mapping crashes thermal viewer</li>
<li>#94 : Cannot read property 'first' of undefined</li>
</ul>
<h3>v5.0.2 - October 2018</h3>
<p>Fixed bugs :</p>
<ul>
<li>#76 : Reassign variable names : still considering (but not replacing) text in strings</li>
<li>#82 : Nested backticks in template literal causes string renaming module to miss occurrences</li>
<li>#83 : Don't use "\" as a token if avoiding it makes the output smaller</li>
<li>#85 : Suboptimal packing due to incorrect assumed length of escape sequence</li>
</ul>
<h3>v5.0.1 - February 2017</h3>
<p>Fixed bugs :</p>
<ul>
<li>#65 : RegPacked code contains invalid escape sequences</li>
<li>#70 : Line endings in bin/regpack</li>
<li>#72 : Optimization for refactor setInterval() when no initialization code</li>
<li>#73 : Unpacked source has "in" strings in wrong places</li>
<li>#75 : Variables leak into global space, should be declared local</li>
</ul>
<h3>v5.0.0 - February 2017</h3>
<p>New features :</p>
<ul>
<li>#26 : Add a heatmap vizualisation</li>
<li>#33 : [Online demo] Sync the input textarea with the URL's hash</li>
<li>#44 : Support for arrow function when refactoring setInterval</li>
<li>#47 : Support escaped characters in character class</li>
<li>#48 : Crusher phase - list patterns that are "almost" gains</li>
<li>#54 : Opt-out flag for ES6 features</li>
<li>#55 : Harmonize strings delimiters inside the code, to free " or ' as compression token</li>
<li>#56 : Support for default parameters when refactoring setInterval()</li>
<li>#63 : ES6 : Support syntax canvas.getContext`2d` in module "hash context"</li>
</ul>
<p>Fixed bugs :</p>
<ul>
<li>#50 : Crusher splits Unicode high/low surrogate pairs, producing incorrect strings</li>
<li>#52 : regPack.html - Base64 output fails for chars outside of the Latin1 range</li>
<li>#57 : $ in template literals</li>
<li>#58 : Hash context module uses digit as loop variable</li>
</ul>
<h3>v4.0.1 - February 2016</h3>
<p>Fixed bugs :</p>
<ul>
<li>#39 : Rename variable in unpacking loop and protect variables d and g by default</li>
<li>#40 : Fix use in Node and Better CLI support</li>
<li>#41 : Visualization misses patterns that end at the last character</li>
<li>#45 : Closing bracket ] not allowed in character class range definition</li>
</ul>
<h3>v4.0.0 - December 2015</h3>
<p>New features :</p>
<ul>
<li>#16 : Add an option for base64 encoded output</li>
<li>#19 : Use setInterval() to evaluate the unpacked code</li>
<li>#21 : Hash not only canvas functions, but also canvas properties</li>
<li>#23 : Extra hashing functions</li>
<li>#25 : Visualize the compressed patterns inside the source code</li>
</ul>
<p>Fixed bugs :</p>
<ul>
<li>#10 : Use varsNotReassigned in renameObjectMethods </li>
<li>#17 : Hashing code confuses first and second 2D context</li>
<li>#20 : Code packed in FF fails in Chrome because of deprecated context methods </li>
<li>#27 : Do not let variable renaming interfere with the use of the variable _</li>
<li>#28 : Unable to create 2D/GL/Audio context under Node.js</li>
<li>#29 : Variable renaming gives different results under FF / Chrome / Node.js</li>
<li>#30 : support for '!' character in WebGL context declaration</li>
<li>#31 : Single - character misinterpreted as range in RegExp</li>
</ul>
<h3>v3.0.2 - February 2015</h3>
<p>Fixed bugs :</p>
<ul>
<li>#9 : Canvas hashing can overwrite the "protected" variables</li>
<li>#11 : Different results between FF and other browsers, method array.fill() interferes with algorithm</li>
<li>#12 : Disable AudioContext hashing option if the browser does not support the WebAudio API</li>
</ul>
<h3>v3.0.1 - March 2014</h3>
<p>Fixed bugs</p>
<ul>
<li>#2 : support for Unicode characters in regular expression</li>
<li>#4 : original size showed without added escapes</li>
<li>#5 : correct size in bytes after preprocessing stage</li>
</ul>
<h3>v3.0 - February 2014</h3>
<p>Added preprocessing stage at the beginning of compression workflow.</p>
<ul>
<li>method hashing/renaming for 2D context, WebGL context and AudioContext</li>
<li>variable renaming to free tokens for the crusher</li>
</ul>
<p>Fixed bugs :</p>
<ul>
<li>Incorrect CR/LF handling for code using characters below 10</li>
<li>Character 127 ignored in negated char class regexp</li>
</ul>
<h3>v2.0 - April 2013</h3>
<p>Use of regular expressions with negated char class (listing characters not to match on).</p>
<hr>
<a href=regPack.html>Use RegPack now</a> - <a href=benchmarks.html>Benchmarks</a> - Change log - <a href="https://github.com/Siorki/RegPack/wiki">How it works</a>
</section>
</div>
</body>
</html>