aboutsummaryrefslogtreecommitdiff
path: root/lib/propmangle.js
AgeCommit message (Expand)Author
2015-08-05Fix mangling of property names which overwrite unmangleable properties...Fixes #747. Richard van Velzen
2015-06-09Add --mangle-regex optionJoao Carlos
2015-05-13fix again reserved propsMihai Bazon
2015-05-07Make reserved names take priority over the name cacheMihai Bazon
2015-04-22If name_cache is specified, do rename cached properties...(even if --mangle-props is not there) Mihai Bazon
2015-04-10Use the `before` visitor in mangle props...(works around a bug in our tree walker which, while cloning nodes, breaks references between labeled statements and break/continue labels) Mihai Bazon
2015-03-16Fix prop mangling...Even if not “defined”, do mangle if name exists in the cache. Mihai Bazon
2015-03-14Add property name mangler...We only touch properties that are present in an object literal, or which are assigned to. Example: x = { foo: 1 }; x.bar = 2; x["baz"] = 3; x[cond ? "qwe" : "asd"] = 4; console.log(x.stuff); The names "foo", "bar", "baz", "qwe" and "asd" will be mangled, and the resulting mangled names will be used for the same properties throughout the code. The "stuff" will not be, since it's just referenced but never assigned to. This *will* break most of the code out there, but could work on carefully written code: do not use eval, do not define methods or properties by walking an array of names, etc. Also, a comprehensive list of exclusions needs to be passed, to avoid mangling properties that are standard in JavaScript, DOM, used in external libraries etc. Mihai Bazon
ip'>Fixes <http://bugs.gnu.org/22391>. * tests/cran.scm (beautify-description: use double spacing, beautify-description: transform fragment into sentence). Move from here ... * tests/import-utils.scm: ... to here. New file. * Makefile.am (SCM_TESTS): Add import-utils. Ben Woodcroft 2016-01-20import: Add Bioconductor importer and updater....* guix/import/cran.scm (%bioconductor-updater, latest-bioconductor-release, bioconductor-package?): New procedures. (cran->guix-package): Support repositories other than CRAN. (%bioconductor-url, %bioconductor-svn-url): New variables. (description->package): Update signature to distinguish between packages from different repositories. (latest-release): Rename procedure ... (latest-cran-release): ... to this. (cran-package?): Do not assume all R packages are available on CRAN. * tests/cran.scm: Update tests. * guix/scripts/import/cran.scm: Add "--archive" option and default to CRAN. * guix/scripts/refresh.scm (%updaters): Add "%bioconductor-updater". * doc/guix.texi: Document Bioconductor importer and updater. Ricardo Wurmus 2015-12-11import: cran: Parse DESCRIPTION instead of HTML....* guix/import/cran.scm (description->alist, listify, beautify-description, description->package): New procedures. (table-datum, downloads->url, nodes->text, cran-sxml->sexp): Remove proceduces. (latest-release): Use parsed DESCRIPTION instead of SXML. * tests/cran.scm: Rewrite to match importer. Ricardo Wurmus 2015-09-24tests: cran: Use cran-uri in expected output....* tests/cran.scm: Expect output to use "cran-uri" procedure. Ricardo Wurmus 2015-08-31import: Add 'cran' importer....* guix/import/cran.scm: New file. * guix/scripts/import.scm: Add "cran" to 'importers'. * guix/scripts/import/cran.scm: New file. * tests/cran.scm: New file. * Makefile.am (MODULES): Add 'guix/import/cran.scm' and 'guix/scripts/import/cran.scm'. (SCM_TESTS): Add 'tests/cran.scm'. * doc/guix.texi (Invoking guix import): Document it. * po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'. Ricardo Wurmus