<feed xmlns='http://www.w3.org/2005/Atom'>
<title>librejs.git, branch master</title>
<subtitle>Mirror of LibreJS at https://git.savannah.gnu.org/cgit/librejs.git
</subtitle>
<id>https://g.ypei.me/librejs.git/atom?h=master</id>
<link rel='self' href='https://g.ypei.me/librejs.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/'/>
<updated>2023-09-10T02:02:37+00:00</updated>
<entry>
<title>Fixing bypassing Function("...").</title>
<updated>2023-09-10T02:02:37+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>id@ypei.org</email>
</author>
<published>2023-09-10T02:02:37+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=e942bb98325d0a4fdb79cdc75782f065c0289d70'/>
<id>urn:sha1:e942bb98325d0a4fdb79cdc75782f065c0289d70</id>
<content type='text'>
It is similar to eval(). See,
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/Function

As a prior art, another extension did the blank ban of Function():
https://addons.mozilla.org/en-US/firefox/addon/noeval-disable-eval/

So let's ban it as well.

Bug reported at
https://lists.gnu.org/archive/html/bug-librejs/2023-09/msg00000.html
</content>
</entry>
<entry>
<title>changing license definition to json</title>
<updated>2022-10-13T06:21:56+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-10-13T06:15:23+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=46ecac9ab60b32ccc7b40a668938c84117de1b4d'/>
<id>urn:sha1:46ecac9ab60b32ccc7b40a668938c84117de1b4d</id>
<content type='text'>
and reuse it in the manual
</content>
</entry>
<entry>
<title>fixing a few problems with @license / @license-end regexes</title>
<updated>2022-10-13T04:48:44+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-10-13T04:48:44+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=dbfe1fb86719a18364f24bff57781aeb3262cb90'/>
<id>urn:sha1:dbfe1fb86719a18364f24bff57781aeb3262cb90</id>
<content type='text'>
- trailing whitespace, including newlines are consumed by the opneing
  regex (added a test case)

- added a test case for /* @license ... */ ... /* @license-end */
</content>
</entry>
<entry>
<title>let -&gt; const in tests</title>
<updated>2022-10-13T03:27:08+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-10-13T03:20:07+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=388b1b9218a5f8971b6c1cdeb9cfa67940e1d33e'/>
<id>urn:sha1:388b1b9218a5f8971b6c1cdeb9cfa67940e1d33e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>`// @license` should be at the beginning of a line (mod whitespace)</title>
<updated>2022-10-13T03:14:29+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-10-13T02:55:41+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=fcd816e95e73a78fd24a7e6baef709d7657d265f'/>
<id>urn:sha1:fcd816e95e73a78fd24a7e6baef709d7657d265f</id>
<content type='text'>
Otherwise the following will be processed for @license / @license-end
method:

// foo.js
// // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-3.0
// document.getElementById('bar');
// // @license-end
function foo(x, y) {
  console.log(x + y);
}

$ node ./utitlities/check-script foo.js

[
  true,
  '// // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-3.0\n' +
    "// document.getElementById('bar');\n" +
    '// // @license-end\n' +
    'function foo(x, y) {\n' +
    '  console.log(x + y);\n' +
    '}\n',
  '\n' +
    'Recognized license: "GNU General Public License (GPL) version 3".\n' +
    'Script appears to be trivial.'
]
</content>
</entry>
<entry>
<title>minor comment fix</title>
<updated>2022-10-12T07:37:26+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-10-12T07:37:26+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=88fa677b51b6b1eb814866ea08129a6b7cda9ddb'/>
<id>urn:sha1:88fa677b51b6b1eb814866ea08129a6b7cda9ddb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactoring: clean up main_background</title>
<updated>2022-09-27T03:22:20+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-09-27T03:22:20+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=9bdf30ef02f3f67a7c45e7ac64db3c1ef15340d4'/>
<id>urn:sha1:9bdf30ef02f3f67a7c45e7ac64db3c1ef15340d4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactoring ResponseHandler</title>
<updated>2022-09-27T02:49:27+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-09-27T02:49:27+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=e2230c23e4aa7a74ea34825856acf7edd8a61e04'/>
<id>urn:sha1:e2230c23e4aa7a74ea34825856acf7edd8a61e04</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactoring response handler to improve readability</title>
<updated>2022-09-27T02:43:24+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-09-27T02:40:23+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=c26ad83e2e0c29a6e18a36fcff86554815ea6bea'/>
<id>urn:sha1:c26ad83e2e0c29a6e18a36fcff86554815ea6bea</id>
<content type='text'>
</content>
</entry>
<entry>
<title>A better fix for bugs #58131</title>
<updated>2022-09-27T01:59:00+00:00</updated>
<author>
<name>Yuchen Pei</name>
<email>hi@ypei.me</email>
</author>
<published>2022-09-27T01:58:12+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/librejs.git/commit/?id=ad1a6ea51386feccfb1da0bc0fc4f5ace101b71b'/>
<id>urn:sha1:ad1a6ea51386feccfb1da0bc0fc4f5ace101b71b</id>
<content type='text'>
</content>
</entry>
</feed>
