Skip to content

Fix bugs#442

Merged
codelion merged 3 commits intomainfrom
fix-bugs
Mar 18, 2026
Merged

Fix bugs#442
codelion merged 3 commits intomainfrom
fix-bugs

Conversation

@codelion
Copy link
Member

@codelion codelion commented Mar 18, 2026

will also fix #441

codelion and others added 2 commits March 18, 2026 19:32
The callable evaluators in evolve_function and evolve_algorithm used
closure-based functions stored in globals(), which don't survive across
process boundaries. Since the switch to process-based parallelism
(c2f668a), subprocess workers cannot access the parent process memory,
causing "module has no attribute '_openevolve_evaluator_*'" errors.

Fix by serializing evaluators as self-contained code strings instead of
closures. Also adds combined_score to returned metrics to prevent the
misleading score averaging warning.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codelion codelion merged commit 80945ed into main Mar 18, 2026
5 checks passed
@codelion codelion deleted the fix-bugs branch March 18, 2026 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug still present in latest PyPI release: Evolved programs incorrectly placed in Island 0

1 participant