[issue45413] Add install scheme for virtual environments
Filipe Laíns added the comment: With PR 31034 merged, we can now mark this as resolved. As mentioned in the PR, there are still some concerns about maintainability and avoiding similar issues to happen in the future. That can be done later, as people find time to work on it. Thanks! -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45413] Add install scheme for virtual environments
Filipe Laíns added the comment: I don't think the proposal is incompatible with what I discussed. I haven't been super clear on my opinions on the implementation, so let me try to clarify them. - I think that we should use a static scheme, accessible on all platforms. - If this scheme needs to be independently defined for each platform, we should have different variants, available on all platforms, but still keep a generic named one, as an alias to the platform specific scheme - We should not be re-using/aliasing existing schemes, particularly ones that are prone to downstream patching So, my proposal would be to define a single static scheme, and changing the interpreter path initialization logic to hardcode its paths when on virtual environments. If this presents any issue, and requires the scheme to be different for different platforms, we should add platform specific schemes and make the main one an alias to the correct scheme. Hopefully that clarifies things up a bit. We should sort it out as soon as possible and update the PR, I don't think the PR as-is is the best approach. What do you think? -- ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45413] Add install scheme for virtual environments
Filipe Laíns added the comment: I agree. -- ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46171] venv module produces spurious warning that location has moved
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue46171> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46125] Test the preferred API instead of relying on legacy for coverage
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue46125> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46118] Migrate importlib.resources into a package
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue46118> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue46148] Optimize pathlib
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue46148> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue25625] "chdir" Contex manager for pathlib
Filipe Laíns added the comment: Can you share the link? I haven't seen anything recent. Is it under other thread? -- ___ Python tracker <https://bugs.python.org/issue25625> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45653] Freeze the encodings module.
Change by Filipe Laíns : -- stage: needs patch -> patch review ___ Python tracker <https://bugs.python.org/issue45653> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45653] Freeze the encodings module.
Filipe Laíns added the comment: I have already opened up the PR, but I can change if desired. -- stage: patch review -> needs patch ___ Python tracker <https://bugs.python.org/issue45653> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45653] Freeze the encodings module.
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27599 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/29331 ___ Python tracker <https://bugs.python.org/issue45653> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45653] Freeze the encodings module.
Filipe Laíns added the comment: I just tested partially freezing the package, and it seems to working fine :) -- ___ Python tracker <https://bugs.python.org/issue45653> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45272] 'os.path' should not be a frozen module
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27598 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/29329 ___ Python tracker <https://bugs.python.org/issue45272> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45649] Add tarinfo.Path
Filipe Laíns added the comment: That is good to know. This isn't very high on my priority list, but I will try to explore when I have some time. -- ___ Python tracker <https://bugs.python.org/issue45649> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45649] Add tarinfo.Path
New submission from Filipe Laíns : It would be helpful to have a pathlib-compatible object in tarfile, similarly to zipfile.Path. -- components: Library (Lib) messages: 405194 nosy: FFY00, jaraco priority: normal severity: normal status: open title: Add tarinfo.Path type: enhancement versions: Python 3.11 ___ Python tracker <https://bugs.python.org/issue45649> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45591] PathFinder does not find namespace packages children
Filipe Laíns added the comment: Okay, I think that makes sense to me. Thank you!! -- ___ Python tracker <https://bugs.python.org/issue45591> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45591] PathFinder does not find namespace packages children
Filipe Laíns added the comment: Thank you for clarifying, that does work. This is surprising behavior to me, do you recall what was the reasoning for this design? Or is there some discussion you can point me to? And sorry for bothering, I know I am asking too many questions, but I'd like to understand the importlib design -- ___ Python tracker <https://bugs.python.org/issue45591> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45545] chdir __exit__ is not safe
Change by Filipe Laíns : -- pull_requests: +27483 pull_request: https://github.com/python/cpython/pull/29220 ___ Python tracker <https://bugs.python.org/issue45545> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45545] chdir __exit__ is not safe
Filipe Laíns added the comment: s/if we can chdir/if we can't chdir/ -- ___ Python tracker <https://bugs.python.org/issue45545> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45545] chdir __exit__ is not safe
Filipe Laíns added the comment: Alternatively, can't we just os.chdir(self._old_cwd) in __enter__ and preemptively fail? IMO it's probably better to just straight up fail if we can chdir back to the original directory than to have relatively fragile recovery logic. -- ___ Python tracker <https://bugs.python.org/issue45545> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45591] PathFinder does not find namespace packages children
Filipe Laíns added the comment: Ah, this was not obvious to me! I did not specify a path, but as it defaults to `sys.path` and `namespace.a` is available there, I was expecting it to find it. One of the things that threw me off was the first arguments being called `fullname`, which I assumed implied that `PathFinder` was able to do a recursive search. This indeed works: ``` $ ./python Python 3.11.0a1+ (heads/main:9e05da6224, Oct 23 2021, 20:36:14) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from importlib.machinery import PathFinder >>> spec = PathFinder.find_spec('namespace') >>> PathFinder.find_spec('a', path=spec.submodule_search_locations) ModuleSpec(name='a', loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f245d0d3e80>, origin='/home/anubis/git/cpython/namespace/a.py') ``` I should have validated if normal packages also had the same behavior, which they do, before opening this -.- I am curious, what is `fullname` supposed to mean then? "full" in what sense? -- resolution: -> not a bug stage: -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue45591> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45592] NamespaceLoader does not implement create_module or exec_module
New submission from Filipe Laíns : NamespaceLoader currently does not implement create_module or exec_module, which is problematic since load_module is deprecated. The create_module docstring is the same as _LoaderBasics: ``` def create_module(self, spec): """Use default semantics for module creation.""" ``` Is it intended to be empty, or is NamespaceLoader unfinished? If this is intended, how should we create the module instead? If there is other part of the code dealing this, via a fallback in case the loader does not implement this method, wouldn't it make sense to put that in in the loader itself for standalone use? -- messages: 404913 nosy: FFY00, brett.cannon, eric.snow, ncoghlan priority: normal severity: normal status: open title: NamespaceLoader does not implement create_module or exec_module ___ Python tracker <https://bugs.python.org/issue45592> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45591] PathFinder does not find namespace packages children
New submission from Filipe Laíns : ``` $ tree namespace namespace/ └── a.py 0 directories, 1 file ``` ``` $ ./python Python 3.9.7 (default, Oct 10 2021, 15:13:22) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from importlib.machinery import PathFinder >>> PathFinder.find_ PathFinder.find_distributions( PathFinder.find_module( PathFinder.find_spec( >>> PathFinder.find_spec('namespace') ModuleSpec(name='namespace', loader=None, submodule_search_locations=_NamespacePath(['/home/anubis/git/cpython/namespace'])) >>> PathFinder.find_spec('namespace.a') ``` Currently, it is unable to find namespace.a, but it should: ``` Python 3.11.0a1+ (heads/main:9e05da6224, Oct 23 2021, 20:36:14) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from importlib.machinery import PathFinder >>> spec = PathFinder.find_spec('namespace') >>> spec.loader.load_module('namespace.a') :283: DeprecationWarning: the load_module() method is deprecated and slated for removal in Python 3.12; use exec_module() instead )> ``` I can make a PR, but just wanted to make sure the current behavior is not intended. -- messages: 404912 nosy: FFY00, brett.cannon, eric.snow, ncoghlan priority: normal severity: normal status: open title: PathFinder does not find namespace packages children ___ Python tracker <https://bugs.python.org/issue45591> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40350] modulefinder chokes on numpy - dereferencing None in spec.loader
Filipe Laíns added the comment: I opened up a new PR that should fix this properly. The root issue was that PathFinder was not setting the loader attribute for namespace packages in the spec, which it should. After fixing that, _find_module just needed to be updated to deal with NamespaceLoader. ``` $ tree namespace namespace/ └── a.py 0 directories, 1 file $ cat test-bpo-40350.py import namespace.a ``` ``` $ ./python Python 3.11.0a1+ (heads/main:9e05da6224, Oct 23 2021, 20:36:14) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import modulefinder >>> modulefinder.ModuleFinder('test-bpo-40350.py') >>> f = modulefinder.ModuleFinder('test-bpo-40350.py') >>> f. KeyboardInterrupt >>> m = modulefinder.ModuleFinder() >>> f = modulefinder.ModuleFinder() >>> f.run_script('test-bpo-40350.py') >>> f.modules.items() dict_items([('__main__', Module('__main__', 'test-bpo-40350.py')), ('namespace', Module('namespace', _NamespacePath(['/home/anubis/git/cpython/namespace'])))]) ``` Previously: ``` $ python Python 3.9.7 (default, Oct 10 2021, 15:13:22) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import modulefinder >>> f = modulefinder.ModuleFinder() >>> f.run_script('test-bpo-40350.py') Traceback (most recent call last): File "", line 1, in File "/usr/lib/python3.9/modulefinder.py", line 161, in run_script self.load_module('__main__', fp, pathname, stuff) File "/usr/lib/python3.9/modulefinder.py", line 357, in load_module self.scan_code(co, m) File "/usr/lib/python3.9/modulefinder.py", line 430, in scan_code self._safe_import_hook(name, m, fromlist, level=0) File "/usr/lib/python3.9/modulefinder.py", line 375, in _safe_import_hook self.import_hook(name, caller, level=level) File "/usr/lib/python3.9/modulefinder.py", line 173, in import_hook q, tail = self.find_head_package(parent, name) File "/usr/lib/python3.9/modulefinder.py", line 229, in find_head_package q = self.import_module(head, qname, parent) File "/usr/lib/python3.9/modulefinder.py", line 316, in import_module fp, pathname, stuff = self.find_module(partname, File "/usr/lib/python3.9/modulefinder.py", line 508, in find_module return _find_module(name, path) File "/usr/lib/python3.9/modulefinder.py", line 77, in _find_module if spec.loader.is_package(name): AttributeError: 'NoneType' object has no attribute 'is_package' ``` -- ___ Python tracker <https://bugs.python.org/issue40350> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40350] modulefinder chokes on numpy - dereferencing None in spec.loader
Change by Filipe Laíns : -- pull_requests: +27465 pull_request: https://github.com/python/cpython/pull/29196 ___ Python tracker <https://bugs.python.org/issue40350> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue11602] python-config code should be in sysconfig
Filipe Laíns added the comment: I can help out, but would like to wait until we get a resolution in GH-25718 as it will likely conflict. -- ___ Python tracker <https://bugs.python.org/issue11602> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40899] Document exceptions raised by importlib.import
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue40899> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45364] Add more documentation for ModuleSpec.loader_state.
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45364> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45272] 'os.path' should not be a frozen module
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45272> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45020] Freeze all modules imported during startup.
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45020> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue22789] Compress the marshalled data in PYC files
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue22789> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1353344] python.desktop
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue1353344> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue11602] python-config code should be in sysconfig
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue11602> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- pull_requests: +27464 pull_request: https://github.com/python/cpython/pull/29194 ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue33439] python-config.py should be part of the stdlib
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue33439> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Change by Filipe Laíns : -- pull_requests: +27461 pull_request: https://github.com/python/cpython/pull/29190 ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45582] Rewrite getpath.c in Python
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45582> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Change by Filipe Laíns : -- pull_requests: +27460 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/29189 ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Filipe Laíns added the comment: FROZEN_EXCLUDED is set when frozen modules have no code associated with them, and the _freeze_module tool doesn't seem to be able to produce such output. We could remove it and replace it with an assert, but that does not give us much benefit, so we should probably leave it be and just document it a little bit better. -- stage: patch review -> needs patch ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27454 stage: needs patch -> patch review pull_request: https://github.com/python/cpython/pull/29180 ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Filipe Laíns added the comment: I was looking at the code and it seems PyImport_ImportFrozenModuleObject does not set an error on FROZEN_BAD_NAME, it just returns 0, is this intended? If I pass a bogus object, it will just return 0. This does not seem right. Currently, FROZEN_BAD_NAME is never passed to set_frozen_error. -- ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- pull_requests: +27447 pull_request: https://github.com/python/cpython/pull/29174 ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- pull_requests: +27446 pull_request: https://github.com/python/cpython/pull/29173 ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45545] chdir __exit__ is not safe
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45545> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45547] Modernize the importlib loaders
Change by Filipe Laíns : -- title: Modenize the importlib loaders -> Modernize the importlib loaders ___ Python tracker <https://bugs.python.org/issue45547> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45547] Modenize the importlib loaders
New submission from Filipe Laíns : ResourceLoader[1] is deprecated in favor of ResourceReader, which itself is surpassed by TraversableResources. Would it make sense to replace ResourceLoader usages with ResourceReader in the importlib loaders? And perhaps, would it make sense to replace them with the files()/Traversable protocol instead? IMO this could simplify the code a bit, but that's subjective I guess, and better re-use the bytecode caching mechanism in SourceLoader, by providing an equivalent based on files()/Traversable instead. This could also help push to add support for non filesystem based loaders in other parts of the code, like py_compile, which currently only supports operations on the filesystem. Is this something we are interested in -- modernizing the importlib loaders with, arguably, better abstractions -- or do we want to keep the old protocols around? [1] https://docs.python.org/3/library/importlib.html#importlib.abc.ResourceLoader -- messages: 404540 nosy: FFY00, barry, brett.cannon, eric.snow, jaraco, ncoghlan priority: normal severity: normal status: open title: Modenize the importlib loaders ___ Python tracker <https://bugs.python.org/issue45547> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue33277] Deprecate __loader__, __package__, __file__, and __cached__ on modules
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue33277> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- resolution: -> fixed stage: patch review -> resolved status: open -> closed type: -> enhancement ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45520] Frozen dataclass deep copy doesn't work with __slots__
Change by Filipe Laíns : -- nosy: +eric.smith ___ Python tracker <https://bugs.python.org/issue45520> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45449] Document that collections.abc types are subscriptable
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27318 stage: -> patch review pull_request: https://github.com/python/cpython/pull/29047 ___ Python tracker <https://bugs.python.org/issue45449> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue42174] shutil.get_terminal_size() returns 0 when run in a pty
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27317 stage: -> patch review pull_request: https://github.com/python/cpython/pull/29046 ___ Python tracker <https://bugs.python.org/issue42174> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- pull_requests: +27316 pull_request: https://github.com/python/cpython/pull/29045 ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Filipe Laíns added the comment: Actually, since TraversableResources is simply implementing ResourceReader, the protocol is documented. We could reference ResourceReader in the docstring though. -- ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- keywords: +patch pull_requests: +27310 stage: -> patch review pull_request: https://github.com/python/cpython/pull/29039 ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45516] Add protocol description to the Traversable and TraversableResources documentation
Change by Filipe Laíns : -- assignee: docs@python components: Documentation nosy: FFY00, docs@python priority: normal severity: normal status: open title: Add protocol description to the Traversable and TraversableResources documentation ___ Python tracker <https://bugs.python.org/issue45516> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44210] Make importlib.metadata._meta.PackageMetadata public
Change by Filipe Laíns : -- stage: patch review -> resolved status: open -> closed ___ Python tracker <https://bugs.python.org/issue44210> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45131] `venv` → `ensurepip` may read local `setup.cfg` and fail mysteriously
Change by Filipe Laíns : -- nosy: +dstufft, ncoghlan, pradyunsg ___ Python tracker <https://bugs.python.org/issue45131> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue42174] shutil.get_terminal_size() returns 0 when run in a pty
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue42174> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45445] Fail if an invalid -X option is provided
Change by Filipe Laíns : -- resolution: -> fixed stage: patch review -> resolved status: open -> closed type: -> enhancement versions: +Python 3.11 ___ Python tracker <https://bugs.python.org/issue45445> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45427] importlib.readers.MultiplexedPath
Filipe Laíns added the comment: *realize I did *not* point this out :facepalm: sorry! -- ___ Python tracker <https://bugs.python.org/issue45427> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45427] importlib.readers.MultiplexedPath
Filipe Laíns added the comment: Just to clarify, as I realize I did point this out in my reply, Traversable[1][2] is the protocol that objects returned by importlib.resources.files implement. [1] https://docs.python.org/3/library/importlib.html#importlib.abc.Traversable [2] https://github.com/python/cpython/blob/00ffc4513df7b89a168e88da4d1e3ac367f7682f/Lib/importlib/abc.py#L355 -- ___ Python tracker <https://bugs.python.org/issue45427> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45427] importlib.readers.MultiplexedPath
Filipe Laíns added the comment: The Traversable protocol does not guarantee you access to the file-system path. pathlib.Path happens to give you that information, but other traversables are not required to. The main reasoning for this is that traversables do not need to exist on the file-system, we can be reading from a zip, database, etc. str(path) does give you the file-system path on pathlib.Path, but there is no guarantee about the value of __str__ on other traversables. My recommendation here would be to use os.fspath[1] instead if you want to try getting the file-system path from traversables. I don't really know what you are trying to accomplish, but I would recommend that you try designing your code directly on top of the Traversable interface, which should make it work on anything we return in importlib.resources.files. If you actually need a file-system path, to pass to an external program or something like that, you can use the importlib.resources.as_file[2] helper. bpo-44200 proposes documenting that traversables should implement __fspath__ if they represent a file-system path, which could help a bit with your issue. [1] https://docs.python.org/3/library/os.html#os.fspath [2] https://docs.python.org/3/library/importlib.html#importlib.resources.as_file -- nosy: +FFY00, jaraco ___ Python tracker <https://bugs.python.org/issue45427> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45486] Stop using internal APIs in _xxsubinterpretersmodule.c.
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45486> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45379] Improve errors related to frozen modules.
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45379> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45449] Document that collections.abc types are subscriptable
Filipe Laíns added the comment: Just to clarify: some type checkers will still allow using them as type hints in Python versions before 3.9, but `from __future__ import annotations` needs to be used so that we don't error out at ruuntime. -- ___ Python tracker <https://bugs.python.org/issue45449> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45449] Document that collections.abc types are subscriptable
New submission from Filipe Laíns : Since 3.9, the types in collections.abc are subscriptable and can be used as type hints, but this is not documented. We should write something similar to what's on the typing module documentation for the deprecated types. -- assignee: docs@python components: Documentation messages: 403744 nosy: FFY00, docs@python, gvanrossum, kj priority: normal severity: normal status: open title: Document that collections.abc types are subscriptable type: enhancement versions: Python 3.10, Python 3.11, Python 3.9 ___ Python tracker <https://bugs.python.org/issue45449> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45413] Add install scheme for virtual environments
Filipe Laíns added the comment: Yes, we could have several schemes, but I think having only one is more sensible. The implementation would be fairly easy. We would just copy the "nt" scheme if on Windows, otherwise "posix_prefix". -- ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45413] Add install scheme for virtual environment
New submission from Filipe Laíns : Python 3.10 introduced sysconfig._get_preferred_schemes[1], a mechanism to allow downstream distributors to overwrite the default install scheme. This is done to support downstream modifications where distributors change the installation layout (eg. different site-packages directory). So, distributors will change the default scheme to one that correctly represents their layout. This presents an issue for projects/people that need to bootstrap virtual environments, like virtualenv (see [2]). As distributors might now be customizing the default install scheme, there is no guarantee that the information returned by sysconfig.get_default_scheme/get_paths is correct for the virtual environment, the only guarantee we have is that it correct for the *current* environment. When bootstrapping a virtual environment, we need to know its layout, so that we can place the files in the correct locations. The usual solution in situations like this would be to invoke the interpreter we are targeting to get the correct information (eg. path/to/python -m sysconfig), but that is not possible here as the environment does not exist yet -- we are the ones trying to create it. To solve this issue, I propose the addition of a "virtual" or "venv" install scheme, for virtual environments. The idea is that virtual environments (defined by the presence of pyvenv.cfg, see [3][4]) will always use this scheme, they will use the paths specified by this scheme and sysconfig.get_default_scheme will always return it (_get_preferred_schemes would have no effect here!). This makes it possible to know the virtual environment layout for another interpreter, via sysconfig.get_paths(scheme='virtual'). I am not cure if this should be adopted in 3.10 or 3.11, as it effectively makes it impossible to reliably construct virtual environments, and requires workarounds such as [5], that pretty much implements this proposal with non-standardized downstream patches. [1] https://docs.python.org/3/library/sysconfig.html#sysconfig._get_preferred_schemes [2] https://github.com/pypa/virtualenv/issues/2208 [3] https://docs.python.org/3/library/site.html?highlight=pyvenv.cfg [4] https://docs.python.org/3/library/venv.html?highlight=pyvenv.cfg [5] https://github.com/pypa/virtualenv/pull/2209 -- assignee: FFY00 messages: 403485 nosy: FFY00, gaborjbernat, hroncok, jaraco priority: normal severity: normal status: open title: Add install scheme for virtual environment type: enhancement versions: Python 3.10, Python 3.11 ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45413] Add install scheme for virtual environments
Change by Filipe Laíns : -- title: Add install scheme for virtual environment -> Add install scheme for virtual environments ___ Python tracker <https://bugs.python.org/issue45413> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45371] distutil's runtime_library_dir (rpath) option doesn't work with clang
Filipe Laíns added the comment: The fix that was merged seems a bit hacky to me -- it changes the _is_gcc check so that it returns True on clang. Even though distutils is deprecated and no longer synced externally, if someone needs to issue a similar fix, this might trip them over. I would recommend replacing it with [1], from the now externally maintained distutils module. [1] https://github.com/pypa/distutils/pull/55 -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45371> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44603] REPL: exit when the user types exit instead of asking them to explicitly type exit()
Filipe Laíns added the comment: > Without disagreeing with the general sentiment, just note that you can always > do Ctrl-D. That is true, but there are a couple setups where that doesn't work (those keypresses are consumed by something else). I may not be a good data point though. > Running the REPL with -S is unusual, so having to use sys.exit() or `raise > SystemExit` in that case shouldn't be an issue. Yes, it is unusual, however I have found myself asking people to do that when debugging, and I always have to tell people "oh, btw, exit() doesn't work, you have to do ...", which is not nice. > Even if you are running the REPL without the site module (so that exit and quit are not available) the import sys solution is surely the worst of the lot, UX-wise. Two of the solutions you gave (exit and quit) don't work with -S, and Ctrl-D/Ctrl-Z doesn't work in all setups. raise SystemExit is the only real alternative I would consider when I am explaining things to people and want to avoid issues. I standardized in `import sys; sys.exit()` as it's generally easier for people starting out, even though it's 5 more keypresses. --- Anyway, my point is simply that exiting on python -S does not have a great UX, something that I think should be considered when looking at this proposal. If you think the use-case is relevant enough to not warrant a change like this, that is a valid opinion. My personal opinion is that we should optimize the UX for the people who are not that knowledgeable, as those are the ones that will have most trouble, while keeping it usable for the rest of users. I think this change is a net positive considering those parameters, and I think the arguments against this proposal have not properly taken them into account. FWIW, I consider myself a reasonably knowledgeable user, but still end up making this mistake myself a staggering amount of times. $ rg 'exit\(\)$' ~/.python_history | wc -l 553 $ rg 'exit$' ~/.python_history | wc -l 132 -- ___ Python tracker <https://bugs.python.org/issue44603> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44603] REPL: exit when the user types exit instead of asking them to explicitly type exit()
Filipe Laíns added the comment: > In my view, that's exactly why it _shouldn't_ have a special treatment. After > all, site can add many more builtins. Do you want all of them to have > autocall? No, and I did not suggest anything of the sort. I just want the exit because of its integral job of... exiting the REPL. Typing `import sys; sys.exit()` every time I want to test something quick on the REPL is awful UX. -- ___ Python tracker <https://bugs.python.org/issue44603> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44603] REPL: exit when the user types exit instead of asking them to explicitly type exit()
Filipe Laíns added the comment: One technical argument on why it would be beneficial to have custom handling like this for exit is that exit is a site-builtin, not a builtin. $ python -S Python 3.9.7 (default, Aug 31 2021, 13:28:12) [GCC 11.1.0] on linux >>> exit() Traceback (most recent call last): File "", line 1, in NameError: name 'exit' is not defined >>> import sys >>> sys.exit() -- ___ Python tracker <https://bugs.python.org/issue44603> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue30511] shutil.make_archive should not need to chdir (alternatively: make shutil.make_archive thread-safe)
Change by Filipe Laíns : -- nosy: +FFY00 nosy_count: 8.0 -> 9.0 pull_requests: +26830 pull_request: https://github.com/python/cpython/pull/28271 ___ Python tracker <https://bugs.python.org/issue30511> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue40080] Stripping annotations out as a new optimization mode
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue40080> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue25625] "chdir" Contex manager for pathlib
Change by Filipe Laíns : -- pull_requests: +26691 pull_request: https://github.com/python/cpython/pull/28271 ___ Python tracker <https://bugs.python.org/issue25625> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45127] Code objects can contain unmarshallable objects
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45127> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue45078] test_importlib: test_read_bytes() fails on AMD64 Windows8.1 Non-Debug 3.x
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue45078> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43976] Allow Python distributors to add custom site install schemes
Filipe Laíns added the comment: Matthias, can you check if bpo-44982 solves your issues related to the conflicts you were experiencing for the Debian patching? If so, it would unblock this issue. I am probably gonna discuss this proposal with the conda-forge folks next week, to get some feedback from the Conda perspective. I would like to have this unblocked so that we can move forward, as far as I know the only issues are the ones Debian is experiencing about this proposal alone not being able to completely replace the downstream patching. -- ___ Python tracker <https://bugs.python.org/issue43976> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44982] Add vendor information
Filipe Laíns added the comment: > I am unsure if having two different interpreters is a good solution, and it > certainly requires some cooperation with distros. That is not the goal with this! I think both this issue and the PEP are parallel. My goal here is to streamline the vendor patching of CPython, not propose parallel interpreters as an alternative. Having discussed with you about your motivations and approach on packaging Python in Debian, I would definitely not expect you to adopt multiple interpreters in Debian. The way this proposal mostly functionally impacts Debian is by isolating its namespace from the normal one, allowing you to drop changes like the dist-packages renaming -- because pip install will write to /usr/local/lib/python3.9-debian/site-packages and /usr/local Python installs will be looking at /usr/local/lib/python3.9/site-packages) -- and if I am not missing anything, unblocking bpo-43976. -- ___ Python tracker <https://bugs.python.org/issue44982> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44982] Add vendor information
New submission from Filipe Laíns : In the effort of making the UX better with vendored Python versions, I think it would make sense to track and expose vendor information. Initially, the vendor information would be comprised of two fields, the vendor string (eg. `Debian`) and the vendor name (eg. `debian`). If specified, it would change the interpreter/installation in the following ways: - The vendor string would be shown in places like the IDLE shell (eg. [1]) - The vendor name would be added to the installation paths (/usr/lib/python3.9 would become /usr/lib/python3.9-debian) - This would include scripts, so the interpreter would be called python3-debian, the vendors can then rename or symlink it to python3 if they want to have that be the default Python on the system Additionally, I think we should add two new functions to the platform module, platform.vendor() and platform.vendor_name(). Overall, I think this would help out users identify the Python installation and avoid clashes between Python installations, even allowing parallel installations. If I remember everything correctly, this should fix Matthias issues with bpo-43976. Matthias, could you confirm? Any thoughts? [1] new IDLE shell output Debian Python 3.9.6 (default, Jun 30 2021, 10:22:16) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> -- messages: 400135 nosy: FFY00, christian.heimes, doko, jaraco, steve.dower, willingc priority: normal severity: normal status: open title: Add vendor information type: enhancement versions: Python 3.11 ___ Python tracker <https://bugs.python.org/issue44982> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44981] `module has no attribute` when `__all__` includes certain unicode characters
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue44981> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue37596] Reproducible pyc: frozenset is not serialized in a deterministic order
Change by Filipe Laíns : -- keywords: +patch pull_requests: +26244 stage: -> patch review pull_request: https://github.com/python/cpython/pull/27769 ___ Python tracker <https://bugs.python.org/issue37596> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43976] Allow Python distributors to add custom site install schemes
Filipe Laíns added the comment: Hi Jason, thank you. I already tried 1), but could not convince Matthias on an alternative way to achieve the result that Debian wants. If you want, maybe you and I could try restarting those discussions. 2) is fine, but I am not the one that will me maintaining it, so it is a question for the core devs. I mean, I could commit to working on it and dealing with issues, but I am not a core dev, so it would always need to involve someone else. 3) does not really make sense as of the distutils deprecation. What needs to be patched are the install schemes, which are now outside distutils/setuptools. I had hoped that we were able to have the mechanism proposed here in 3.10, so that people could just replace their distutils patches with it, but it was not possible. I am not sure how to proceed. -- ___ Python tracker <https://bugs.python.org/issue43976> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44445] Add `site-include` install scheme path in sysconfig
Filipe Laíns added the comment: distutils will install the headers to {base}/include/python{py_version_short}{abiflags}/{dist_name}, and I think probably the best option would be to do the same. So, I think we could add a site-include scheme like I described and have the installers append a directory with the distribution name to it. I think it would be reasonable to put all headers in a shared directory, site-include, given that we make sure the installers put them in a subdirectory for each distribution. About standardizing pkg-config-like metadata, I don't think that's a great idea, as it would not replace the mechanisms you mentioned. It might replace some, but not all, as there could always be a use-case that needs more information or interaction than what our standard may provide. Does this make sense to you? -- ___ Python tracker <https://bugs.python.org/issue5> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43976] Allow Python distributors to add custom site install schemes
Filipe Laíns added the comment: Yes, but in the process of deprecating disutils, some internals were changed to stop relying on it. This will cause a lot of downstream patches to break. I you are not modifying CPython, you don't need to worry, but if you are, then you should have a look and figure out how/where to patch it now. As far as the public distutils API is concerned, everything will still the same until 3.12, just with deprecation warnings. Development has moved to [1] and it will eventually be merged into setuptools. [1] https://github.com/pypa/distutils -- ___ Python tracker <https://bugs.python.org/issue43976> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43976] Allow Python distributors to add custom site install schemes
Filipe Laíns added the comment: s/still/stay/ -- ___ Python tracker <https://bugs.python.org/issue43976> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue43976] Allow Python distributors to add custom site install schemes
Filipe Laíns added the comment: I find it very difficult. I would be a bit anxious merging the code this close to the final release, so I imagine the release managers would be much more. Anyway, this is the current state of this issue from my perspective: As far as I understand, progress is currently blocked because Matthias thinks this mechanism must allow Debian to replace all related downstream patches. I disagree with him in the way Debian is patching Python, which IMO is way too intrusive and fragile. Given that this vendor config will essentially shift the burden of supporting these modifications to the Python upstream, I don't think it would be a good idea to allow the modifications Debian wants in this config. For all other downstreams I have talked to, the proposal seems to be fine, though more testing would definitely be appreciated. I think that at this point, we could really use a core dev to help push this to the state of being able to get merged, because I don't think I can do that alone. I have already requested feedback from the community and the technical discussions on the PR went silent, so I do not see what else I can do :/ If needed, I would be available to brief anyone on my understanding of the issues and how this proposal handles that. So, any core dev, please feel free to reach out if you want to help move this forward. -- ___ Python tracker <https://bugs.python.org/issue43976> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44843] Add CLI flag to disable hash randomization
New submission from Filipe Laíns : There are select use-cases where hash randomization is undesirable, having a CLI option to switch it off would be very helpful. One example would be packaging, where hash randomization will make the bytecode unreproducible. Currently, we have to set PYTHONHASHSEED to a constant value. Having a CLI option (lets say -Z) would allow use to do python -Zm install artifact.whl instead of PYTHONHASHSEED=0 python -m install artifact.whl Which is something that I have to do lots of places. -- messages: 399026 nosy: FFY00 priority: normal severity: normal status: open title: Add CLI flag to disable hash randomization versions: Python 3.11 ___ Python tracker <https://bugs.python.org/issue44843> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue42839] SourceFileLoader does not (fully) accept path-like objects
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue42839> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue35673] Loader for namespace packages
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue35673> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44648] Inspect.getsource raises wrong error on classes in interactive session
Change by Filipe Laíns : -- nosy: +FFY00 nosy_count: 5.0 -> 6.0 pull_requests: +26013 pull_request: https://github.com/python/cpython/pull/27484 ___ Python tracker <https://bugs.python.org/issue44648> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44771] Adopt changes from importlib_resources 5.2
Change by Filipe Laíns : -- pull_requests: +26000 pull_request: https://github.com/python/cpython/pull/27484 ___ Python tracker <https://bugs.python.org/issue44771> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44777] Create mechanism to contact buildbot worker owners
Change by Filipe Laíns : -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue44777> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44717] Improve AttributeError on circular imports of submodules
Change by Filipe Laíns : -- pull_requests: +25886 pull_request: https://github.com/python/cpython/pull/27344 ___ Python tracker <https://bugs.python.org/issue44717> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44717] Improve AttributeError on circular imports of submodules
Change by Filipe Laíns : -- pull_requests: +25881 pull_request: https://github.com/python/cpython/pull/27338 ___ Python tracker <https://bugs.python.org/issue44717> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue39632] variadic function call broken on armhf when passing a float argument
Filipe Laíns added the comment: #28491 is now resolved, so the PR should be unblocked. Would you mind rebasing it on main to retrigger the CI? -- nosy: +FFY00 ___ Python tracker <https://bugs.python.org/issue39632> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44717] Improve AttributeError on circular imports of submodules
Change by Filipe Laíns : -- keywords: +patch pull_requests: +25842 stage: -> patch review pull_request: https://github.com/python/cpython/pull/27299 ___ Python tracker <https://bugs.python.org/issue44717> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue44717] Improve AttributeError on circular imports of submodules
New submission from Filipe Laíns : Consider the following $ tree a a ├── b │ ├── c.py │ └── __init__.py └── __init__.py 1 directory, 3 files $ cat a/b/__init__.py import a.b.c $ cat a/b/c.py import a.b a.b $ python Python 3.9.6 (default, Jun 30 2021, 10:22:16) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import a.b Traceback (most recent call last): File "", line 1, in File "/home/anubis/test/a/b/__init__.py", line 1, in import a.b.c File "/home/anubis/test/a/b/c.py", line 3, in a.b AttributeError: module 'a' has no attribute 'b' This happens because even though the module `a` is initialized, the `b` attribute is not set due to the circular import. When a module is partially initialized, we get a more helpful error description hinting that we cannot access the attribute because the module is partially initialized, we could have something similar here. -- components: Interpreter Core messages: 398021 nosy: FFY00, pablogsal priority: normal severity: normal status: open title: Improve AttributeError on circular imports of submodules type: enhancement ___ Python tracker <https://bugs.python.org/issue44717> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue42854] OpenSSL 1.1.1: use SSL_write_ex() and SSL_read_ex()
Filipe Laíns added the comment: https://twitter.com/geofft/status/1417167982665551877 -- nosy: +FFY00 resolution: fixed -> status: closed -> open ___ Python tracker <https://bugs.python.org/issue42854> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com