Daily edition

Sep 13, 2026

The edition exactly as it was published. Nothing here is re-selected on a later reading.

Sep 14, 20263 reads · 109 merged PRs screened

core implementation

microsoft/vscode · #336049

Files changed →View PR ↗

Agent Host: Forward Git identity to Dev ContainersTypeScript · 55 + / 1

Introduces 1 new declaration in src/vs/platform/agentHost/node/devContainerAgentHostService.ts.

Adds new core implementation rather than adjusting what was there. Tests changed with it, with code of their own.

src/vs/platform/agentHost/node/devContainerAgentHostService.ts · 2 files

@@ -275,6 +289,46 @@ export class DevContainerAgentHostMainService extends Disposable implements IDev 		this._logService.info(`${LOG_PREFIX} Added Git root '${rootFolder}' to the Dev Container user's safe.directory list`); 	} +	private async _configureGitIdentity(exec: ISshExec, token: CancellationToken): Promise<void> {+		const identity = await this._getHostGitIdentity(token);+		if (!identity.name && !identity.email) {+			return;+		}++		const gitAvailable = await exec('command -v git >/dev/null 2>&1', { ignoreExitCode: true });+		if (gitAvailable.code !== 0) {+			return;+		}++		const values: readonly { readonly key: string; readonly value: string | undefined }[] = [+			{ key: 'user.name', value: identity.name },+			{ key: 'user.email', value: identity.email },+		];+		for (const { key, value } of values) {+			if (!value) {+				continue;+			}+			const configured = await exec(`git config --get ${key}`, { ignoreExitCode: true });+			if (configured.code === 0 && configured.stdout.trim()) {+				continue;+			}+			await exec(`git config --global --replace-all ${key} ${shellEscape(value)}`);+			this._logService.info(`${LOG_PREFIX} Configured Git ${key} from the host for the Dev Container user`);+		}+	}++	protected async _getHostGitIdentity(token: CancellationToken): Promise<IGitIdentity> {+		const environment = await this._resolveShellEnvironment();

core implementation

numpy/numpy · #32456

Files changed →View PR ↗

ENH: Adopt multi-phase module initialization for `_rational_tests`C · 93 + / 54

Introduces 2 new declarations in numpy/_core/src/umath/_rational_tests.c.

Adds new core implementation rather than adjusting what was there. Read the linked PR for the surrounding test context.

numpy/_core/src/umath/_rational_tests.c · 1 files

@@ -1323,51 +1323,46 @@ static PyMethodDef module_methods[] = {     {0} /* sentinel */ }; -static struct PyModuleDef moduledef = {-    PyModuleDef_HEAD_INIT,-    "_rational_tests",-    NULL,-    -1,-    module_methods,-    NULL,-    NULL,-    NULL,-    NULL-};+/*+ * Opt out of more than one module object per process: the rational types are+ * held in C statics and their dtypes are registered in NumPy's process-global+ * user dtype table, so a second module object would leave arrays of the first+ * one's dtype handing out scalars of the second one's type.+ *+ * https://docs.python.org/3/howto/isolating-extensions.html#opt-out-limiting-to-one-module-object-per-process+ */+static int module_loaded = 0; -PyMODINIT_FUNC PyInit__rational_tests(void) {-    PyObject *m = NULL;-    PyObject* numpy_str;-    PyObject* numpy;+static int+_rational_tests_exec(PyObject *m)+{+    PyObject *numpy = NULL;+    PyArray_Descr *npyrational_descr = NULL;

core implementation

TheAlgorithms/Python · #15317

Files changed →View PR ↗

Improve `scripts/pr_file_map.py` observability and output metadataPython · 33 + / 9

Reworks 41 lines of existing logic in scripts/pr_file_map.py.

Changes how existing core implementation behaves. Read the linked PR for the surrounding test context.

scripts/pr_file_map.py · 1 files

@@ -73,36 +81,52 @@ def main() -> None:     check_gh_auth()      prs = get_open_prs()-    if not prs:-        print("No open pull requests found.")-        return+    pr_count = len(prs)+    print(f"PR count from get_open_prs(): {pr_count}", file=sys.stderr)      file_to_prs: dict[str, list[int]] = defaultdict(list)+    file_count = 0      for pr in prs:         pr_number = pr["number"]-        for path in get_pr_files(pr_number):+        pr_files = get_pr_files(pr_number)+        file_count += len(pr_files)+        for path in pr_files:             file_to_prs[path].append(pr_number)+    print(f"File count from get_pr_files(): {file_count}", file=sys.stderr)      existing: dict[str, list[int]] = {}     missing: dict[str, list[int]] = {}      for path, pr_numbers in file_to_prs.items():-        target = existing if os.path.exists(path) else missing+        target = existing if Path(path).exists() else missing         target[path] = sorted(set(pr_numbers))+    existing_count = len(existing)+    missing_count = len(missing)+    print(+        f"Existing files: {existing_count}, Missing files: {missing_count}",+        file=sys.stderr,

Read today’s edition →