mangle: { mangle = { toplevel: true, } input: { var e = eval, x = 42; (function() { console.log(e("typeof x")); })(); } expect: { var e = eval, x = 42; (function() { console.log(e("typeof x")); })(); } expect_stdout: true } compress: { options = { collapse_vars: true, inline: true, unused: true, } input: { console.log(function() { var a = 42; return eval("typeof a"); }(), function(e) { var a = null; return e("typeof a"); }(eval), function(eval) { var a = false; return eval("typeof a"); }(eval), function(f) { var a = "STRING"; var eval = f; return eval("typeof a"); }(eval), function(g) { var a = eval; function eval() { return g; } return eval()("typeof a"); }(eval)); } expect: { console.log(function() { var a = 42; return eval("typeof a"); }(), (0, eval)("typeof a"), function(eval) { var a = false; return eval("typeof a"); }(eval), function(f) { var a = "STRING"; var eval = f; return eval("typeof a"); }(eval), function(g) { var a = eval; function eval() { return g; } return eval()("typeof a"); }(eval)); } expect_stdout: "number undefined boolean string undefined" } call_arg_1: { mangle = { toplevel: true, } input: { var z = "foo"; (function() { var z = false; (function(e) { var z = 42; e("console.log(typeof z)"); })(eval); })(); } expect: { var z = "foo"; (function() { var o = false; (function(o) { var a = 42; o("console.log(typeof z)"); })(eval); })(); } expect_stdout: true } call_arg_2: { mangle = { toplevel: true, } input: { function eval() { console.log("PASS"); } var z = "foo"; (function() { var z = false; (function(e) { var z = 42; e("console.log(typeof z)"); })(eval); })(); } expect: { function n() { console.log("PASS"); } var o = "foo"; (function() { var o = false; (function(o) { var n = 42; o("console.log(typeof z)"); })(n); })(); } expect_stdout: "PASS" } bef8f1c16b9e'>gnu: Fix typos....* gnu/packages/emacs-xyz.scm (emacs-piem)[description]: Fix use of "This packages". * gnu/packages/tex.scm (texlive-hardwrap)[description]: Fix spelling of "arbitrary". * gnu/packages/cran.scm (r-shinymanager)[description]: Fix spelling of "authentication". * gnu/packages/lisp-xyz.scm (sbcl-utils-kt)[description]: Fix spelling of "developed". * gnu/packages/crates-io.scm (rust-fs-utils-1)[description]: Fix spelling of "filesystem". [synopsis]: Likewise. * gnu/packages/haxe.scm (neko)[description]: Fix spelling of "functions". * gnu/packages/animation.scm (swftools)[description]: Fix needless pluralization of "information". * gnu/packages/lisp-xyz.scm (sbcl-slot-extra-options)[description]: Fix spelling of "inheritance". * gnu/packages/emacs-xyz.scm (emacs-js-comint)[description]: Fix spelling of "interpreter". * gnu/packages/coq.scm (coq-mathcomp-finmap)[description]: Fix spelling of "library". * gnu/services/lightdm.scm (lightdm-configuration): Fix spelling of "mechanism". * gnu/packages/emacs-xyz.scm (emacs-citar-org-roam)[synopsis]: Fix spelling of "package". * gnu/packages/games.scm (freerct)[description]: Fix spelling of "responsibilities". * gnu/packages/statistics.scm (r-mixedpower)[description]: Fix spelling of "separate". * gnu/packages/accessibility.scm (espeakup)[description]: Fix spelling of "speech". * gnu/packages/bioinformatics.scm (r-skitools)[synopsis]: Fix spelling of "utilities". * gnu/packages/golang.scm (go-github-com-savsgio-gotils)[synopsis]: Fix spelling of "utilities". [description]: Likewise. * gnu/system.scm (boot-file-system-service os): Fix spelling of "utilities". Vagrant Cascadian 2022-08-28services: Add lightdm-service-type....* gnu/services/lightdm.scm: New service. * tests/services/lightdm.scm: Test it. * doc/guix.texi (X Window): Document it. * gnu/local.mk (GNU_SYSTEM_MODULES): Register it. Co-authored-by: L p R n d n <guix@lprndn.info> Co-authored-by: Ricardo Wurmus <rekado@elephly.net> Maxim Cournoyer