This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
This repository was archived by the owner on Nov 20, 2020. It is now read-only.

Repository files navigation

CGILua 5.1.4
http://keplerproject.org/cgilua
Overview
CGILua is a tool for creating dynamic Web pages and manipulating input data
from Web forms. CGILua allows the separation of logic and data handling from
the generation of pages, making it easy to develop web applications with Lua.
One of advantages of CGILua is its abstraction of the underlying Web server.
CGILua can be used with a variety of Web servers and, for each server, with
different launchers. A launcher is responsible for the interaction of CGILua
and the Web server, for example using ISAPI on IIS or mod_lua on Apache.
The reference implementation of CGILua launchers is Kepler. CGILua is free software and uses the same license as Lua 5.1.
You can also install CGILua using LuaRocks:
luarocks install cgilua
History
Version 5.1.4 [22/Mar/2010]
* fixed file upload reentrancy
* new launchers for cgilua that do not depend on kepler_init
* Correction on mkurlpath
Version 5.1.3 [9/Mar/2009]
* Strips utf-8 BOM from templates in lp.include
* Fixed reentrancy bug
* Fixed reset of cgilua.urlpath
Version 5.1.2 [19/May/2008]
* Added the cgilua.authentication module
* cgilua.print now separates arguments with tabs, like Lua print
* Now print and write are aliases to cgilua.print and cgilua.put.
* Now strips an eventual #! from top of Lua Pages files
* CGILua can now process sequential requests in the same Lua state
* Better error handling. Wraps error message in valid HTML
* Bug fixed: CGILua was ignoring CGILUA_TMP in Windows
* Corrected the URL handling for the dispatcher (bug found by Ronaldo Sugii)
* Better URL handling for different locales
* Handling multiple values in the generated URL (patch by Matt Campbell)
* Fixed file handle leak in loader.lua
* Fixed bug [#2630] - Including new files (bug found by Bruno Massa)
Version 5.1.1 [21/Nov/2007]
* Changed the security policy for scripts. Now scripts have access to all Lua globals, including the debug and os packages. It is up to the application developer to choose what policy to use
* If you are using Kepler, it is strongly suggested that you replace your previous CGILua config.lua file with the new one installed by Kepler and then merge the differences
* Added the cgilua.dispatcher module
* Added default handlers for a set of MIME types. The default handlers return only the content-type and conten-lenght headers for the files.
* Added functions cgilua.splitonfirst and cgilua.splitonlast
* Added functions cgilua.tmpfile and cgilua.tmpname
* Changed the use of "/test" for the session temporary directory checking (bug found by Yuri Takhteyev)
* Corrected the use of cgilua.QUERY in the session handling (bug found by Jim Madsen)
* Better handling of "application/xml" POST content types (patch by Ignacio Burgueño)
* Fixed Bug [#1910] - Bug in byte accounting in post.lua (found by Greg Bell)
Version 5.1.0 [23/Aug/2007]
* Uses Lua 5.1
* Added function cgilua.print (that uses tostring on its parameters)
* Added a generic dispatcher and the concept of CGILua Apps
* Replaced the cgi table used until CGILua 5.0 by two others cgilua.QUERY and cgilua.POST)
* Added fake "package" table to enable the user/programmer to create modules with global visibility
* Bug fix: return of HTTP status code
* Bug fix: close method was recreating the session file
* Correcting how LP handles strings with CR characters (Lua 5.0 would not mind, but Lua 5.1 does)
* Fixed a bug with lighttpd
Version 5.0.1 [20/Sep/2006]
* Uses Compat-5.1 Release 5.
* Caches Lua Pages template strings.
* New configuration examples.
* Improvements in the Session library.
* Removed the debug package from the user scripts environment.
* POST handling bug fixes (related to the text/plain content type).
Version 5.0 [23/Jul/2005]
* CGILua distribution includes now only the Lua files, the launchers have been moved to Kepler.
* The Stable library is now distributed with VEnv.
* Fixed a file upload bug in the CGI and Xavante launchers.
* cgilua.lp.include() now accepts an environment to run the preprocessed file in it.
Version 5.0 beta 2 [23/Dec/2004]
* Distribution bug fix: stable.lua was missing
Version 5.0 beta [15/Dec/2004]
* New ISAPI and Servlet Launchers.
* New Error Handling features.
* New persistent data feature (Stable).
* Uses the package model for Lua 5.1.
* Simpler User Session API.
* Small bug corrections
Version 5.0 alpha 3 [8/Jun/2004]
Version 5.0 alpha [21/Apr/2004]
Incompatibility with previous CGILua versions (5.0, 4.0 and 3.x)
* CGILua 5.1 uses Lua 5.1.
* The cgi table is now deprecated. See Receiving parameters for a more detailed explanation.
* The template tags have changed. See Lua pages for a more detailed explanation.
* The use of getenv calls to obtain CGI variables should be replaced by cgilua.servervariable calls.
Credits
CGILua 5.1
CGILua 5.1 is being maintained by André Carregal and Tomás Guisasola with contributions from Fábio Mascarenhas and others from the Kepler mailing list. CGILua 5.0
CGILua 5.0 was completely redesigned by Roberto Ierusalimschy, André Carregal and Tomás Guisasola as part of the Kepler Project. The implementation is compatible with Lua 5.0 and was coded by Tomás Guisasola with invaluable contributions by Ana Lúcia de Moura, Fábio Mascarenhas and Danilo Tuler. CGILua 5.0 development was sponsored by Fábrica Digital, FINEP and CNPq.
CGILua 4.0
Ana Lúcia de Moura adapted CGILua 3.2 to Lua 4.0, reimplemented some code and added a few improvements but this version was not officially distributed.
CGILua 3.x
CGILua was born as the evolution of an early system developed by Renato Ferreira Borges and André Clínio at TeCGraf. At the time (circa 1995) there were no CGI tools available and everything was done with shell scripts!
However, the main contribution to CGILua 3 was done by Anna Hester, who consolidated the whole tool and developed a consistent distribution with versions 3.1 and 3.2 (the number was an effort to follow Lua version numbers). This version was widely used on a great variety of systems.

About

CGILua is a tool for creating dynamic HTML pages and manipulating input data from Web forms.

Resources

Stars

2 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages