From dae22597bd81d0d96370738010cac775bf31afea Mon Sep 17 00:00:00 2001 From: Nik Nyby Date: Thu, 22 Oct 2015 20:50:29 -0400 Subject: update manual with librejs development notes --- doc/librejs.info | 74 ++++++++++--- doc/librejs.texi | 52 +++++++++ .../html_node/Installation-Requirements.html | 6 +- .../html_node/LibreJS-Development-Notes.html | 117 +++++++++++++++++++++ .../html_node/Setting-Your-JavaScript-Free.html | 6 +- doc/manual/html_node/index.html | 14 ++- doc/manual/index.html | 4 +- doc/manual/librejs.dvi.gz | Bin 31560 -> 32350 bytes doc/manual/librejs.html | 68 +++++++++++- doc/manual/librejs.html.gz | Bin 20620 -> 21395 bytes doc/manual/librejs.html_node.tar.gz | Bin 22423 -> 23391 bytes doc/manual/librejs.info.tar.gz | Bin 18621 -> 19151 bytes doc/manual/librejs.pdf | Bin 204015 -> 206511 bytes doc/manual/librejs.texi.tar.gz | Bin 18364 -> 18873 bytes doc/manual/librejs.txt | 47 +++++++++ doc/manual/librejs.txt.gz | Bin 17654 -> 18124 bytes 16 files changed, 361 insertions(+), 27 deletions(-) create mode 100644 doc/manual/html_node/LibreJS-Development-Notes.html diff --git a/doc/librejs.info b/doc/librejs.info index e22957d..f3ee4f9 100644 --- a/doc/librejs.info +++ b/doc/librejs.info @@ -36,6 +36,8 @@ This manual is for GNU LibreJS (version 6.0.10.20151023, 23 October * JavaScript Detection:: How LibreJS detects nontrivial Javascript. * Free Licenses Detection:: List of licenses detected by LibreJS. * Setting Your JavaScript Free:: Information for website owners/maintainers. +* LibreJS Development Notes:: Documentation about the development of + LibreJS itself. * Installation Requirements:: Requirements to build and install LibreJS. * LibreJS Internals:: How LibreJS works under the hood. * Tests:: Test LibreJS and better understand it. @@ -424,7 +426,7 @@ information.  -File: librejs.info, Node: Setting Your JavaScript Free, Next: Installation Requirements, Prev: Free Licenses Detection, Up: Top +File: librejs.info, Node: Setting Your JavaScript Free, Next: LibreJS Development Notes, Prev: Free Licenses Detection, Up: Top 7 Setting Your JavaScript Free ****************************** @@ -581,7 +583,52 @@ web page:  -File: librejs.info, Node: Installation Requirements, Next: LibreJS Internals, Prev: Setting Your JavaScript Free, Up: Top +File: librejs.info, Node: LibreJS Development Notes, Next: Installation Requirements, Prev: Setting Your JavaScript Free, Up: Top + +8 LibreJS Development Notes +*************************** + +8.1 Running LibreJS from the source directory +============================================= + +Download Mozilla's Add-on SDK, then do something like this in the +LibreJS directory: + + cfx run -b `which icecat` + +8.2 Debugging +============= + +Uncomment lines 22 and 23 in 'lib/main.js' to enable printing of +'console.debug()' statements. + +8.3 Adding new whitelisted libraries +==================================== + +Run the 'data/script_libraries/gethash.sh' script, using the URL to a +JavaScript file as the argument, then add the output of that command to +'data/script_libraries/script-libraries.json'. + +8.4 Releasing a new version +=========================== + +Update the version number in: + * 'configure.ac' + * 'package.json' + * 'doc/version.texi' + * 'data/display_panel/content/display-panel.html' + * + Then run 'make info' to build the docs with 'gendocs.sh'. + * 'git commit' and 'git tag 6.0.4' + * Export a tarball: + * 'git archive --format=tar.gz --prefix=librejs-6.0.4 6.0.4 + >librejs-6.0.4.tar.gz' + * 'mv librejs-6.0.4.tar.gz ~/releases/librejs-6.0.4/' + * Make xpi file: 'cfx xpi --strip-sdk; mv librejs.xpi + librejs-6.0.4.xpi' + + +File: librejs.info, Node: Installation Requirements, Next: LibreJS Internals, Prev: LibreJS Development Notes, Up: Top Appendix A Installation Requirements ************************************ @@ -1235,16 +1282,17 @@ their use in free software.  Tag Table: Node: Top841 -Node: Overview1865 -Node: Disclaimer2712 -Node: Installation3208 -Node: How to Use4061 -Node: JavaScript Detection7303 -Node: Free Licenses Detection10711 -Node: Setting Your JavaScript Free17129 -Node: Installation Requirements23963 -Node: LibreJS Internals26120 -Node: Tests27283 -Node: GNU Free Documentation License31790 +Node: Overview2000 +Node: Disclaimer2847 +Node: Installation3343 +Node: How to Use4196 +Node: JavaScript Detection7438 +Node: Free Licenses Detection10846 +Node: Setting Your JavaScript Free17264 +Node: LibreJS Development Notes24098 +Node: Installation Requirements25470 +Node: LibreJS Internals27624 +Node: Tests28787 +Node: GNU Free Documentation License33294  End Tag Table diff --git a/doc/librejs.texi b/doc/librejs.texi index bdae9f4..a19047e 100644 --- a/doc/librejs.texi +++ b/doc/librejs.texi @@ -51,6 +51,8 @@ This manual is for GNU LibreJS (version @value{VERSION}, @value{UPDATED}). * JavaScript Detection:: How LibreJS detects nontrivial Javascript. * Free Licenses Detection:: List of licenses detected by LibreJS. * Setting Your JavaScript Free:: Information for website owners/maintainers. +* LibreJS Development Notes:: Documentation about the development of + LibreJS itself. * Installation Requirements:: Requirements to build and install LibreJS. * LibreJS Internals:: How LibreJS works under the hood. * Tests:: Test LibreJS and better understand it. @@ -715,6 +717,56 @@ remains intact. For more info on making your JavaScript LibreJS-compliant, see this web page: @url{https://www.gnu.org/software/librejs/free-your-javascript.html} +@node LibreJS Development Notes +@chapter LibreJS Development Notes + +@section Running LibreJS from the source directory +Download Mozilla's Add-on SDK, then do something like this in the LibreJS +directory: + +@example +cfx run -b `which icecat` +@end example + +@section Debugging +Uncomment lines 22 and 23 in @file{lib/main.js} to enable printing of +@code{console.debug()} statements. + +@section Adding new whitelisted libraries +Run the @file{data/script_libraries/gethash.sh} script, using the URL +to a JavaScript file as the argument, then add the output of that +command to @file{data/script_libraries/script-libraries.json}. + +@section Releasing a new version +Update the version number in: +@itemize @bullet +@item +@file{configure.ac} +@item +@file{package.json} +@item +@file{doc/version.texi} +@item +@file{data/display_panel/content/display-panel.html} +@item +@end itemize + +Then run @samp{make info} to build the docs with @file{gendocs.sh}. +@itemize @bullet +@item +@samp{git commit} and @samp{git tag 6.0.4} +@item +Export a tarball: +@itemize @bullet +@item +@samp{git archive --format=tar.gz --prefix=librejs-6.0.4 6.0.4 >librejs-6.0.4.tar.gz} +@item +@samp{mv librejs-6.0.4.tar.gz ~/releases/librejs-6.0.4/} +@end itemize +@item +Make xpi file: @samp{cfx xpi --strip-sdk; mv librejs.xpi librejs-6.0.4.xpi} +@end itemize + @node Installation Requirements @appendix Installation Requirements diff --git a/doc/manual/html_node/Installation-Requirements.html b/doc/manual/html_node/Installation-Requirements.html index 076c9e1..720d26b 100644 --- a/doc/manual/html_node/Installation-Requirements.html +++ b/doc/manual/html_node/Installation-Requirements.html @@ -26,7 +26,7 @@ Texts. A copy of the license is included in the section entitled - + + + + + + + + +
+ +

8 LibreJS Development Notes

+ + +

8.1 Running LibreJS from the source directory

+

Download Mozilla’s Add-on SDK, then do something like this in the LibreJS +directory: +

+
+
cfx run -b `which icecat`
+
+ + +

8.2 Debugging

+

Uncomment lines 22 and 23 in lib/main.js to enable printing of +console.debug() statements. +

+ +

8.3 Adding new whitelisted libraries

+

Run the data/script_libraries/gethash.sh script, using the URL +to a JavaScript file as the argument, then add the output of that +command to data/script_libraries/script-libraries.json. +

+ +

8.4 Releasing a new version

+

Update the version number in: +

    +
  • configure.ac +
  • package.json +
  • doc/version.texi +
  • data/display_panel/content/display-panel.html +
+ +

Then run ‘make info’ to build the docs with gendocs.sh. +

    +
  • git commit’ and ‘git tag 6.0.4’ +
  • Export a tarball: +
      +
    • git archive --format=tar.gz --prefix=librejs-6.0.4 6.0.4 >librejs-6.0.4.tar.gz’ +
    • mv librejs-6.0.4.tar.gz ~/releases/librejs-6.0.4/’ +
    +
  • Make xpi file: ‘cfx xpi --strip-sdk; mv librejs.xpi librejs-6.0.4.xpi’ +
+ + + + + + diff --git a/doc/manual/html_node/Setting-Your-JavaScript-Free.html b/doc/manual/html_node/Setting-Your-JavaScript-Free.html index 41e224c..04eb12d 100644 --- a/doc/manual/html_node/Setting-Your-JavaScript-Free.html +++ b/doc/manual/html_node/Setting-Your-JavaScript-Free.html @@ -25,7 +25,7 @@ Texts. A copy of the license is included in the section entitled - +