Message368840
While the number of imports reduced a lot, "import test.support" still imports 98 modules. That's a lot! IMO we can reduce it a little bit more :-)
Examples of imports which could be lazy:
* faulthandler: move it into start_threads() and disable_faulthandler()
* shutil: move it into rmtree()
* bz2: move it into @requires_bz2 decorator. Is it possible? Same for zlib, gzip and lzma?
There are also tons of functions, it may be time to create even more submodules:
* support.threading_helper:
* threading_setup()/threading_cleanup()
* reap_threads()
* wait_thread_exit()
* join_thread()
* catch_threading_exception context manager
* start_threads()
* support.process_helper:
* wait_process()
* reap_children()
* SuppressCrashReport
* PIPE_MAX_SIZE (is it the best place for that one?)
* args_from_interpreter_flags()
* optim_args_from_interpreter_flags()
* PythonSymlink
* support.file_helper:
* rmtree() and the related private functions
* unlink()
* rmdir()
* FS_NONASCII
* TESTFN_UNICODE, TESTFN_NONASCII, TESTFN_UNENCODABLE, TESTFN_UNDECODABLE
* SAVEDCWD (not sure about this one)
* TESTFN_ENCODING <= this one can be removed, it's just sys.getfilesystemencoding()
* temp_dir()
* change_cwd()
* temp_cwd()
* temp_umask()
* create_empty_file()
* make_bad_fd()
* EnvironmentVarGuard (not sure about this one)
* can_symlink(), skip_unless_symlink()
* can_xattr(), skip_unless_xattr()
* fs_is_case_insensitive()
* fd_count()
* FakePath
* support.import_helper:
* import_module(), _ignore_deprecated_imports()
* import_fresh_module(), _save_and_remove_module(), _save_and_block_module()
* unload()
* make_legacy_pyc()
* forget()
* CleanImport
* DirsOnSysPath
* modules_setup(), modules_cleanup()
* support.warnings_helper:
* check_syntax_warning()
* ignore_warnings()
* WarningsRecorder
* check_warnings(), _filterwarnings()
* check_no_warnings()
* check_no_resource_warning()
Move also move the following functions to socket_helper:
* SOCK_MAX_SIZE
* open_urlresource()
* TransientResource
* time_out
* socket_peer_reset
* ioerror_peer_reset
Serhiy: What do you think of these proposed submodules? |
|
Date |
User |
Action |
Args |
2020-05-14 14:16:05 | vstinner | set | recipients:
+ vstinner, vinay.sajip, serhiy.storchaka, shihai1991 |
2020-05-14 14:16:05 | vstinner | set | messageid: <1589465765.71.0.519092401259.issue40275@roundup.psfhosted.org> |
2020-05-14 14:16:05 | vstinner | link | issue40275 messages |
2020-05-14 14:16:04 | vstinner | create | |
|