Date: Thu, 11 May 2023 07:22:49 -0600 From: Warner Losh <imp@bsdimp.com> To: Mark Johnston <markj@freebsd.org> Cc: Kyle Evans <kevans@freebsd.org>, src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>, "<dev-commits-src-main@freebsd.org>" <dev-commits-src-main@freebsd.org> Subject: Re: git: 3cb2f5f369ec - main - lualoader: add support for .lua configuration files Message-ID: <CANCZdfrcggo-mto5pcGP%2B%2B1QwLGuO2RUdPs3BfG80xP4uTXHQQ@mail.gmail.com> In-Reply-To: <ZFzrU2doEG3DZKrb@nuc> References: <202305110411.34B4BFEE047146@gitrepo.freebsd.org> <ZFzrU2doEG3DZKrb@nuc>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] On Thu, May 11, 2023, 7:19 AM Mark Johnston <markj@freebsd.org> wrote: > On Thu, May 11, 2023 at 04:11:15AM +0000, Kyle Evans wrote: > > The branch main has been updated by kevans: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3cb2f5f369ecfd6d15aeff2b47e21866551a20de > > > > commit 3cb2f5f369ecfd6d15aeff2b47e21866551a20de > > Author: Kyle Evans <kevans@FreeBSD.org> > > AuthorDate: 2023-05-11 04:10:53 +0000 > > Commit: Kyle Evans <kevans@FreeBSD.org> > > CommitDate: 2023-05-11 04:10:53 +0000 > > > > lualoader: add support for .lua configuration files > > > > If a file is specified in loader_conf_files that ends in '.lua', > lualoader > > will now load and execute that file. These may be used in place of a > > traditional loader.conf to use more complicated logic, where some > values > > may be set based on others or based on the environment that the C > bits has > > left us with. > > > > Lua scripts are run in a limited environment. In particular, it does > not get > > access to any modules or, in-fact, anything except environment > variable. > > > > A config.buildenv hook has been added so that a local module can add > > whatever it may need to to the environment. > > > > When a global var is set in the lua script, it does not immediately > alter > > the loader environment. Instead, the script's environment is > initially > > empty and processed only if the whole script executes successfully. > > Effectively, a lua configuration file either takes effect or it does > not, > > an error will not leave it in a half-baked state. > > > > Reviewed by: bcr (manpages), imp > > Differential Revision: https://reviews.freebsd.org/D28450 > > Should this be in RELNOTES? It seems like a very useful feature. > Yes.... unless Kyle objects :) Warner > [-- Attachment #2 --] <div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, May 11, 2023, 7:19 AM Mark Johnston <<a href="mailto:markj@freebsd.org">markj@freebsd.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, May 11, 2023 at 04:11:15AM +0000, Kyle Evans wrote:<br> > The branch main has been updated by kevans:<br> > <br> > URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=3cb2f5f369ecfd6d15aeff2b47e21866551a20de" rel="noreferrer noreferrer" target="_blank">https://cgit.FreeBSD.org/src/commit/?id=3cb2f5f369ecfd6d15aeff2b47e21866551a20de</a><br> > <br> > commit 3cb2f5f369ecfd6d15aeff2b47e21866551a20de<br> > Author: Kyle Evans <kevans@FreeBSD.org><br> > AuthorDate: 2023-05-11 04:10:53 +0000<br> > Commit: Kyle Evans <kevans@FreeBSD.org><br> > CommitDate: 2023-05-11 04:10:53 +0000<br> > <br> > lualoader: add support for .lua configuration files<br> > <br> > If a file is specified in loader_conf_files that ends in '.lua', lualoader<br> > will now load and execute that file. These may be used in place of a<br> > traditional loader.conf to use more complicated logic, where some values<br> > may be set based on others or based on the environment that the C bits has<br> > left us with.<br> > <br> > Lua scripts are run in a limited environment. In particular, it does not get<br> > access to any modules or, in-fact, anything except environment variable.<br> > <br> > A config.buildenv hook has been added so that a local module can add<br> > whatever it may need to to the environment.<br> > <br> > When a global var is set in the lua script, it does not immediately alter<br> > the loader environment. Instead, the script's environment is initially<br> > empty and processed only if the whole script executes successfully.<br> > Effectively, a lua configuration file either takes effect or it does not,<br> > an error will not leave it in a half-baked state.<br> > <br> > Reviewed by: bcr (manpages), imp<br> > Differential Revision: <a href="https://reviews.freebsd.org/D28450" rel="noreferrer noreferrer" target="_blank">https://reviews.freebsd.org/D28450</a><br> <br> Should this be in RELNOTES? It seems like a very useful feature.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Yes.... unless Kyle objects :)</div><div dir="auto"><br></div><div dir="auto">Warner</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> </blockquote></div></div></div>help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrcggo-mto5pcGP%2B%2B1QwLGuO2RUdPs3BfG80xP4uTXHQQ>
