-
-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
allow to use a lua without debug library #190
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could be not safe.
Could not be safe in what manner?
http/bit.lua
Outdated
@@ -11,7 +11,7 @@ This means we can ignore the differences between bit libraries. | |||
if _VERSION ~= "Lua 5.1" then | |||
-- Lua 5.3+ has built-in bit operators, wrap them in a function. | |||
-- Use debug.getinfo to get correct file+line numbers for loaded snippet | |||
local info = debug.getinfo(1, "Sl") | |||
local info = debug and debug.getinfo(1, "Sl") or { currentline = 14 } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't want to have to keep this line number in sync. Would be better to just set to -1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok.
-1
is also the value when using bytecode without debug info.
http/h2_error.lua
Outdated
@@ -52,7 +52,7 @@ function http_error_methods:new_traceback(message, stream_error, lvl) | |||
if lvl ~= 0 then | |||
-- COMPAT: should be passing `nil` message (not the empty string) | |||
-- see https://github.com/keplerproject/lua-compat-5.3/issues/16 | |||
e.traceback = debug.traceback("", lvl) | |||
e.traceback = debug and debug.traceback("", lvl) or "no debug.traceback" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't consider this valid: a function :new_traceback
should always gather a traceback or throw an error
at least, this library is not recommended. I want run code in production with a Lua interpreter compiled without this library |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How can this PR be tested to ensure regressions do not happen?
not with the test suite using |
I believe |
the use of debug library could be not safe.
this commit protects two calls of
debug
there are two other occurences of
debug
:busted
uses heavilydebug