Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Remove defaults for Manager init, forcing keywords to be specified, a…
…nd perhaps revealign a bug that start_method is unused (#2973) This PR removes theoretically-always-unused argument defaults in the process worker pool manager, and forces arguments to be supplied as kwargs. These defaults have two downsides: i) users reading the code might believe the defaults will be used as end-Parsl-user defaults. However, generally there will be up to two other layers of defaults that will override the defaults removed by this PR: defaults specified in the argparser of process_worker_pool; and defaults specified in the constructor to the HighThroughputExecutor object. These defaults, then, are misleading, as they are defaults only in the presence of a coding error such as ii) below. ii) in the presence of a coding error adding a new parameter, where the new parameter is not wired all the way through, rather than raise an error about a missing parameter, the otherwise-unused default is used. This was a practical problem demonstrated by the threads/spawn/fork start method parameter introduced in #2433 and removed as broken in #2980. Switching to mandatory kwargs can help with accidentally misarranged parameters in the construction of a Manager object, a similar but different coding error to ii) above.
- Loading branch information