You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I expected to have a context manager that I could use in a with statement
What actually happened:
I get the following error:
SyntaxError: ('Line 3: "__enter__" is an invalid variable name because it starts with "_"', 'Line 6: "__exit__" is an invalid variable name because it starts with "_"')
These methods (__enter__ and __exit__) are missing from transformer.ALLOWED_FUNC_NAMES
What version of Python and Zope/Addons I am using:
Currently you are not able to define a context manager inside restricted Python because the needed method names start with _.
But I see the value in being able to do so.
A pull request is welcome adding __enter__ and __exit__ to ALLOWED_FUNC_NAMES including a test showing that context managers can be defined and used afterwards in restricted Python.
BUG/PROBLEM REPORT (OR OTHER COMMON ISSUE)
If this ticket is accepted as a bug or feature request, I volunteer to work on it (once contributor agreement is approved).
What I did:
I tried to create a context manager in restricted python, here is the code:
What I expect to happen:
I expected to have a context manager that I could use in a
with
statementWhat actually happened:
I get the following error:
These methods (
__enter__
and__exit__
) are missing fromtransformer.ALLOWED_FUNC_NAMES
What version of Python and Zope/Addons I am using:
Python 3.8.2
RestrictedPython 5.2
macOS Monterey 12.5.1
The text was updated successfully, but these errors were encountered: