pycforge 1.3.43__tar.gz → 1.3.45__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pycforge-1.3.45/CURRENT_STATE.md +1340 -0
- pycforge-1.3.45/MANIFEST.in +109 -0
- pycforge-1.3.45/PKG-INFO +257 -0
- pycforge-1.3.45/PYPI_RELEASE.md +484 -0
- pycforge-1.3.45/PyCForge-1.3.43-Verification.txt +118 -0
- pycforge-1.3.45/PyCForge-1.3.44-Verification.txt +70 -0
- pycforge-1.3.45/PyCForge-1.3.45-Verification.txt +77 -0
- pycforge-1.3.45/PyCForge-README-Guidelines.txt +98 -0
- pycforge-1.3.45/README.md +227 -0
- pycforge-1.3.45/RELEASE_NOTES.md +918 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/application_changes.json +16 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/baseline-regressions.log +695 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/history-recovery-checks.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/installed-restart-checks.json +30 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/installed-smoke.json +10 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-controller.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-new-regressions.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-projects.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-save-all.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-startup.log +2 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/isolated-test-results.json +46 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/release-checks.log +3 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/source-restart-checks.json +30 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/ui-isolated.log +24 -0
- pycforge-1.3.45/evidence/module_save_1_3_45/workflow-regressions.log +3 -0
- pycforge-1.3.45/evidence/release_1_3_44/contract-followup.log +2 -0
- pycforge-1.3.45/evidence/release_1_3_44/contract-snapshot-review.json +9 -0
- pycforge-1.3.45/evidence/release_1_3_44/installed-package.json +7 -0
- pycforge-1.3.45/evidence/release_1_3_44/installed-versions.json +15 -0
- pycforge-1.3.45/evidence/release_1_3_44/preservation.json +11 -0
- pycforge-1.3.45/evidence/release_1_3_44/readme-render.json +15 -0
- pycforge-1.3.45/evidence/release_1_3_44/release-tests.log +66 -0
- pycforge-1.3.45/evidence/release_1_3_44/release-tests.xml +58 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/README.diff +86 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/installed-package.json +11 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/installed-version-surfaces.json +15 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/readme-review.json +34 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/regression.log +3 -0
- pycforge-1.3.45/evidence/release_readme_1_3_43/regression.xml +1 -0
- pycforge-1.3.45/pycforge/_version.py +1 -0
- pycforge-1.3.45/pycforge/ide/controller.py +963 -0
- pycforge-1.3.45/pycforge/ide/controller_io.py +346 -0
- pycforge-1.3.45/pycforge/ide/project_model.py +201 -0
- pycforge-1.3.45/pycforge/ide/qt_project.py +359 -0
- pycforge-1.3.45/pycforge/ide/qt_python_save.py +183 -0
- pycforge-1.3.45/pycforge/ide/resources/help/projects.html +56 -0
- pycforge-1.3.45/pycforge/ide/resources/help/workspace.html +166 -0
- pycforge-1.3.45/pycforge.egg-info/PKG-INFO +257 -0
- pycforge-1.3.45/pycforge.egg-info/SOURCES.txt +2810 -0
- pycforge-1.3.45/pyproject.toml +60 -0
- pycforge-1.3.45/specifications/record_locals_1_3_43.md +44 -0
- pycforge-1.3.45/tests/fixtures/module_save_restart_probe.py +99 -0
- pycforge-1.3.45/tests/test_checkpoint_e_versioning.py +155 -0
- pycforge-1.3.45/tests/test_module_save_identity.py +148 -0
- pycforge-1.3.45/tests/test_module_save_project_qt.py +173 -0
- pycforge-1.3.45/tests/test_phase10_opening.py +137 -0
- pycforge-1.3.45/tests/test_phase12_2_metadata.py +252 -0
- pycforge-1.3.45/tests/test_phase13_contracts.py +210 -0
- pycforge-1.3.45/tests/test_phase14_numeric_contracts.py +159 -0
- pycforge-1.3.45/tests/test_phase14b_conditional_contracts.py +235 -0
- pycforge-1.3.45/tests/test_phase14c_keyword_contracts.py +253 -0
- pycforge-1.3.45/tests/test_phase14d_keyword_only_contracts.py +486 -0
- pycforge-1.3.45/tests/test_phase15a_metadata.py +253 -0
- pycforge-1.3.45/tests/test_release_1_0_2_presentation.py +129 -0
- pycforge-1.3.45/tests/test_release_contract_0_16_3.py +284 -0
- pycforge-1.3.45/tests/test_set_conversion_1_0_1.py +249 -0
- pycforge-1.3.45/tests/test_validate_checkpoint_e.py +319 -0
- pycforge-1.3.45/tests/test_validate_phase16.py +349 -0
- pycforge-1.3.45/tests/test_validate_pycforge_workspace_0_12_2.py +179 -0
- pycforge-1.3.45/tools/validate_phase16.py +1375 -0
- pycforge-1.3.45/tools/verify_public_distribution.py +667 -0
- pycforge-1.3.45/tools/verify_pypi_readme.py +94 -0
- pycforge-1.3.43/CURRENT_STATE.md +0 -1324
- pycforge-1.3.43/MANIFEST.in +0 -106
- pycforge-1.3.43/PKG-INFO +0 -247
- pycforge-1.3.43/PYPI_RELEASE.md +0 -447
- pycforge-1.3.43/PyCForge-1.3.43-Verification.txt +0 -75
- pycforge-1.3.43/README.md +0 -217
- pycforge-1.3.43/RELEASE_NOTES.md +0 -902
- pycforge-1.3.43/pycforge/_version.py +0 -1
- pycforge-1.3.43/pycforge/ide/controller.py +0 -962
- pycforge-1.3.43/pycforge/ide/controller_io.py +0 -316
- pycforge-1.3.43/pycforge/ide/project_model.py +0 -198
- pycforge-1.3.43/pycforge/ide/qt_project.py +0 -351
- pycforge-1.3.43/pycforge/ide/qt_python_save.py +0 -177
- pycforge-1.3.43/pycforge/ide/resources/help/projects.html +0 -54
- pycforge-1.3.43/pycforge/ide/resources/help/workspace.html +0 -166
- pycforge-1.3.43/pycforge.egg-info/PKG-INFO +0 -247
- pycforge-1.3.43/pycforge.egg-info/SOURCES.txt +0 -2775
- pycforge-1.3.43/pyproject.toml +0 -60
- pycforge-1.3.43/specifications/record_locals_1_3_43.md +0 -40
- pycforge-1.3.43/tests/test_checkpoint_e_versioning.py +0 -154
- pycforge-1.3.43/tests/test_phase10_opening.py +0 -137
- pycforge-1.3.43/tests/test_phase12_2_metadata.py +0 -252
- pycforge-1.3.43/tests/test_phase13_contracts.py +0 -210
- pycforge-1.3.43/tests/test_phase14_numeric_contracts.py +0 -159
- pycforge-1.3.43/tests/test_phase14b_conditional_contracts.py +0 -235
- pycforge-1.3.43/tests/test_phase14c_keyword_contracts.py +0 -253
- pycforge-1.3.43/tests/test_phase14d_keyword_only_contracts.py +0 -486
- pycforge-1.3.43/tests/test_phase15a_metadata.py +0 -253
- pycforge-1.3.43/tests/test_release_1_0_2_presentation.py +0 -129
- pycforge-1.3.43/tests/test_release_contract_0_16_3.py +0 -284
- pycforge-1.3.43/tests/test_set_conversion_1_0_1.py +0 -249
- pycforge-1.3.43/tests/test_validate_checkpoint_e.py +0 -319
- pycforge-1.3.43/tests/test_validate_phase16.py +0 -349
- pycforge-1.3.43/tests/test_validate_pycforge_workspace_0_12_2.py +0 -179
- pycforge-1.3.43/tools/validate_phase16.py +0 -1375
- pycforge-1.3.43/tools/verify_public_distribution.py +0 -652
- pycforge-1.3.43/tools/verify_pypi_readme.py +0 -91
- {pycforge-1.3.43 → pycforge-1.3.45}/CHANGELOG.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/CONVERSION_ROADMAP.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/EXPERT_REVIEW_1.0.1.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/HELP.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/LICENSE +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.0-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.0-Resource-Audit.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.0-Version-Reconciliation.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.0-Windows-Checklist.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.1-Reliability-Audit.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.1-UI-Corrections.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.1-Windows-and-Laptop-Checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.10-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.10-Windows-Startup-Checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.11-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.11-Windows-Startup-Checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.12-Conversion-Audit.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.13-Multiple-Inheritance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.13-Windows-Checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.14-Documentation-Review.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.14-Run-Python.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.14-Save-All.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.14-UI-Review.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.23-Windows-Checklist.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.24-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.25-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.26-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.27-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.28-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.29-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.3-Editor-Integration-Review.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.3-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.30-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.31-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.32-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.33-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.34-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.35-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.36-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.37-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.38-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.39-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.4-Loading-Panel.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.40-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.41-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.42-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.5-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.6-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.7-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.8-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.9-Release-Verification.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge-1.3.9-Windows-Compiler-Checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Checkpoint_E_v0_14_4_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_10_v0_10_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_11_v0_11_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_12_v0_12_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_13_v0_13_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_14A_v0_14_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_14B_v0_14_1_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_14C_v0_14_2_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_14D_v0_14_3_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_15A_v0_15_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_15B_v0_15_1_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_15C_v0_15_2_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/PyCForge_Phase_9_v0_9_0_Project_Handoff.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/ROADMAP.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/THIRD_PARTY_NOTICES.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/TING_INTEGRATION_REVIEW.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/CONVERSION_AUDIT_1_1_2.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/HELP_AUTHORING.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/PyCForge-v1.1.7-Engineering-Review.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/PyCForge_v0_15_2_Conversion_Examples_Reference_Edition.pdf +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/PyCForge_v0_16_0_Programmers_Conversion_Guide.pdf +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/RUNTIME_PREVIEW_REVIEW.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/Windows-Editor-Acceptance-1.1.7.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/design/matte-theme-1.3.33.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/pycforge_workspace_quality_addendum.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/python_to_c_converter_architecture_revision_3_1.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/python_to_c_converter_architecture_revision_3_2_addendum.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/docs/python_to_c_converter_architecture_revision_3_3_workspace_addendum.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/checkpoint_e/debt_delta.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/checkpoint_e/entry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/checkpoint_e/full_subset_validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/checkpoint_e/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/checkpoint_e/workspace_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/build-139-sdist.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/build-139-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-actions-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-actions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-existing.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-final-profiles.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-profiles.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-qt.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-139-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/compiler-references.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/corpus-139-upgraded.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/corpus-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/docs-139-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/install-139.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/installed-139-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/compiler_profiles_1_3_9/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/contracts.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/contracts.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/conversion-memory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/conversion-memory.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-contracts.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-contracts.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-distribution-build.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-installed-editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-installed-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-installed-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-package-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/final-wheel-install.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/README.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/PyCForge-Editor-Fixes-Validation.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/PyCForge-Editor-Fixes-Windows-Checklist.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/install-editor-1.2.1.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/installed-dialog.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/installed-dialog.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/installed-editor-1.2.1.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/installed-editor-1.2.1.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/preserved-prior-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/traceback-baseline-1.2.0.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/traceback-baseline-1.2.0.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/editor_lifecycle_fixes/wheel-verify-1.2.1.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/pcfc11_1_2/full-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/pcfc11_1_2/installed-acceptance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/pcfc11_1_2/installed-cli.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/pcfc11_1_2/source-acceptance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/pcfc11_1_2/validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/baseline-first-failure.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/baseline-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/baseline-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/baseline-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/baseline-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/profile-before.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/evidence/resource_audit/profile-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/history/uploaded-1.2.1/tools/verify_installed_editor_1_2_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/initial.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/installed-editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/installed-files.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/native-pcfc11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/native-pcfc11.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/release-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/release-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/resource-profile.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/resource-profile.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/runtime-build.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/runtime-build.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/startup-shortcuts.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/startup-shortcuts.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/ui-recheck.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/ui-recheck.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/version-file-inventory.csv +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/version-reconciliation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/wheel-build.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/wheel-install.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/consolidation/windows-assembly.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/admission-probes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/baseline.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/build-1312-sdist.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/build-1312-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/collection-coverage.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/corpus.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/final-application-hashes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/full-collection.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/full-regression-results.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/install-1312.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/installed-1312.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/installed-audit-1312.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/installed-normal-startup.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/new-probes-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/new-probes-baseline.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/normal-1312-installed-normal.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/previous-failures-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/previous-failures-verified.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/pristine-reproduction.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/probes-stage2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/probes-stage2.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-01.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-01.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-01.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-02.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-02.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-02.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-03.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-03.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-03.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-04.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-04.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-04.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-05.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-05.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-05.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-06.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-06.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-06.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-07.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-07.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-07.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-08.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-08.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-08.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-09.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-09.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-09.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-10.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-10.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-10.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-11.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-11.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-12.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-13.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-13.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-14.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-14.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-14.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-15.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-15.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-15.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-16.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-16.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-16.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-17.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-17.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-17.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-18.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-18.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-18.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-19.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-19.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-19.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-20.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-20.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-20.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-21.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-21.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-21.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-22.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-22.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-22.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-23.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-23.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-23.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-24.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-24.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-24.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-25.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-25.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups/group-25.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/regression-groups.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/sanitizer-first-detail.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/sanitizers-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/sanitizers-verified.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/sdist-rebuild.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/sdist-rebuild.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/set-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/set-fix.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/set-probes-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/set-probes-baseline.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/set-representatives-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/skipped-tests.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/test-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/typed-fix-first.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/typed-fix-second.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/typed-fix-third.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_audit_1_3_12/typed-probes-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/audit-maintenance.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/audit-maintenance.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/audit-test-ledger.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/build-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-0.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-0.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-1.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-1.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-2.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-3.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-3.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-exits.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/candidate-shards.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/capture_audit_views.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/check_installed.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/deep-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/deep-focused.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/documentation/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/evidence-manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/extra-baseline-witnesses.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/final-inventory.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/install.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/installed.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/interaction-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/interaction-baseline.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/interaction-fixed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/maintenance-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/maintenance-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/owner-fixed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/pending-navigation-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/quick-access-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/quick-access-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/readme-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/readme-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/run_candidate_suite.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/sanitizer.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/sanitizer.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/skip-reasons.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/source-changes.diff +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/source-review.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/ui-defects-recheck.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/ui-failure-recheck.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/v131-baseline-partial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/v131-baseline-status.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/visual-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/visuals/geometry.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversion_deep_audit_1_3_32/wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/baseline-failed-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/baseline-test-failures.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/docs-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/extended-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/extended-sanitizers-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/extended-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/full-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/omitted-historical-visuals.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/rechecked-failures.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/conversions_1_3_5/recovered-pytest.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/initial-missing-dependency.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/run-with-evidence-write-race.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/suite-before-breadcrumb-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/suite-before-span-fixes.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/correctness_1_1_2/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/final-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/full-suite-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/gate-corrections.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/generate_ryu.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/generate_unicode.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/package-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/readme-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/LICENSE-Apache2 +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/LICENSE-Boost +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/common.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/d2s.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/d2s_full_table.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/d2s_intrinsics.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/digit_table.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/provenance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/ryu_upstream/ryu.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/sanitizers-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/unicode_provenance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/coverage_1_1_3/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/completion-137-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/completion-visual.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/corpus-137-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/corpus-137-upgraded.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/corpus-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/decorators-137-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/decorators-137-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/decorators-137-rejections.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/decorators-137-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/docs-137-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/decorators_1_3_7/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/initial-full-suite-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/initial-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/release-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/release-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/sanitizers-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/sanitizers-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/source-changes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/dictionaries_1_1_4/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_1_2/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_1_2/help-and-startup-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_1_2/readme-regression-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_1_2/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/caveat-layout-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/changed-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/changes.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/documentation-tests-1.3.14.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/documentation-tests-1.3.14.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/preservation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/documentation_1_3_14/readme-build-report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_6/automated-tests.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_6/automated-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_6/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/automated-tests.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/automated-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/baseline-1.1.6-responsiveness-structure.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/baseline-1.1.6-responsiveness-typing.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/performance-gates.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/readme-rendering.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/responsiveness-structure.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/responsiveness-typing.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/symlink-save-check.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/wheel-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_1_1_7/workspace-typing.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/baseline-corrected.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/baseline-corrected.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/breadcrumb-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/breadcrumb-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/editor.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/final-ui.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/final-ui.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/focused-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/focused-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/installed-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/installed-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/installed.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/verification-summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_feedback_1_3_37/visual-review.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/before-fixes.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/delayed-before-fixes.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/final-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/final-checks.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/first-corrections.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/focused-corrections.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/navigation-before-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/operation-probes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/version-updates.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_integration_1_3_3/worker-resources.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/CHANGES.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/PyCForge-Editor-Fixes-Validation.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/PyCForge-Editor-Fixes-Windows-Checklist.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/dialog-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/dialog-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/editor-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/editor-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/editor-regression-selection.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/editor-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/editor-regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/install-editor-1.1.11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-desktop.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-editor-1.1.11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-editor-1.1.11.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-native.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-native.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-version.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/installed-version.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/traceback-baseline-1.1.10.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/traceback-baseline-1.1.10.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/editor_lifecycle_fixes/wheel-verify-1.1.11.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/CHANGES.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/Windows-acceptance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/address-undefined-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/allocation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/diagnostic-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/distribution-first.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/documentation/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/documentation/help-check.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/format-matrix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/installed-desktop.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/installed-native.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/readme.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/release-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/release-followup.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/representation-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/sanitizer-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/sort-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/twine-first.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/everyday_1_1_8/validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/application-hashes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/close-failure.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/close-failure.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/final-classes.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/final-classes.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/final-exceptions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/final-exceptions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/installed.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/installed_check.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/integration.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/integration.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/rejections-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/rejections-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/runtime.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/exceptions_1_3_28/runtime.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/conversion-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/conversion-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/installed-native.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/installed-native.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/installed-payload.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/installed-ui-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/installed-ui-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/sanitizers-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/sanitizers-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/ui-version.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/ui-version.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/update-release.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/update-release.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/verification-summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/file_updates_1_3_34/wheel-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/CHANGES.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/Windows-acceptance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/check-windows-file-branch.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/documentation/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/documentation/help-check.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/documentation-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/files-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/files-followup.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/files.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/files.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/fingerprint-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/fingerprint-followup.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/help.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/help.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/installed-desktop.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/installed-native.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/installed-native.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/readme.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/sanitizers-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/sanitizers-followup.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/sanitizers.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/windows-branch.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/files_1_1_10/windows-branch.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/docs-136-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/docs-136-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/functions-136-diagnostic-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/functions-136-final-recheck.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/functions-136-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/functions-136-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/functions-136-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/functions_1_3_6/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/build-138-sdist.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/build-138-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/corpus-138-baseline.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/corpus-138-upgraded.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/corpus-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/docs-138-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/inheritance-138-decorators.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/inheritance-138-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/inheritance-138-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/inheritance-138-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/inheritance-138-scope-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/install-138.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/installed-138-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/inheritance_1_3_8/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/additional-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/additional-regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/additional-selection.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/application-changes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/combined-current-tests.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/corrections.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/corrections.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/engine-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/gallery/dialog-policies.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/installed-final-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/installed-final-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/installed-resources.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/layout-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/layout-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/qt-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/qt-regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/qt-selection.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/render-installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/render_theme.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/scaled-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/scaled-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/theme-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/theme-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/matte_theme_1_3_33/wheel-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/contracts-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/contracts-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/conversion.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/conversion.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-action-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-action-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-native-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-native-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-ui-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/export-ui-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/installed-action-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/installed-action-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/installed-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/installed-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/source-changes.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/module_exports_1_3_36/verification-summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/CHANGES.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/Windows-acceptance.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/allocation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/definition-order-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/documentation/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/documentation/help-check.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/documentation-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/documentation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/environment.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/initial-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/installed-desktop.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/installed-native.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/installed-native.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/inventory-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/inventory-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/module-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/module-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/readme.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/readme.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/release-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/release-followup.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/modules_1_1_9/validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/application-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/build-sdist-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/build-wheel-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/changes.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/corpus-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/documentation-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/final-regression-summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/full-regression-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/full-regression-results.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-01.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-01.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-02.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-02.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-03.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-03.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-04.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-04.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-05.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-05.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-06.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-06.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-07.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-07.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-08.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-08.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-09.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-09.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-10.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-10.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-11.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-12.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-13.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-14.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-14.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-15.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-15.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-16.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-16.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-17.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-17.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-18.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-18.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-19.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-19.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-20.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-20.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-21.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-21.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-22.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-22.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-23.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-23.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-24.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-24.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-25.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-25.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-26.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/group-26.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/inheritance-help.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/inheritance-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/inheritance-sanitizers.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/install-1.3.13.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/installed-cli.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/installed-inheritance.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/reconciled-expectations.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/reconciled-expectations.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/run_regression_groups.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/test-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/multiple_inheritance_1_3_13/wheel-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/build-1311-sdist.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/build-1311-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/full-launch-installed-checks.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/full-launch-source-checks.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/full-launch-source-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/installed-1311.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/normal-1311-corpus.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/normal-1311-installed-normal.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/normal-1311-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/normal_startup_1_3_11/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/artifact_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/debt_delta.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/decision_trace_sample.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/golden_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/resource_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/rule_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/semantics_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_02/transition_packet.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_04/golden_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/decision_trace_sample.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/first_slice_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/golden_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_06/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_07/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_07/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_07/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_07/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/checkpoint_c.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/observer_cancellation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_08/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/mapping_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/observer_cancellation_resource_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/phase9_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/python_package_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/review_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/semantic_gate_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_09/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/helper_registry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/opening_checkpoint_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/opening_package_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/opening_test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/package_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/phase10_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/progress_observer_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/qt_widget_smoke_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/semantic_preservation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_10/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/container_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/helper_registry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/package_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/phase11_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/schema_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/semantic_preservation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_11/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/architecture_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/container_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/determinism_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/helper_registry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/module_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/package_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/phase12_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/rule_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/schema_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/semantic_preservation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/source_boundary_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/test_summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_12/transition_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_13/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14/entry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14b/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14b/entry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14b/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14c/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14c/entry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14c/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14d/conversion_debt.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14d/entry_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_14d/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15a/performance_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15a/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15a/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15b/action_registry_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15b/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15b/visual_system_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15c/action_registry_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15c/feature_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15c/performance_evidence.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/phase_15c/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-folded-restore.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-history.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-last-check.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-regressions-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-source-audit.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-source-restart.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-source-workflow.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/project-visual-final.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_history_1_3_14/verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_preview_1_3_14/implementation.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_preview_1_3_14/pytest.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/project_preview_1_3_14/verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_1/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_1/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_2/manual_review.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_2/qt_widget_smoke_scale_1.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_2/qt_widget_smoke_scale_2.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/pycforge_workspace_0_12_2/release_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/final-constructor-help.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/final-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/fresh-readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/fresh-source-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/installed-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/installed-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/installed-versions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_expressions_1_3_41/regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/contracts-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/contracts.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/documentation-conversions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/help-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/installed-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_locals_1_3_43/regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/final-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/fresh-source-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/installed-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/installed-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/installed-versions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/new-record-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_modules_1_3_40/readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/audit-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/contract-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/cumulative-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/earlier-upgrades-followup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/final-conversion-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/fresh-readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/fresh-source-checks.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/installed-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/installed-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/installed-versions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/record_structures_1_3_42/readme-render.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability-allocations-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/address-undefined-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/address-undefined-sanitizers.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/allocations-after.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/allocations-after.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/allocations-before.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/before-fixes.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/conversion-memory-after.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/conversion-memory-after.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/conversion-preservation-baseline.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/earlier-failures-exact.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/full-suite-first.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/full-suite-first.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/full-suite.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/full-suite.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/implementation-changes-preversion.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/installed-editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/installed-files.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/installed-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/installed-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/installed-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/native-sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/native-sanitizers.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/outline-start-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/outline-start-before.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/ownership-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/ownership-before.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/ownership-cancellation.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/ownership-cancellation.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/qt-preview-fixes.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/qt-preview-fixes.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/resource-soak-100.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/resource-soak-100.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/skipped-checks.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/source-publication.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/source-publication.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/token-budget-after.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/token-budget-after.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/token-budget-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/token-budget-before.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/wheel-build.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/reliability_1_3/wheel-source-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/CHANGES.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/PyCForge-Resource-Audit.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/PyCForge-Resource-Windows-Checklist.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/REPRODUCE.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.1.11.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.1.11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.1.11.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.2.1.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.2.1.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-desktop-1.2.1.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-ipc-1.2.1.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-ipc-1.2.1.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-ipc-1.2.1.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-worker-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/baseline-worker-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/build-wheel-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/build-wheel-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/change-inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.1.12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.1.12.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.2.2.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-desktop-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-ipc-1.2.2.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-ipc-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-ipc-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.1.12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.1.12.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.2.2.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/fixed-workspace-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/install-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/install-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-harness-import-error-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-harness-import-error-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-harness-import-error-1.2.2.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.1.12.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.1.12.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-regressions-1.2.2.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-version-1.1.12.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-version-1.1.12.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-version-1.2.2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/installed-version-1.2.2.stderr +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/native-arena-arena.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/native-arena-leaksan-environment-error.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/native-arena-result.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/native-arena.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/probe_desktop_resources.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/probe_runtime_arena.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/probe_supervisor_stalls.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/probe_workspace_cycles.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-final-gates.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-final-gates.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-lifecycle.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-lifecycle.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-services.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/resource-services.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/test_resource_ownership.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/test_resource_supervisor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/unchanged-1.1.12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/resource_audit/unchanged-1.2.2.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/build.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/source-comparison.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/tests-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/tests-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/run_python_1_3_14/wheel-install.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/check_installed.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/collection-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/collection-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/docs.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/installed.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/integration.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/integration.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/sanitizer-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/sanitizer-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_collection_1_3_30/wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/files-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/files-initial.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/installed-new-files.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/installed-new-files.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/installed.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/sanitizer.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/sanitizer.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/source-review.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_file_positions_1_3_31/wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/check_installed.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/docs.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/installed.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/installed.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/integration.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/integration.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/large-mapping.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/new-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/new.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/sanitizer.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/sanitizer.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/scan-help.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/scan-help.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/ui-new-before.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/ui.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/ui.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_validation_1_3_29/wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_values_1_1_2a1/desktop_action.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_values_1_1_2a1/full_regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_values_1_1_2a1/integration_and_allocation_cleanup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_values_1_1_2a1/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/runtime_values_1_1_2a1/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/save-all-cleanup.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/save-all-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/save-all-initial.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/save-all-lifecycle.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/source-comparison.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/tests-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/save_all_1_3_14/tests-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/scalar_1_1/help-examples.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/scalar_1_1/readme-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/scalar_1_1/ting-reproduction.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/scalar_1_1/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/additional-before-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/before-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/controls-before-gradient-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/controls-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/focused.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/folds-before-fix.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/folds-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/ui-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/ui-final.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/ui-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/split_view_1_3_1/ui-focused.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/current-deps-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/current-final-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/current-rename.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/dependency-installation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/final-scale-1.25.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/final-scale-1.5.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/final-scale-2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/focused.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/fresh-install-file-integrity.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/fresh-installed-editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/full-current-display-fixture-crash.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/full-current.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/full-current.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/installed-editor.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/installed-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/installed-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/native-pcfc11.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/native-pcfc11.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/older-dependencies.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/package-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/scale-1.25.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/scale-1.5.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/scale-2.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/skipped-checks.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_fix_1_3_1/wheel-installation-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/build-1310-sdist.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/build-1310-wheel.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/distribution.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/installed-1310.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/installed-wheel.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-corpus-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-docs.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-integrity.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-launch.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/startup_recovery_1_3_10/startup-1310-verified.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/symbol_navigator_1_3_4/navigator-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/symbol_navigator_1_3_4/public-distribution-tests.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/symbol_navigator_1_3_4/source-preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/symbol_navigator_1_3_4/visual-themed-check.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/baseline-comparison.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/distribution-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/installed-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/installed-tests.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/review.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/visual-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_layout_1_3_38/visual-review.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/conversion-regressions.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/conversion-regressions.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/installed-native.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/installed-native.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/installed-payload.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/installed-ui.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/installed-ui.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/runtime-size-comparison.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/sanitizers.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/sanitizers.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/text-parsing.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/text-parsing.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/ui-version.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/ui-version.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/verification-summary.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/text_parsing_1_3_35/wheel-verification.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ting_agents/compiler_custody_attestation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/changed-application-files.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/distribution-initial.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/docs/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/docs/help-check.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/documentation-final.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/documentation-run.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/final-checks.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/installed-wheel-tests.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/record-final-passing.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/record-final.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/record-native-final.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/record-native.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/regressions-final.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/regressions.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/review/review.ini +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/sdist-build-initial.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/wheel-build.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/wheel-install.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/typed_records_1_3_39/wheel-integrity.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_1_1_5/documentation-checks.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_1_1_5/installed-desktop.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_1_1_5/pytest.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_1_1_5/pytest.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_1_1_5/validation_report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/after/report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/before/report.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/focused.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/preservation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/regression.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/regression.xml +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/scale-125.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/ui_review_1_3_14/scale-150.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/changes.patch +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/render-check.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/source-comparison.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/ui-fixes-focused.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/ui-fixes-lifecycle-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/ui-fixes-scale150.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/evidence/workspace_ui_1_3_14/ui-fixes-shutdown-final.log +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/c_ir/essential_golden.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/first_milestone/add.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/first_milestone/expected.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/first_milestone/expected_ruleplans.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/python_check_1_3_23/companion_example.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/python_check_1_3_23/helpers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/python_check_1_3_23/paired-cases.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/python_check_1_3_23/scan_examples.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_dictionaries_1_1_4/grouping.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_dictionaries_1_1_4/word_count.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_everyday_1_1_8/everyday.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_files_1_1_10/expected-report.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_files_1_1_10/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_files_1_1_10/prices.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_files_1_1_10/pricing.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_files_1_1_10/text_files.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_modules_1_1_9/invoice.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_modules_1_1_9/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_modules_1_1_9/models.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_modules_1_1_9/settings.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/runtime_values/coverage_demo.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/support_templates/pycf_i64_floor_div_v1.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/fixtures/support_templates/pycf_i64_floor_mod_v1.c +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/licenses/Python.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/licenses/Ryu-Boost-1.0.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/licenses/TING_REASONER.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/licenses/Unicode.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/__main__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/_matching.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/_numeric_kernels.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/_universal.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/classification.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/decision_model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/engine.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/entities.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/errors.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/indexes.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/ir.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/link_model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/maintenance.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/memory.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/nd.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/numeric.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/optimization.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/py.typed +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/results.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/sharing.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/store.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner/transactions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/_vendor/ting_reasoner_provenance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/__main__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/_launcher.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/_winjob.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/diagnostics.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/profiles.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/runtime_entry.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/assert.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/fenv.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/inttypes.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/locale.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/math.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/stdio.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_include/wchar.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/build/windows_utf8.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/functions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/planning.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/stage.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/symbols.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/analysis/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/c_output/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/c_output/conformance.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/c_output/renderer.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/conditional_regions/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/conditional_regions/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/conditional_regions/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/conditional_regions/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/conditional_regions/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/containers/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/containers/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/containers/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/containers/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/contracts/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/contracts/configuration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/contracts/identifiers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/contracts/versions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/artifact_io.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/cancellation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/canonicalization.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/context.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/diagnostics.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/enums.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/fingerprint.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/pipeline.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/progress.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/request.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/resource_policy.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/result.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/serialization.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/stage.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/stage_artifact.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/core/stage_outcome.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/decision_trace/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/decision_trace/recorder.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/facade.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/conformance.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/runtime.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/file_io/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/normalizer.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/parser.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/source_document.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/stages.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/frontend/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/io/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/io/atomic_writer.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/c_ir/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/c_ir/builder.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/c_ir/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/c_ir/serialization.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/c_ir/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/python_ir/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/ir/python_ir/nodes.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_calls/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_calls/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_calls/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_calls/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_calls/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_only_calls/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_only_calls/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_only_calls/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_only_calls/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/keyword_only_calls/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/loop_completion/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/loop_completion/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/loop_completion/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/loop_completion/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/loop_completion/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/module_exports.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/record_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/modules/stage.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/numeric_semantics/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/numeric_semantics/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/numeric_semantics/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/numeric_semantics/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/boundaries.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/expressions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/structure_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/structures.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/records/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/rules/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/call_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/class_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/compiler.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/container_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/dict_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/everyday_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/exceptions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/file_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/format_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/gc_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/module_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/modules.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/numeric_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/provenance.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/runtime.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/ryu_data.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/ryu_provenance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/set_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/text_ops.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/unicode_data.h +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/runtime_values/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scalars/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scalars/expansion.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scalars/lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scalars/runtime.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scalars/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scope_lifetimes/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scope_lifetimes/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scope_lifetimes/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/scope_lifetimes/validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/support_templates/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/support_templates/assembly.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/support_templates/factories.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/support_templates/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/support_templates/registry.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/telemetry/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/converter/telemetry/sink.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/__main__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_forgelens_builder.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_forgelens_model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_event_codec.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_protocol_json.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_protocol_types.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_request_codec.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_request_data.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/_worker_result_data.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/action_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/action_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/analysis_cache.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/command_palette.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/controller_conversion.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/controller_edits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/controller_project.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/conversion_profiles.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editing_operations.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editing_worker.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_commands_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_lexical.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_markers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_offsets.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_productivity.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_sidebars.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/editor_syntax.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/find_advanced.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/find_replace.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/forgelens.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/icons.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/io_service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/launcher.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/outline_parser.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/outline_process.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/outline_protocol.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/panels.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/positions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/process_worker.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/project_archive.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/project_workspace.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/python_runner.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_about.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_actions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_branding.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_build.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_build_files.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_close.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_command_palette.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_conversion_diagnostics.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_dialog_chrome.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_documents.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_edit_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editing_helpers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editing_service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editor_buffers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editor_settings.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editor_surfaces.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_editor_tools.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_file_dialogs.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_forgelens.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_help.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_icons.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_menus.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_open_queue.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_preview_service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_project_dialogs.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_project_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_projection.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_python_check.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_run_python.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_scan_results_popup.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_screen_geometry.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_session.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_session_state.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_settings.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_shell.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_shell_interactions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_source_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_startup.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_state.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_symbol_icons.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_symbol_navigator.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_text_settings.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_ting_actions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_ting_feedback.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_ting_flow.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_toast.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_tools_menu.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_window_chrome.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_window_resize.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_workspace_features.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_workspace_navigation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_workspace_observers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_workspace_panels.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/qt_workspace_widgets.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/rename_safety.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/calls-modules.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/catalog.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/cli-api.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/containers-records.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/contracts.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/control-flow.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/diagnostics.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/file-io.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/help-authoring.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/help.css +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/module-exports.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/record-structures.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-classes.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-comprehensions.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-containers.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-exceptions.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-file-positions.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-file-updates.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-files.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-functions.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-memory.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-strings.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-validation.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/runtime-values.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/safety-limits.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/shortcuts.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/start.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/ting-agents.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/help/types-expressions.html +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/128/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/16/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/20/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/24/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/256/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/32/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/48/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/64/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/add-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/brand-mark.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/bundle-search.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/cancel.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/check.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/chevron-right.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/close.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/collapse-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/command-palette.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/convert.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/copy.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/cut.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/decision-trace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/details.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/diagnostics.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/duplicate-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/exit.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/expand-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/export.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/find.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/go-to-line.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/go-to-output.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/go-to-source.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/help.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/history.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/indent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/link-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/mappings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/move-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/move-line-down.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/move-line-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/move-up.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/next.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/open.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/outdent.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/outline.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/paste.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/previous.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/primary-module.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/redo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/remove-document.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/replace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/save-as.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/save.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/select-all.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/settings.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/show-c.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/split-view.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/summary.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/telemetry.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/toggle-comment.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/toggle-fold.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/tools.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/undo.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/resources/icons/96/whitespace.png +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/revisions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/search_service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/session_history.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/source_editing.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/source_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/source_structure.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/source_structure_async.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/supervisor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/supervisor_transport.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/symbol_navigation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/text_changes.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/theme.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/theme_steel_stylesheet.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/theme_stylesheet.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/theme_workspace_stylesheet.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/ting_feedback.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/visual_tokens.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/work_budget.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/worker_protocol.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/workspace_search.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ide/workspace_session.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/audits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/checkpoint_e.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/cli.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/exit_codes.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/keyword_audit.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/laboratory/keyword_only_audit.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/agents.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/facts.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/rulesets/calls.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/rulesets/defaults.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/rulesets/flow.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/rulesets/nullable.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/rulesets/registry.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/python_check/worker.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/__init__.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/coordinator.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/errors.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/registry.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/capability.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/capability.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/lowering.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/lowering.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/ownership.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/ownership.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/registry.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/semantics.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/semantics.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/syntax.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/syntax.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/verification.ting +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/rulesets/verification.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge/ting_agents/startup.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge.egg-info/dependency_links.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge.egg-info/entry_points.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge.egg-info/requires.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/pycforge.egg-info/top_level.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/schemas/decision_trace.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/schemas/telemetry.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/setup.cfg +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/analysis_and_planning.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/approximation_policy.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/bounded_containers.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/c_ir_schema.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/c_output_style.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/c_renderer_contract.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/configuration.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/conversion_semantics.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/diagnostics.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/editor_feedback_1_3_37.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/editor_responsiveness_1_1_7.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/fact_table_schema.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/feature_matrix.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/generated_c_conformance.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/module_bundles.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/module_exports_1_3_36.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/multiple_inheritance_1_3_13.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase14a_bounded_integer_divmod.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase14b_conditional_temporary_regions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase14c_direct_keyword_calls.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase14d_required_keyword_only_calls.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase6_first_complete_slice.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase7_workspace.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase8_control_flow.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/phase9_functions_calls.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/product_boundary.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/pycforge_workspace.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/pycforge_workspace_legacy_0_1.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_check/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_check/calls.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_check/defaults.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_check/flow.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_check/nullable.tingspec.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/python_ir_schema.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/record_expressions_1_3_41.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/record_modules_1_3_40.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/record_structures_1_3_42.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/representation_ownership_lifetime.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/resource_cancellation_save.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/result_and_fingerprints.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/rule_plan_schema.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_collection_1_3_30.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_exceptions_1_3_28.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_file_positions_1_3_31.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_file_updates_1_3_34.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_files_1_1_10.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_modules_1_1_9.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_text_parsing_1_3_35.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_validation_1_3_29.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_values_1_1_2.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_values_1_1_3.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_values_1_1_4.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/runtime_values_1_1_8.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/scalar_strings_1_1.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/source_bundle.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/source_frontend.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/static_records.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/support_templates.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/supported_python.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/target_c_source_contract.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/text_layout_scrollbars_1_3_38.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/ting_agent_architecture.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/specifications/typed_record_boundaries_1_3_39.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/fixtures/project_probe_1_3_14.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/fixtures/startup_probe_1_3_11.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_about_and_window_chrome_review.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_audit_fixes_1_3_21.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_build_resource_lifecycle.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_checkpoint_e_audits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_checkpoint_e_feature_matrix.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_checkpoint_e_predecessor_equivalence.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_checkpoint_e_release_packaging.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_compiler_profiles_1_3_9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_compiler_profiles_qt_1_3_9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_completion_editor_1_3_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_consolidated_build.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_audit_1_3_12.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_correctness_1_1_2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_coverage_1_1_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_deep_audit_1_3_32.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_diagnostics_qt_1_3_26.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_memory_audit_1_3_12.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_mode_ui_1_1_5.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_conversion_navigation_1_3_29.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_decorators_1_3_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_deep_audit_ui_1_3_32.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_dialog_control_focus_1_0_5.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_behavior_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_feedback_1_3_37.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_integration_audit.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_lifecycle_regressions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_productivity_1_1_6.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_regressions_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_responsiveness_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_scrollbars_1_3_38.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_editor_settings_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_everyday_runtime_1_1_8.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_extended_conversions_1_3_5.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_filesystem_audit_1_3_19.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_final_windows_acceptance_1_0_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_find_paste_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_folding_assistance_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_forgelens.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_forgelens_controller.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_frontend_eof_boundaries.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_function_extensions_1_3_6.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_help_documentation_0_16_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_inheritance_1_3_8.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_matte_theme_1_3_33.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_module_export_qt_1_3_36.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_module_exports_1_3_36.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_multiple_inheritance_1_3_13.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_normal_startup_1_3_11.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_numeric_dependency_compatibility.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_pcfc11_build.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_pcfc11_build_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_pcfc11_dialog_paths.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase0.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase10.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase11.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12_1_editor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12_1_pycforge_theme.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12_2_components.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12_2_controller.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase12_2_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_audits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_c_ir.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_end_to_end.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_record_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_record_lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase13_record_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14_numeric_end_to_end.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14_numeric_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14b_audits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14b_conditional_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14b_conditional_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14b_conditional_lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14c_cumulative_eligibility.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14c_keyword_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14c_keyword_audits.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14c_keyword_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14c_keyword_lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14d_cumulative_eligibility.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14d_keyword_only_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14d_keyword_only_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase14d_keyword_only_lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_async_search.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_controller.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_editor_decomposition.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_editor_large_file.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_io_service.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_position_indexes.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_qt_decomposition.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_release_packaging.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_revisions.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_stress.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_supervisor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15a_worker_protocol.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_action_foundation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_action_integration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_release_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_release_packaging.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_visual_foundation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15b_visual_integration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_action_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_command_palette.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_qt_command_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_qt_panels_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_qt_position_reverse.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_qt_workspace_integration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_release_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_release_packaging.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_session_history.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_source_editing.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_source_structure.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_visual_system.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_workspace_search.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase15c_workspace_session.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_c_ir_validation_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_end_to_end.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_payload_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_registry.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_rejections.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_runtime.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_file_io_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_end_to_end.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_lowering.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_payload_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_resources.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_loop_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_scope_analysis.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_scope_boundaries.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_scope_payload_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase16_scope_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase4.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase5.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase6.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase8.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_phase9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_programmers_guide.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_project_archive.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_project_preview_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_project_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_public_distribution.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_pycforge_qt_integration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_pycforge_workspace.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_python_check_1_3_22.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_python_check_1_3_23.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_python_check_qt_1_3_22.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_python_check_qt_1_3_23.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_qt_file_dialogs.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_qt_forgelens.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_qt_open_queue.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_record_expressions_1_3_41.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_record_locals_1_3_43.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_record_modules_1_3_40.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_record_structures_1_3_42.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_reliability_audit.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_resource_dialogs.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_resource_lifecycle.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_resource_lifecycle_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_resource_ownership.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_resource_supervisor.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_review_hardening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_run_python.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_run_python_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_arena_cleanup.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_collection_1_3_30.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_dictionaries_1_1_4.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_exceptions_1_3_28.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_file_positions_1_3_31.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_file_updates_1_3_34.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_files_1_1_10.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_modules_1_1_9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_provenance_1_3_29.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_text_layout_1_3_38.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_text_parsing_1_3_35.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_values_integration.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_runtime_values_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_save_all_python_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_scalar_strings_1_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_scan_freshness_qt_1_3_27.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_smoke_pycforge_workspace_0_12_2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_source_preview.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_source_publication_memory.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_startup_layout_1_3_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_startup_progress_0_16_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_startup_recovery_1_3_10.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_steel_theme.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_symbol_navigator_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_ting_agents.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_tools_split_qt_1_3_25.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_typed_record_boundaries_1_3_39.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_typing_ui_stability_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_ui_continuity_1_0_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_ui_lifecycle_0_16_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_ui_polish_1_3_14.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_ui_review_corrections_1_0_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase13.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase14.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase14b.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase14c.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase14d.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase15a.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase15b.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_phase15c.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_validate_workspace_usability_0_15_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_windows_ui_scale_and_identity_1_0_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tests/test_workspace_ui_fixes_1_3_14.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/_phase15a_runtime_validation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/_phase15b_release_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/_phase15c_release_contract.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/benchmark_editor_responsiveness.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/benchmark_workspace_typing.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_checkpoint_e_release.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_matte_icons.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_phase15a_release.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_phase15b_release.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_phase15c_release.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/build_programmers_guide.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/check_editor_responsiveness.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/checkpoint_e_predecessor_equivalence.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/collect_phase11_evidence.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/collect_phase12_evidence.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/generate_runtime_printable.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/normalize_sdist.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/profile_conversion_allocations.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/profile_conversion_memory.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/profile_resources.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/reconcile_release.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/run_conversion_corpus.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/runtime_preview_smoke.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/smoke_phase10_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/smoke_phase11_qt.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/smoke_pycforge_workspace_0_12_2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_checkpoint_e.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase0.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase10.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase10_opening.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase11.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase12.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase13.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase14.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase14b.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase14c.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase14d.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase15a.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase15b.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase15c.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase4.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase5.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase6.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase8.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_phase9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_pycforge_workspace_0_12_1.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_pycforge_workspace_0_12_2.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_ting_agents.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/validate_workspace_usability_0_15_3.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_conversion_documentation.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_editor_feedback_1_3_37.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_installed_editor_1_1_7.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_installed_everyday_1_1_8.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_installed_files_1_1_10.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_installed_modules_1_1_9.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_installed_version_surfaces.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/tools/verify_scrollbars_1_3_38.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/calls-expansion-order/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/calls-expansion-order/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-class-scope/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-class-scope/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-closures/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-closures/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-methods/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-methods/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-modules/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-modules/facade.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-modules/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-modules/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-modules/support.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-order/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/decorators-order/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-class-closure/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-class-closure/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-files-modules/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-files-modules/helpers.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-files-modules/input.txt +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-files-modules/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-text-comprehension/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-text-comprehension/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-typed-flow/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/existing-typed-flow/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-dictionary-merge/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-dictionary-merge/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-numeric/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-numeric/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-reverse-iteration/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-reverse-iteration/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-sets/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-sets/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-slice-mutation/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/extended-slice-mutation/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-nonlocal/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-nonlocal/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-recursion/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-recursion/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-variadic/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/functions-variadic/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-annotations/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-annotations/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-decorated/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-decorated/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-diamond/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-diamond/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-dispatch/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-dispatch/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-modules/app.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-modules/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-modules/model.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-modules/public.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-mro-order/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-mro-order/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-scopes/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-scopes/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-super/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-super/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-types/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/inheritance-types/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/starred-packing-targets/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/starred-packing-targets/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-async/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-async/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-class-decorator/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-class-decorator/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-dynamic-base/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-dynamic-base/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-exception/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-exception/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-generator/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-generator/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-inconsistent-mro/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-inconsistent-mro/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-inheritance/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-inheritance/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-multiple-inheritance/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-multiple-inheritance/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-nested-def/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-nested-def/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-property/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-property/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-third-party/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-third-party/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-variadic/case.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/cases/unsupported-variadic/main.py +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/1.3.4-to-1.3.5.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/1.3.5-to-1.3.6.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/1.3.6-to-1.3.7.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/1.3.7-to-1.3.8.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/comparisons/documentation-validation.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/construction_episodes/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/coverage/inventory.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/datasets/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/dependency_manifests/core-python-3.12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/documentation_cases/index.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/module_manifests/python-builtins-3.12.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/references/python-3.12-language.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/baseline-1.3.4-verified.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/baseline-1.3.4.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/baseline-1.3.5-functions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/baseline-1.3.6-decorators.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/baseline-1.3.7-inheritance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.10-startup-verified.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.11-startup-normal.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.12-conversion-audit.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.13-multiple-inheritance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.5-verified.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.5.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.6-final.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.6-functions.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.6-verified.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.7-decorators.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.8-inheritance.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/runs/runtime-1.3.9-compiler-profiles.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/case.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/construction-episode.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/coverage.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/dataset.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/dependency-manifest.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/module-manifest.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/training_corpus/schemas/run.schema.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/architecture_and_workspace_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/breadth_and_change_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/feature_boundaries.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/feature_matrix_reconciliation.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/opening_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/performance_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/checkpoint_e/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_0/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_0/first_milestone_contract.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_0/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_0/non_goals_by_phase.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_1/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_1/empty_pipeline_invariants.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_1/facade_contract.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_1/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/entry_gate.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/helper_feasibility_decisions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/opening_checkpoint_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/opening_checkpoint_manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_10/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/container_representation_decisions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_11/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/module_bundle_decisions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_12/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/candidate_reseed.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/record_representation_decisions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_13/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/breadth_and_change_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/integer_divmod_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/opening_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/breadth_and_change_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/conditional_temporary_regions_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/opening_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14b/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/breadth_and_change_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/direct_keyword_calls_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/opening_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14c/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/breadth_and_change_budgets.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/opening_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/required_keyword_only_calls_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_14d/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/responsiveness_and_isolation_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15a/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/application_shell_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15b/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/release_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_15c/workspace_completeness_decision.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_2/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_2/checkpoint_a.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_2/laboratory_contract.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_2/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_3/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_3/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_3/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_4/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_4/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_4/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_5/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_5/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_5/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_5/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_6/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_6/checkpoint_b.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_6/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_6/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_6/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_7/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_7/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_7/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_7/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_7/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_8/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_8/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_8/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_8/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_8/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_9/baseline_fingerprint.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_9/entry_criteria.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_9/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_9/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_9/rollback_conditions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_minus_1/feasibility_decisions.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/phase_minus_1/risk_register.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/workspace_hardening_0_12_1/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/workspace_hardening_0_12_1/manifest.json +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/workspace_hardening_0_12_2/README.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/workspace_hardening_0_12_2/gate_evidence.md +0 -0
- {pycforge-1.3.43 → pycforge-1.3.45}/transition/workspace_hardening_0_12_2/manifest.json +0 -0
|
@@ -0,0 +1,1340 @@
|
|
|
1
|
+
# PyCForge 1.3.44 — Crucible release documentation
|
|
2
|
+
|
|
3
|
+
- Package the complete application as 1.3.44, including metadata, startup,
|
|
4
|
+
workspace and About versions, and every generated HTML Help footer.
|
|
5
|
+
- Publish the corrected README with its existing section order and examples,
|
|
6
|
+
current Typed conversion coverage, 29 Help pages and recent conversion fixes.
|
|
7
|
+
- Retain exactly four external images: the PyCForge banner, two UI screenshots,
|
|
8
|
+
and the approved Crucible engine banner directly below the bug tracker.
|
|
9
|
+
- Preserve the conversion engine, dependencies, icons and practical HTML Help.
|
|
10
|
+
- See PyCForge-1.3.44-Verification.txt for the exact release checks and hashes.
|
|
11
|
+
|
|
12
|
+
# PyCForge 1.3.43 — Immutable Typed record locals
|
|
13
|
+
|
|
14
|
+
- Support fresh record aliases, exact initialized local class annotations,
|
|
15
|
+
chained assignment and flat literal unpacking with ordered evaluation.
|
|
16
|
+
- Preserve nominal types and immutable C value copies; reject mutation,
|
|
17
|
+
identity observations, redeclaration and collection aliases.
|
|
18
|
+
- Retain explicit historical profiles and replay local declaration proofs.
|
|
19
|
+
- Align the Classes & Functions copy action to the left title-bar slot.
|
|
20
|
+
- Extend practical HTML Help without development-cycle status.
|
|
21
|
+
- Refresh the existing README's conversion coverage and recent bug fixes;
|
|
22
|
+
retain its section order, feature focus, examples and contact information.
|
|
23
|
+
- Introduce the Crucible engine banner below the bug tracker. Keep exactly
|
|
24
|
+
four external image URLs: the main banner, two UI screenshots and Crucible.
|
|
25
|
+
- Rebuild the same 1.3.43 wheel and source archive for the user's own upload.
|
|
26
|
+
- See specifications/record_locals_1_3_43.md and
|
|
27
|
+
PyCForge-1.3.43-Verification.txt for scope and verification.
|
|
28
|
+
|
|
29
|
+
# PyCForge 1.3.42 — Structured immutable Typed records
|
|
30
|
+
|
|
31
|
+
- Read fields directly from constructors, factory results, nested records and
|
|
32
|
+
constant-indexed record collection elements; preserve evaluation order.
|
|
33
|
+
- Support exact nominal nested record fields with bounded acyclic inline
|
|
34
|
+
layouts, and fixed local homogeneous record lists/tuples with ordered loops.
|
|
35
|
+
- Replay source/collection evidence before emission; validate nested C types,
|
|
36
|
+
dependency order and const propagation. Keep earlier explicit profiles.
|
|
37
|
+
- Fix private-field name-mangling conversion and reject late imports used by
|
|
38
|
+
nested record annotations before they are bound in Python.
|
|
39
|
+
- Add complete executable HTML examples and synchronize existing Help limits.
|
|
40
|
+
README.md remains byte-for-byte unchanged; no UI or Runtime behavior change.
|
|
41
|
+
- See specifications/record_structures_1_3_42.md and
|
|
42
|
+
PyCForge-1.3.42-Verification.txt for scope, checks and remaining limits.
|
|
43
|
+
|
|
44
|
+
# PyCForge 1.3.41 — Typed record constructor expressions
|
|
45
|
+
|
|
46
|
+
- Support direct record construction in returns and positional function
|
|
47
|
+
arguments, including branches, nested calls and imported class aliases.
|
|
48
|
+
- Preserve exact nominal types and scalar field layouts. Stage arguments once
|
|
49
|
+
from left to right and return automatic struct values without heap storage.
|
|
50
|
+
- Authenticate constructor expression evidence against the source and retain
|
|
51
|
+
explicit historical profiles with their previous constructor limits.
|
|
52
|
+
- Add a complete reflection-and-distance example to HTML Help and update the
|
|
53
|
+
multi-module and separate C caller examples. Describe supported usage and
|
|
54
|
+
practical limits without development-cycle commentary.
|
|
55
|
+
- Leave README.md byte-for-byte unchanged, including its version heading and
|
|
56
|
+
three approved image URLs, while conversion upgrades continue.
|
|
57
|
+
- See specifications/record_expressions_1_3_41.md and
|
|
58
|
+
PyCForge-1.3.41-Verification.txt for technical scope and verification.
|
|
59
|
+
|
|
60
|
+
# PyCForge 1.3.40 — Typed records across supplied modules
|
|
61
|
+
|
|
62
|
+
- Import immutable record classes directly from their defining supplied module,
|
|
63
|
+
with optional aliases. Pass and return exact record types through imported
|
|
64
|
+
functions; allow record-only companion modules.
|
|
65
|
+
- Preserve nominal class identity, scalar field layouts, value-copy C structs
|
|
66
|
+
and separate module exports. Authenticate imported aliases against retained
|
|
67
|
+
source and validate cross-module C types through declared dependencies.
|
|
68
|
+
- Promote typed-record-modules-v1.3 / c-renderer-v1.3. Explicit historical
|
|
69
|
+
profiles retain their previous limits; Runtime conversion is unchanged.
|
|
70
|
+
- Add an executable three-module geometry example to HTML Help, including
|
|
71
|
+
import rules, factory results, nominal typing and remaining call limits.
|
|
72
|
+
Restore the current-version footer on five existing Runtime Help pages.
|
|
73
|
+
- Update only the README version and affected conversion coverage. Retain its
|
|
74
|
+
established prose, code examples, contact, bug tracker and exact three approved
|
|
75
|
+
image URLs. The existing screenshots remain accurately labeled 1.3.39.
|
|
76
|
+
- Package no screenshots or design images; preserve the required app icons.
|
|
77
|
+
- See specifications/record_modules_1_3_40.md and
|
|
78
|
+
PyCForge-1.3.40-Verification.txt for scope and verification.
|
|
79
|
+
|
|
80
|
+
# PyCForge 1.3.39 — Typed record parameters and returns
|
|
81
|
+
|
|
82
|
+
- Add nominal immutable record parameters, factory results, forwarding and
|
|
83
|
+
returns in Typed mode. Preserve exact field types and positional evaluation
|
|
84
|
+
order; reject mutation, mismatched classes and unsafe value uses.
|
|
85
|
+
- Generate C structs passed and returned by value without heap allocation.
|
|
86
|
+
Include exact generated type names and record layouts in module export metadata.
|
|
87
|
+
- Promote typed-record-values-v1.2 / c-renderer-v1.2 while preserving explicit
|
|
88
|
+
historical profiles. Runtime keeps its 1.3.38 conversion contract.
|
|
89
|
+
- Expand executable HTML Help with complete Python and separate C caller
|
|
90
|
+
examples, copy semantics and clear module/call limits. Repair the Help catalog's
|
|
91
|
+
Runtime strings keyword count so all documentation pages can load.
|
|
92
|
+
- Refresh the established README for 1.3.39 with the approved banner and two
|
|
93
|
+
exact Cloudinary screenshot URLs, current conversion coverage, and the five
|
|
94
|
+
confirmed 1.3.32 audit fixes above the retained contact details. Keep code
|
|
95
|
+
examples and application icon files unchanged; add no other README links.
|
|
96
|
+
- Exclude screenshots and design images from release archives; retain only
|
|
97
|
+
required application icons and enforce this in distribution verification.
|
|
98
|
+
- See specifications/typed_record_boundaries_1_3_39.md and
|
|
99
|
+
PyCForge-1.3.39-Verification.txt for scope and verification.
|
|
100
|
+
|
|
101
|
+
# PyCForge 1.3.38 — Runtime text layout and normal editor scrollbars
|
|
102
|
+
|
|
103
|
+
- Add Runtime center, ljust, rjust, zfill and expandtabs with Unicode character
|
|
104
|
+
widths, bound/expanded calls, argument validation, and bounded output work.
|
|
105
|
+
- Default both Python panes to ordinary vertical/horizontal scrollbars. Retain
|
|
106
|
+
diagnostic, Find and ForgeLens navigation without the overlapping marker rail.
|
|
107
|
+
- Fit gutters to the text viewport; correct orientation-specific handle sizing,
|
|
108
|
+
scroll-area corner painting and editor edge clipping in Python and Generated C.
|
|
109
|
+
- Extend executable HTML Help; preserve README, dependencies and theme artwork.
|
|
110
|
+
- See PyCForge-1.3.38-Verification.txt and specifications/text_layout_scrollbars_1_3_38.md.
|
|
111
|
+
|
|
112
|
+
# PyCForge 1.3.37 — Editor feedback and Save As corrections
|
|
113
|
+
|
|
114
|
+
- Show the saved filename in tabs, Source Bundle rows, source headers and window titles.
|
|
115
|
+
Preserve explicit module/logical identities and imports. Complete the visible save
|
|
116
|
+
projection before reporting success, including when snapshot delivery is delayed.
|
|
117
|
+
- Put call signatures in the existing status strip; retain clickable completion lists.
|
|
118
|
+
Retire hints when their editor context changes without replacing newer status feedback.
|
|
119
|
+
- Highlight function/class names without repainting def/class. Respect lexical string
|
|
120
|
+
and comment boundaries, multiline state resets and UTF-16 positions.
|
|
121
|
+
- Distinguish source edits from syntax-format refreshes. Preserve authenticated fold
|
|
122
|
+
arrows, collapsed functions and source markers across format-only updates.
|
|
123
|
+
- Update HTML workspace Help. Keep README, converter engines, matte theme and icons.
|
|
124
|
+
- See PyCForge-1.3.37-Verification.txt and specifications/editor_feedback_1_3_37.md.
|
|
125
|
+
|
|
126
|
+
# PyCForge 1.3.36 — Separate Typed C module exports
|
|
127
|
+
|
|
128
|
+
- Export a fresh Typed conversion as one C source/header pair per module,
|
|
129
|
+
shared type declarations, and a machine-readable C ABI manifest in a ZIP.
|
|
130
|
+
- Preserve validated function bodies and existing generated symbols. Resolve
|
|
131
|
+
helper dependencies per translation unit; keep support helpers internal.
|
|
132
|
+
Check portable filenames, C11 significant symbol prefixes and complete emission ranges.
|
|
133
|
+
- Add File → Export C Modules in the existing matte custom chooser. Build archives
|
|
134
|
+
off the UI thread and atomically publish only while the exact Typed result is fresh.
|
|
135
|
+
Pending text/identity edits immediately retire export authority. Existing Save C,
|
|
136
|
+
ForgeLens and Compile continue to use the unchanged single-file result.
|
|
137
|
+
- Document C parameter declarations, file status arguments and ownership.
|
|
138
|
+
HTML Help includes an executable API export and separate C caller; README unchanged.
|
|
139
|
+
- Runtime exports still require a shared-context ABI design. No new Python syntax,
|
|
140
|
+
dependencies, stable cross-release binary ABI, or automatic record boundaries are claimed.
|
|
141
|
+
- See PyCForge-1.3.36-Verification.txt and specifications/module_exports_1_3_36.md.
|
|
142
|
+
|
|
143
|
+
# PyCForge 1.3.35 — Runtime text parsing coverage
|
|
144
|
+
|
|
145
|
+
- Add rsplit, splitlines, partition/rpartition, and exact prefix/suffix removal.
|
|
146
|
+
Support Unicode whitespace/line boundaries, embedded NUL, bound methods,
|
|
147
|
+
keyword forms where Python permits them, and supplied-module parser helpers.
|
|
148
|
+
- Charge text scanning/comparison work to the existing execution budget;
|
|
149
|
+
preserve terminal allocation/work failure semantics and arena ownership.
|
|
150
|
+
- Extend HTML Help with executable configuration and filename parsing examples.
|
|
151
|
+
Keep the matte UI, README, dependency list and Typed contracts unchanged.
|
|
152
|
+
- Verification details and platform limits: PyCForge-1.3.35-Verification.txt.
|
|
153
|
+
|
|
154
|
+
# PyCForge 1.3.34 — Runtime text update modes
|
|
155
|
+
|
|
156
|
+
- Add r+, w+, a+, and x+ UTF-8 file workflows in Runtime conversion.
|
|
157
|
+
Require successful seek between reads and writes. Append-update begins at
|
|
158
|
+
EOF and preserves append semantics; exclusive-update preserves existing files.
|
|
159
|
+
- Reject nonzero read-derived bookmark writes before changing data.
|
|
160
|
+
Such bookmarks still replay reads. Tell/flush cannot bypass direction checks.
|
|
161
|
+
- Keep budgets cumulative, avoid input-stream fflush, and close streams on
|
|
162
|
+
positioning failures. Internal file layout changed: regenerate C/rebuild callers.
|
|
163
|
+
- Add HTML Help with three runnable examples, mode comparison and precise limits.
|
|
164
|
+
README, matte UI, dependencies and Typed conversion contracts stay unchanged.
|
|
165
|
+
- Verification details and platform limits: PyCForge-1.3.34-Verification.txt.
|
|
166
|
+
|
|
167
|
+
# PyCForge 1.3.33 — Universal matte interface and harpy eagle branding
|
|
168
|
+
|
|
169
|
+
- Apply brighter graphite surfaces and solid matte buttons across the workspace,
|
|
170
|
+
menus, dialogs, reports, scan panels, Help, and Ting viewers. Hover, focus,
|
|
171
|
+
pressed, checked, disabled, and semantic feedback remain distinct.
|
|
172
|
+
- Introduce the gray harpy eagle and steel-blue C lettering. Rebuild the 56-icon
|
|
173
|
+
PNG catalogue at nine sizes, including simplified eagle artwork for small UI
|
|
174
|
+
placements. No SVG assets are shipped.
|
|
175
|
+
- Separate dialog resizing from maximizing. Compact prompts/settings remain fixed;
|
|
176
|
+
command and list dialogs resize where useful; large viewers explicitly offer
|
|
177
|
+
maximize/restore beside Close on the right. Move the Classes & Functions Copy
|
|
178
|
+
action into the right title-bar toolbar.
|
|
179
|
+
- Keep About's system information inside compact displays and make the exact
|
|
180
|
+
registry fingerprint selectable in a read-only field. Own deferred dialog-focus
|
|
181
|
+
restoration with a timer that ends with the dialog. Fixed startup progress
|
|
182
|
+
still refits longer stage/failure messages, including larger UI fonts.
|
|
183
|
+
- Update HTML Help with appearance and dialog-control guidance. README.md and
|
|
184
|
+
conversion/scan engines remain byte-for-byte unchanged from 1.3.32.
|
|
185
|
+
- Verification details and platform limits: PyCForge-1.3.33-Verification.txt.
|
|
186
|
+
|
|
187
|
+
# PyCForge 1.3.32 — Deep conversion audit corrections
|
|
188
|
+
|
|
189
|
+
- Correct Runtime iterator retry and exhaustion state, including strict and
|
|
190
|
+
non-strict zip, recovered mapping mutation errors, and files rewound after EOF.
|
|
191
|
+
- Consume complete dictionary input pairs before checking their arity, preserving
|
|
192
|
+
prior updates and fixed-target assignment's separate consumption rule.
|
|
193
|
+
- Add native/Python interaction witnesses and audit the complete test inventory.
|
|
194
|
+
- Release pending Tools and quick-view callbacks when their window is destroyed;
|
|
195
|
+
keep standard window controls inside the menu bar at narrow widths.
|
|
196
|
+
- Refresh active release assertions without changing sealed conversion contracts.
|
|
197
|
+
- Update HTML Help examples and retain README.md byte-for-byte.
|
|
198
|
+
- Verification details and platform limits: PyCForge-1.3.32-Verification.txt.
|
|
199
|
+
|
|
200
|
+
# PyCForge 1.3.31 — Runtime text bookmarks and exclusive creation
|
|
201
|
+
|
|
202
|
+
Runtime UTF-8 file workflows now support tell and bounded seek: restore a
|
|
203
|
+
bookmark on the same open handle, rewind, retain the current position, or
|
|
204
|
+
move to EOF. Unicode/newline lookahead is preserved; file iteration's telling
|
|
205
|
+
restriction is observed. Bookmarks are opaque, handle-local values, not
|
|
206
|
+
character indexes or portable offsets. Host C long limits still apply.
|
|
207
|
+
|
|
208
|
+
Mode x creates a new file without overwriting an existing destination.
|
|
209
|
+
FileExistsError is admitted as a recoverable builtin exception, with OSError
|
|
210
|
+
and Exception parent matching. Writes after creation can still leave partial
|
|
211
|
+
files on failure. Conversion itself performs no source-program file I/O.
|
|
212
|
+
|
|
213
|
+
Seeking never resets resource counters. Bookmark storage is released on all
|
|
214
|
+
close paths; live-file collection refusal and closed-handle collection remain
|
|
215
|
+
intact. Internal PFile layout changed: regenerate C and rebuild callers.
|
|
216
|
+
No dependency, UI control, save workflow, or README changes.
|
|
217
|
+
|
|
218
|
+
HTML Help adds File bookmarks and exclusive creation, with runnable examples,
|
|
219
|
+
search entries, precise limits, and updated file/exception references. See
|
|
220
|
+
specifications/runtime_file_positions_1_3_31.md and the release verification
|
|
221
|
+
report. Native Windows acceptance remains outstanding.
|
|
222
|
+
|
|
223
|
+
Queued work includes separate C-module exports, binary/update file profiles,
|
|
224
|
+
Typed record boundaries, and automatic collection with live temporary roots.
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
# PyCForge 1.3.30 — Explicit Runtime memory reclamation
|
|
229
|
+
|
|
230
|
+
C callers can now use pv_collect between completed Runtime calls to reclaim
|
|
231
|
+
unreachable values and cycles while retaining supplied PV roots and context
|
|
232
|
+
state. Precise, non-moving tracing covers closures/defaults, shared containers,
|
|
233
|
+
objects/methods, iterators/views, module bindings, and closed file handles.
|
|
234
|
+
Released file-read buffers also return retained-file capacity.
|
|
235
|
+
|
|
236
|
+
Collection is opt-in at idle C-call boundaries. It does not run inside Python
|
|
237
|
+
loops or automatically at allocation failure, and it does not reset work/file
|
|
238
|
+
budgets. Active calls/files, errors, invalid root metadata, and collector
|
|
239
|
+
scratch allocation failure refuse collection before any sweep. Retained PVs
|
|
240
|
+
must be supplied on each call; raw pointers alone are not roots.
|
|
241
|
+
|
|
242
|
+
Internal allocation/closure layouts changed: regenerate C and rebuild callers
|
|
243
|
+
together. Existing no-collection callers keep their original arena lifetime.
|
|
244
|
+
No dependency, UI component, save workflow, or README changes.
|
|
245
|
+
|
|
246
|
+
HTML Help adds Runtime memory and collection with a verified C caller and
|
|
247
|
+
updates lifetime/file-budget guidance. See specifications/runtime_collection_1_3_30.md.
|
|
248
|
+
Automatic collection within executing functions remains separate work requiring
|
|
249
|
+
live temporary roots. Other queued upgrades include module .h/.c exports,
|
|
250
|
+
expanded file profiles, and Typed record boundaries.
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
# PyCForge 1.3.29 — Runtime validation and ForgeLens
|
|
255
|
+
|
|
256
|
+
Runtime conversion now records exact source-to-C emission ranges and checks
|
|
257
|
+
final output through a separate validator before publication. Checks cover
|
|
258
|
+
source identities and AST ranges, complete output byte coverage, Unicode
|
|
259
|
+
coordinates, C lexical balance, callable declarations/definitions, and local
|
|
260
|
+
jump destinations. ForgeLens uses the established authenticated workspace
|
|
261
|
+
integration. Shared Runtime support remains C-only.
|
|
262
|
+
|
|
263
|
+
PYC4698 reports internal validation failures without publishing new C. PYC4699
|
|
264
|
+
continues to explain Runtime's contract: structural/provenance checks do not
|
|
265
|
+
prove semantic equivalence or replace external compilation and testing. The
|
|
266
|
+
Typed C-IR proof pipeline and Runtime arena lifetime remain unchanged.
|
|
267
|
+
|
|
268
|
+
The requested scan/diagnostics audit found and fixed quick diagnostic navigation
|
|
269
|
+
for untouched CRLF/CR files. Real edits, including edit followed by undo, still
|
|
270
|
+
retire old diagnostic and scan locations. No replacement controls or new
|
|
271
|
+
save workflow; the existing theme and components are retained.
|
|
272
|
+
|
|
273
|
+
HTML Help adds Runtime validation and ForgeLens, with a verified example and
|
|
274
|
+
updated contract/inspection guidance. README remains byte-for-byte unchanged.
|
|
275
|
+
|
|
276
|
+
Next conversion work: value reclamation for long-running contexts, separate
|
|
277
|
+
C-module exports, expanded file profiles, and Typed record boundaries.
|
|
278
|
+
See specifications/runtime_validation_1_3_29.md and the verification report.
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
# PyCForge 1.3.28 — Runtime exception recovery
|
|
283
|
+
|
|
284
|
+
Runtime conversion now supports selected `try`/`except`/`else`/`finally`
|
|
285
|
+
control flow and builtin raises with optional literal messages. Matching
|
|
286
|
+
handlers recover from ordinary runtime errors across calls and supplied
|
|
287
|
+
modules. Cleanup preserves nested return, break, continue, and error order;
|
|
288
|
+
file contexts close before control reaches an enclosing handler.
|
|
289
|
+
|
|
290
|
+
Exception names are a closed documented set. Exception objects, `as` bindings,
|
|
291
|
+
bare re-raise, chaining, exception groups, and custom exception classes remain
|
|
292
|
+
unsupported with PYC4630 diagnostics. Allocation and execution-resource
|
|
293
|
+
failures stay terminal: Python cleanup bodies are skipped after exhaustion,
|
|
294
|
+
while automatic file cleanup still runs. Runtime context lifetime and the
|
|
295
|
+
remaining ForgeLens/C-IR limitations are unchanged.
|
|
296
|
+
|
|
297
|
+
HTML Help adds Exceptions and cleanup with executable examples, searchable
|
|
298
|
+
reference entries, supported boundaries, and file/error guidance. README is
|
|
299
|
+
byte-for-byte unchanged from 1.3.27. No dependency or save-control changes.
|
|
300
|
+
|
|
301
|
+
This is the first stage of the accepted conversion upgrade program. Runtime
|
|
302
|
+
validation/mappings, value reclamation, separate C-module exports, expanded
|
|
303
|
+
file profiles, and Typed record boundaries remain subsequent work.
|
|
304
|
+
See specifications/runtime_exceptions_1_3_28.md and the release verification
|
|
305
|
+
report for scope and measured evidence.
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
# PyCForge 1.3.27 — Immediate stale Python scan results
|
|
310
|
+
|
|
311
|
+
- Scanned-source edits immediately disable retained findings in both the full Python check dialog and recent-scan dropdown.
|
|
312
|
+
- Stale panels are visibly muted and label their locations as scanned lines. Clean results also stop presenting themselves as current after an edit.
|
|
313
|
+
- Invalidation persists through undo, hidden dialogs, renames and closed tabs until a new scan completes for unchanged source.
|
|
314
|
+
- Changes to included companion modules invalidate the same scan; unscanned modules and tab switching alone do not.
|
|
315
|
+
- Scan results completed after an intervening edit remain stale.
|
|
316
|
+
- Navigation rejects old finding objects and queued callbacks from earlier scans, with a final freshness check before highlighting.
|
|
317
|
+
- Preserves Windows newline normalization, existing scan analysis and conversion diagnostics behavior.
|
|
318
|
+
|
|
319
|
+
# PyCForge 1.3.26 — Conversion diagnostics quick view
|
|
320
|
+
|
|
321
|
+
- Added a separate amber warning-triangle button beside Tools.
|
|
322
|
+
- Enabled only for current rejected/failed conversions that have Diagnostics records.
|
|
323
|
+
- Opens a compact native dropdown with the same severity, code, module/line and message as the Diagnostics tab.
|
|
324
|
+
- Clicking a located item selects its source module and highlights the reported range.
|
|
325
|
+
- Source edits immediately close the list and disable access, including edits before delayed synchronization and edits in the split view.
|
|
326
|
+
- Undo does not revive an invalidated result. Convert again to obtain fresh diagnostics.
|
|
327
|
+
- Renaming/closing source, changing the source bundle, or starting another conversion disables old navigation.
|
|
328
|
+
- Tab changes alone preserve valid results. Diagnostics without source locations remain readable but cannot navigate.
|
|
329
|
+
- Long rows are elided with full tooltips; long lists scroll within the screen.
|
|
330
|
+
- The Diagnostics tab, Python scan and conversion engine behavior are unchanged.
|
|
331
|
+
|
|
332
|
+
# PyCForge 1.3.25 — Split Tools control and recent scan results
|
|
333
|
+
|
|
334
|
+
- The wrench opens the regular Tools menu; the adjacent arrow opens recent Python scan results.
|
|
335
|
+
- The divider has a clear gap before the two-part button.
|
|
336
|
+
- The compact, scrollable dropdown reuses the scan dialog's findings, source navigation and dismissal state.
|
|
337
|
+
- Distinct feedback covers no scan, an active scan, no errors/issues, removed findings and stale source.
|
|
338
|
+
- Open full scan returns to the existing dialog; opening the dropdown never starts a scan.
|
|
339
|
+
- Popup closure resets pressed and hover styling, including repeated menu action use.
|
|
340
|
+
- Retains the v1.3.24 removal of the expandable scan scope row.
|
|
341
|
+
|
|
342
|
+
# PyCForge 1.3.24 — Python check dialog cleanup
|
|
343
|
+
|
|
344
|
+
- Removed the expandable Scan scope and limits row and its module/function count.
|
|
345
|
+
- The results panels now have more vertical room.
|
|
346
|
+
- Analysis notes remain available in the existing scan-status tooltip.
|
|
347
|
+
- Scan logic and clickable issue-panel behavior are unchanged.
|
|
348
|
+
|
|
349
|
+
# PyCForge 1.3.23 — Deeper Python code checks
|
|
350
|
+
|
|
351
|
+
Check Python Code now follows supported top-level statements as well as functions.
|
|
352
|
+
Explicit return, raise, break and continue paths survive loop and finally analysis.
|
|
353
|
+
The checker models try/except/else/finally and conservative context-manager
|
|
354
|
+
suppression, and tracks exception-target deletion. Findings explain the relevant
|
|
355
|
+
assignment path or helper location.
|
|
356
|
+
|
|
357
|
+
Bounded argument-sensitive helper analysis follows arguments, aliases, defaults and
|
|
358
|
+
return values. Optional “Use open modules to trace imports” supplies unsaved companion
|
|
359
|
+
source without importing or executing it. Findings remain on the selected tab;
|
|
360
|
+
edits, renames or closure of any supplied tab make the retained scan stale.
|
|
361
|
+
The scope/limits text is expandable so longer explanations do not crowd the panels.
|
|
362
|
+
|
|
363
|
+
The four existing compiled Ting decision packs remain unchanged; the upgrade improves
|
|
364
|
+
the evidence and paths they evaluate. Rule tests are retained, with new paired bug/clean
|
|
365
|
+
regressions and authored runtime witnesses. Dynamic/unsupported analysis is explained.
|
|
366
|
+
This checker addresses Python correctness only and adds no conversion-compatibility
|
|
367
|
+
checks. Conversion support remains documented in the existing HTML reference.
|
|
368
|
+
|
|
369
|
+
Limits: 16 modules, 1 MiB per module / 2 MiB total, 50,000 AST nodes per module,
|
|
370
|
+
256 functions, 512 call contexts, 10 call levels, 100,000 flow operations,
|
|
371
|
+
2,000 candidate facts, 200 displayed findings and 60 seconds.
|
|
372
|
+
No dependencies are added; packaging remains one wheel. Native Windows interaction
|
|
373
|
+
is to be verified with the supplied checklist.
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
|
|
377
|
+
# PyCForge 1.3.22 — Python code checker
|
|
378
|
+
|
|
379
|
+
The Tools menu is now a wrench dropdown after the text menus and separator.
|
|
380
|
+
Check Python Code appears above Run Python; F5 still opens Run Python.
|
|
381
|
+
|
|
382
|
+
The modeless checker scans the selected tab’s current unsaved text in a cancellable
|
|
383
|
+
worker. It combines Python syntax checks with four dedicated compiled Ting packs
|
|
384
|
+
for assignment/reachability, supported None-value uses, local-call arguments and
|
|
385
|
+
mutable defaults. Local function-return summaries support deeper findings without
|
|
386
|
+
running or importing the program. Confirmed, conditional and review findings are
|
|
387
|
+
kept distinct; unsupported analysis is reported in the dialog.
|
|
388
|
+
|
|
389
|
+
A stage label, percentage bar and elapsed time accompany the scan. Results appear
|
|
390
|
+
as stacked clickable cards: choosing one returns to the original tab and highlights
|
|
391
|
+
its source. Cards and scroll position survive reopening. Right-click Remove dismisses
|
|
392
|
+
a card; Re-scan replaces the results. Source changes mark retained results stale and
|
|
393
|
+
block outdated navigation. Cancel or closing an active scan clears all panels and
|
|
394
|
+
shows “Scan was halted.” There is no HTML export or automatic source editing.
|
|
395
|
+
|
|
396
|
+
Limits: one tab, 1 MiB, 50,000 syntax nodes, 256 functions, 2,000 candidate facts,
|
|
397
|
+
200 displayed findings and 60 seconds. Flow analysis covers supported function bodies;
|
|
398
|
+
external imports, runtime-dependent behavior and complex control flow remain outside
|
|
399
|
+
this first rule set. A clean scan is not a correctness guarantee.
|
|
400
|
+
|
|
401
|
+
README and offline Help receive concise usage additions. Existing conversion behavior,
|
|
402
|
+
the conversion bug tracker, dependency list and one-wheel packaging are retained.
|
|
403
|
+
Native Windows/macOS interaction remains a separate platform verification step.
|
|
404
|
+
|
|
405
|
+
---
|
|
406
|
+
|
|
407
|
+
# PyCForge 1.3.21 — Internal audit corrections
|
|
408
|
+
|
|
409
|
+
- F01: Track every active container during Runtime representation; preserve tuples inside sets/frozen sets and real list/dictionary cycles.
|
|
410
|
+
- F02: Preserve negative zero when compensated summation has a zero correction, including the fallback materialization path.
|
|
411
|
+
- F03: Reject Windows COM/LPT superscript-digit device aliases in every project path component.
|
|
412
|
+
- F04: Permit project-checkpoint wording while retaining checks for obsolete converter-status labels.
|
|
413
|
+
- F05: Maintain the current multiple-inheritance corpus expectation across release increments; keep historical overrides.
|
|
414
|
+
- F06: Remove unread Typed locals only when all assignments are side-effect-free string literals and annotations agree; retain calls and potentially failing expressions.
|
|
415
|
+
- F07: Use the current module-identity widget's public text API in the retained acceptance test.
|
|
416
|
+
- R01: Project the latest snapshot before Python-open completion callbacks; wait for projected UI readiness in the split-view lifecycle regression.
|
|
417
|
+
|
|
418
|
+
The README adds a dedicated conversion bug tracker immediately before contact information. HTML Help content and installation dependencies are unchanged. Native Windows and macOS verification remains a separate platform check.
|
|
419
|
+
|
|
420
|
+
---
|
|
421
|
+
|
|
422
|
+
# PyCForge 1.3.19 — Project bundles and filesystem reliability
|
|
423
|
+
|
|
424
|
+
File → Project saves and opens portable .pcfproj bundles with a module preview,
|
|
425
|
+
loading cover, named checkpoints, comparisons, and guarded restoration. Project
|
|
426
|
+
saves preserve editor text independently of the linked Python files. Opening a
|
|
427
|
+
bundle uses a new working folder; startup reconnects history without extracting
|
|
428
|
+
older source over disk files.
|
|
429
|
+
|
|
430
|
+
The filesystem audit adds protection against Save As aliases of another open
|
|
431
|
+
module, clears old failed session paths after explicit project replacement,
|
|
432
|
+
preserves existing bundle permission modes, and bounds startup history reads.
|
|
433
|
+
Missing, damaged, slow, or invalid history locations appear in the Startup report
|
|
434
|
+
without preventing use of the workspace. Save and restore failure paths retain
|
|
435
|
+
the previous bundle and unsaved editor state.
|
|
436
|
+
|
|
437
|
+
The searchable HTML Help includes a dedicated Projects and checkpoints page.
|
|
438
|
+
The README retains its existing structure with a concise project-bundle section.
|
|
439
|
+
The package version is 1.3.19. Existing historical files remain in the source
|
|
440
|
+
archive; no conversion dependency or conversion behavior is changed.
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
# PyCForge 1.3.14 — Save All Python and shutdown verification
|
|
445
|
+
|
|
446
|
+
File → Save All Python saves new and modified modules in order, asks for
|
|
447
|
+
locations only when needed, and keeps the selected tab unchanged. The command
|
|
448
|
+
is also available in the command palette. Save Python still applies to the
|
|
449
|
+
selected tab; Save Python As remains available when no Python save is active.
|
|
450
|
+
|
|
451
|
+
Save All and exit now share sequential asynchronous saves, avoiding overflow
|
|
452
|
+
of the bounded file queue. Save commands cannot overlap. Cancellation and write
|
|
453
|
+
failure release the busy state and leave unsaved modules open. Edits made while
|
|
454
|
+
saving remain unsaved and prevent automatic closure. Exit also includes
|
|
455
|
+
never-saved modules and waits for any individual save already in progress.
|
|
456
|
+
|
|
457
|
+
Shutdown detaches both source views before their shared text buffers are
|
|
458
|
+
released, preventing repaint against a deleted Qt document. Startup settings,
|
|
459
|
+
conversion behavior, the external Python launcher, README, dependencies and
|
|
460
|
+
version metadata are unchanged. Help explains saving and the distinction
|
|
461
|
+
between the script console and the original Windows console.
|
|
462
|
+
|
|
463
|
+
The final Linux/offscreen Qt suite passed 298 tests and 773 subtests, with no
|
|
464
|
+
skips. Coverage includes 64-module saves and exit, immediate edits in both
|
|
465
|
+
views, retries after failure/cancellation, repeated Save/Close, deferred buffer
|
|
466
|
+
cleanup, fresh startup, session restoration and corrupt-settings recovery.
|
|
467
|
+
Windows/macOS console construction is mocked; native desktop testing remains
|
|
468
|
+
required. See PyCForge-1.3.14-Save-All.txt for installation and laptop checks.
|
|
469
|
+
|
|
470
|
+
---
|
|
471
|
+
|
|
472
|
+
# PyCForge 1.3.14 — Run Python and per-tab save state
|
|
473
|
+
|
|
474
|
+
Tools → Run Python… (F5) opens a modeless, themed command dialog for the
|
|
475
|
+
selected Python tab. Saved modules supply their absolute path and working
|
|
476
|
+
folder automatically. Unsaved or modified modules show “Run Python — Module
|
|
477
|
+
not saved” in the custom titlebar and disable the command box and Run button.
|
|
478
|
+
The dialog follows saves and tab switches; it never saves or executes source
|
|
479
|
+
merely because it was opened.
|
|
480
|
+
|
|
481
|
+
The editable default uses the Python environment running PyCForge. Windows
|
|
482
|
+
opens cmd.exe /k with console Python; Linux uses an installed terminal and
|
|
483
|
+
retains the exit status/output; macOS opens Terminal. Run Python is separate
|
|
484
|
+
from conversion and C compilation. Save Python now reflects the active tab's
|
|
485
|
+
unsaved state in both the toolbar and File menu. Save Python As stays available.
|
|
486
|
+
|
|
487
|
+
The application and distribution retain version 1.3.14. The converter, C build
|
|
488
|
+
service, Ting runtime, README and Python dependencies are unchanged. Offline
|
|
489
|
+
Help documents the commands. The focused/adjacent suite passed 226 tests and
|
|
490
|
+
769 subtests on Linux with offscreen Qt. Real POSIX execution checks include
|
|
491
|
+
relative file access, sibling imports, interactive input, arguments, unusual
|
|
492
|
+
path characters and Python errors. Windows/macOS launch construction is
|
|
493
|
+
covered through mocks; native desktop terminal checks remain for those hosts.
|
|
494
|
+
See PyCForge-1.3.14-Run-Python.txt for installation and laptop checks.
|
|
495
|
+
|
|
496
|
+
---
|
|
497
|
+
|
|
498
|
+
# PyCForge 1.3.14 — UI review follow-up
|
|
499
|
+
|
|
500
|
+
Keep the application and distribution version at 1.3.14 as requested.
|
|
501
|
+
Completion suggestions now reject native window activation during mouse clicks,
|
|
502
|
+
so scrollbar interaction retains editor focus. PgUp and PgDn navigate suggestions
|
|
503
|
+
without moving the source caret. The compiler dialog uses an inset dropdown
|
|
504
|
+
button and the existing down-chevron asset to preserve each field's outline.
|
|
505
|
+
|
|
506
|
+
All 118 focused and adjacent regression tests and 652 subtests pass. The 24 UI
|
|
507
|
+
cases also pass at 125% and 150% display scaling. A GCC build through the dialog
|
|
508
|
+
succeeds and the executable returns the expected result. Validation uses Linux
|
|
509
|
+
with Qt's offscreen backend; the Windows laptop interaction needs confirmation.
|
|
510
|
+
|
|
511
|
+
Only two application source files change. README, screenshots, contact details,
|
|
512
|
+
Help, conversion/build services, dependencies, and version metadata are retained.
|
|
513
|
+
See PyCForge-1.3.14-UI-Review.txt for evidence and laptop checks. To replace an
|
|
514
|
+
already-installed 1.3.14 from the updated local wheel, use --force-reinstall.
|
|
515
|
+
|
|
516
|
+
---
|
|
517
|
+
|
|
518
|
+
# PyCForge 1.3.14 — Help and README refresh
|
|
519
|
+
|
|
520
|
+
Review and refine all 21 offline Help pages without changing conversion behavior.
|
|
521
|
+
Seven restrained PyCForge caveats boxes explain integer bounds, context ownership,
|
|
522
|
+
string construction, set ordering, annotation checks, cooperative inheritance,
|
|
523
|
+
and file-write cleanup beside the relevant examples. A complete cooperative
|
|
524
|
+
constructor diamond adds one runnable example; the existing examples are retained.
|
|
525
|
+
|
|
526
|
+
Correct stale class limits, mode-specific module guidance, dependency wording,
|
|
527
|
+
page links, and API-page navigation. Refresh the README's conversion and compiler
|
|
528
|
+
coverage while retaining its introductory organization, starter examples, and
|
|
529
|
+
exactly its two original screenshot links and image assets.
|
|
530
|
+
|
|
531
|
+
The application version is 1.3.14. Converter contracts remain at their existing
|
|
532
|
+
versions, including Runtime 1.3.13; converter/build sources and dependencies are
|
|
533
|
+
unchanged. See PyCForge-1.3.14-Documentation-Review.txt for the page-by-page review
|
|
534
|
+
and the executed documentation checks.
|
|
535
|
+
|
|
536
|
+
---
|
|
537
|
+
|
|
538
|
+
# PyCForge 1.3.13 — multiple inheritance conversion
|
|
539
|
+
|
|
540
|
+
Runtime mode now converts multiple inheritance between declared classes with
|
|
541
|
+
Python C3 method ordering, cooperative super calls, shared diamond fields,
|
|
542
|
+
constructor selection, and subtype recognition through every base. Imported
|
|
543
|
+
and re-exported bases retain their identity. Duplicate bases, inconsistent
|
|
544
|
+
orders and field/method collisions reject conversion with source diagnostics.
|
|
545
|
+
The complete ancestor closure remains bounded to 64 user classes plus object.
|
|
546
|
+
|
|
547
|
+
Existing single inheritance and flat ordinary method dispatch are retained.
|
|
548
|
+
No package dependency was added. Properties, static/class methods, dynamic
|
|
549
|
+
bases and custom descriptors remain outside the documented class profile.
|
|
550
|
+
See specifications/multiple_inheritance_1_3_13.md and the release verification
|
|
551
|
+
report for the contract and measured checks.
|
|
552
|
+
|
|
553
|
+
---
|
|
554
|
+
|
|
555
|
+
# PyCForge 1.3.12 — conversion quality corrections
|
|
556
|
+
|
|
557
|
+
- Preserve set iterator consumption, incremental difference updates, and numeric values selected by intersections.
|
|
558
|
+
- Apply Typed scalar handling consistently in keyword arguments, comparison chains, fixed containers, branch-defined strings, and file operations.
|
|
559
|
+
- Publish scalar scope facts in deterministic binding order across multiple functions.
|
|
560
|
+
- Retain single inheritance, compiler profiles, completion improvements, and startup recovery from the preceding releases.
|
|
561
|
+
|
|
562
|
+
See PyCForge-1.3.12-Conversion-Audit.txt for reproduced defects, verification evidence, and platform limits.
|
|
563
|
+
|
|
564
|
+
# PyCForge 1.3.4 — Classes & Functions loading panel
|
|
565
|
+
|
|
566
|
+
- Cover the complete tree area, including its header, with a themed panel while definitions are parsed and tree rows are populated.
|
|
567
|
+
- Center a short 88 × 8 progress bar on the panel, with no visible loading text.
|
|
568
|
+
- Reveal the tree and restore keyboard focus when loading finishes; stop the indicator on errors, source changes, or dismissal.
|
|
569
|
+
- Preserve double-click and Enter navigation and the title-bar Copy action.
|
|
570
|
+
- No new application dependencies or conversion changes.
|
|
571
|
+
|
|
572
|
+
Validation: 37 focused tests and 50 subtests passed on Linux with offscreen Qt. Themed loading and loaded states were visually checked. Native Windows verification and a full-suite rerun were not performed for this patch.
|
|
573
|
+
|
|
574
|
+
See PyCForge-1.3.4-Loading-Panel.txt for the exact scope and evidence.
|
|
575
|
+
|
|
576
|
+
# PyCForge 1.3.3 — editor integration corrections
|
|
577
|
+
|
|
578
|
+
- Completion preserves selected prefixes and rejects results after Escape, selection changes, or leaving the editor.
|
|
579
|
+
- Delayed Go to Definition results retire when the caret, focus, or user intent changes.
|
|
580
|
+
- Lambda parameter rename retains unrelated bindings and explicit keyword callers.
|
|
581
|
+
- Document formatting accepts line movement around type-ignore directives while checking that each directive still covers the same statements.
|
|
582
|
+
- Selection formatting handles repetitive source without false boundary errors and preserves unselected text.
|
|
583
|
+
- Includes the split-view close, Find toggle, window-control hover, Generated C hover, and steady fold-arrow corrections.
|
|
584
|
+
- Keeps all existing conversion coverage and unpinned application dependencies.
|
|
585
|
+
|
|
586
|
+
# PyCForge 1.3.1 — reliability update
|
|
587
|
+
|
|
588
|
+
This is one cumulative update to the complete PyCForge application.
|
|
589
|
+
|
|
590
|
+
- Bind deferred Qt callbacks to their owner and release pending generated-C projection on shutdown.
|
|
591
|
+
- Reject non-regular preview inputs without blocking on POSIX named pipes; retain UTF-8 and size checks.
|
|
592
|
+
- Reap an outline child and close its handles if process startup raises after creating it.
|
|
593
|
+
- Publish immutable source-token records incrementally to avoid holding two complete dictionary trees.
|
|
594
|
+
- Enforce Typed token budgets during tokenization, preserving supported conversion output and diagnostic codes.
|
|
595
|
+
- Preserve all Typed/Runtime, module/file, editor, Jedi/autopep8, tooltip, gutter and PCFC11 features.
|
|
596
|
+
|
|
597
|
+
See PyCForge-1.3.1-Reliability-Audit.txt for exact findings, measurements, validation and remaining native-platform checks.
|
|
598
|
+
|
|
599
|
+
# PyCForge 1.3.0 — complete consolidated release
|
|
600
|
+
|
|
601
|
+
One installation now contains the complete 1.1.12 advanced conversion/editor
|
|
602
|
+
line plus the 1.2.2 PCFC11 integration and additional resource-lifecycle fixes.
|
|
603
|
+
There is no choice between conversion coverage and compilation support.
|
|
604
|
+
|
|
605
|
+
- Both Typed and Runtime modes; runtime strings, lists, dictionaries, classes,
|
|
606
|
+
closures, comprehensions, everyday builtins/formatting, supplied modules and
|
|
607
|
+
connected UTF-8 file workflows are retained.
|
|
608
|
+
- Current editor tools, shared work admission, bounded caches, Open/New Module
|
|
609
|
+
recovery and fold-marker fixes are retained.
|
|
610
|
+
- PCFC11 dialog focus and custom compiler/output chooser fixes are included.
|
|
611
|
+
Object and executable builds accept both conversion ABIs. Runtime executable
|
|
612
|
+
adapters handle errors and destroy their value context before returning.
|
|
613
|
+
Windows UCRT compatibility headers supply runtime declarations missing
|
|
614
|
+
from PCFC11 0.1.1; Windows assembly generation is checked at O0 and O1.
|
|
615
|
+
- Cancelled application startup now finishes and releases its modal dialog,
|
|
616
|
+
preventing it from blocking subsequent windows and keyboard shortcuts.
|
|
617
|
+
- Conversion cancellation is retained throughout request encoding/spawning; idle
|
|
618
|
+
service frames release payloads. Modal children are destroyed; hidden timers
|
|
619
|
+
stop. Slow file previews cannot keep the interpreter alive through Qt's pool.
|
|
620
|
+
Regular workspace file reads are bounded to 16 MiB and reject special files.
|
|
621
|
+
- The README and 21 offline Help pages describe the combined application.
|
|
622
|
+
Existing screenshot links and advanced runtime implementation are preserved.
|
|
623
|
+
|
|
624
|
+
PCFC11 remains a separately installed compiler with a system assembler/linker.
|
|
625
|
+
The package adds no dependency beyond those already required by 1.1.12.
|
|
626
|
+
Native Linux validation is recorded in evidence/consolidation. Native Windows
|
|
627
|
+
acceptance and actual laptop energy measurements remain outstanding. Runtime
|
|
628
|
+
values retain their documented arena lifetime; whole-process memory is not
|
|
629
|
+
bounded by the arena budget. No PyPI publication was performed.
|
|
630
|
+
|
|
631
|
+
The evidence/consolidation directory records this release's checks. Historical
|
|
632
|
+
release notes and evidence below describe their original versions only.
|
|
633
|
+
|
|
634
|
+
---
|
|
635
|
+
|
|
636
|
+
# PyCForge 1.1.12 — resource ownership and process reliability
|
|
637
|
+
|
|
638
|
+
This patch updates 1.1.11. Closed temporary dialogs and their filesystem models
|
|
639
|
+
are destroyed after use; About clocks run only while visible. Idle conversion
|
|
640
|
+
supervisors wait for work, and idle service threads release completed payloads.
|
|
641
|
+
Conversion pipe transfers cannot block cancellation or shutdown. Malformed
|
|
642
|
+
worker envelopes trigger process reclamation, and reaped process handles close.
|
|
643
|
+
|
|
644
|
+
The app, package metadata, About, startup, Help and reports use the same product
|
|
645
|
+
version. Converter source, semantic contracts, dependencies, and HTML Help
|
|
646
|
+
content are unchanged. Earlier editor lifecycle and About improvements remain.
|
|
647
|
+
|
|
648
|
+
Measured evidence, reproduced baseline failures, scope and native Windows
|
|
649
|
+
acceptance steps are in evidence/resource_audit. These checks do not certify
|
|
650
|
+
battery life or the absence of every possible resource leak.
|
|
651
|
+
|
|
652
|
+
# PyCForge 1.1.11 — module closing and function folding
|
|
653
|
+
|
|
654
|
+
The About dialog omits the Ting Shadow / Advisory badge. Application version
|
|
655
|
+
metadata, window titles, startup, About, Help and package metadata use 1.1.11.
|
|
656
|
+
|
|
657
|
+
Closing the final module with Generated C visible now clears the editor,
|
|
658
|
+
Source Bundle, and actions without an active-document lookup. Open and New
|
|
659
|
+
recover an obsolete navigator selection. Function fold markers are restored
|
|
660
|
+
from current background structure after switching tabs or rehighlighting.
|
|
661
|
+
Pending edits and obsolete structure results cannot restore old fold ranges.
|
|
662
|
+
Converter behavior, conversion identifiers, and dependencies are unchanged.
|
|
663
|
+
|
|
664
|
+
# PyCForge 1.1.10 — connected UTF-8 file workflows
|
|
665
|
+
|
|
666
|
+
Runtime functions can now read text, process it through local or imported
|
|
667
|
+
helpers, and write or append results. Scoped open calls support character-sized
|
|
668
|
+
reads, line iteration/readlines, write/writelines, flush, and early close.
|
|
669
|
+
UTF-8 contents support embedded NUL; paths support Unicode and reject NUL.
|
|
670
|
+
Newline=None and newline="" have distinct documented translation behavior.
|
|
671
|
+
|
|
672
|
+
Cleanup covers normal exits, return, break, continue, failed later opens, and
|
|
673
|
+
runtime errors. Handles passed to helpers share their cursor; returned text
|
|
674
|
+
outlives its handle. Per-context limits bound open handles, operations, retained
|
|
675
|
+
read buffers, and per-handle input consumption. Obsolete transient read buffers
|
|
676
|
+
are reclaimed while public values retain the established arena lifetime.
|
|
677
|
+
|
|
678
|
+
The 21-page HTML Help is a user manual with no development-cycle status. It
|
|
679
|
+
adds complete read/process/write examples, a three-module report, input and
|
|
680
|
+
expected output files, operation tables, newline rules, and error guidance.
|
|
681
|
+
Stale module-limit and install examples were corrected. README retains its two
|
|
682
|
+
original screenshot links and 200-line limit. Dependencies are unchanged.
|
|
683
|
+
|
|
684
|
+
Typed file functions retain their external status-pointer ABI; connected file
|
|
685
|
+
calls use Runtime mode. Exception recovery, independent runtime C-IR validation,
|
|
686
|
+
and exact runtime ForgeLens mappings remain outside this delivery. PYC4699 is
|
|
687
|
+
retained. Native Windows acceptance is pending; no PyPI publication occurred.
|
|
688
|
+
See specifications/runtime_files_1_1_10.md, fixtures/runtime_files_1_1_10, and
|
|
689
|
+
evidence/files_1_1_10 for the contract, runnable report, and validation evidence.
|
|
690
|
+
|
|
691
|
+
---
|
|
692
|
+
|
|
693
|
+
# PyCForge 1.1.9 — runtime programs across supplied files
|
|
694
|
+
|
|
695
|
+
Runtime conversion now accepts explicit source bundles. Named imports, module
|
|
696
|
+
aliases, re-exports, imported classes/functions/constants, and immutable
|
|
697
|
+
scalar/tuple module constants work with the existing runtime operations.
|
|
698
|
+
Namespaces remain separate. Imports and defaults initialize in source order,
|
|
699
|
+
once per C context; remaining supplied files initialize as explicit roots.
|
|
700
|
+
|
|
701
|
+
The workspace converts all open documents. CLI conversion/validation accepts
|
|
702
|
+
repeated `--module ID=PATH` and `--module-id ID`. C runtime failures now preserve
|
|
703
|
+
the logical source file and line. Runtime artifacts can be inspected with the
|
|
704
|
+
CLI. No installation dependency changed.
|
|
705
|
+
|
|
706
|
+
Relative/star/local/conditional/cyclic imports, implicit packages, file discovery,
|
|
707
|
+
writable globals, and general module execution remain excluded. Runtime file
|
|
708
|
+
I/O and exception recovery remain the next coverage work. Runtime C-IR proof
|
|
709
|
+
validation, exact ForgeLens mappings, and reclamation during a context lifetime
|
|
710
|
+
remain unfinished. The development warning is retained. Windows acceptance is
|
|
711
|
+
pending; no PyPI publication is part of this release.
|
|
712
|
+
|
|
713
|
+
See `specifications/runtime_modules_1_1_9.md`, the four-file invoice fixture,
|
|
714
|
+
and `evidence/modules_1_1_9/` for contracts, examples, and recorded verification.
|
|
715
|
+
|
|
716
|
+
---
|
|
717
|
+
|
|
718
|
+
# PyCForge 1.1.8 — everyday runtime conversions
|
|
719
|
+
|
|
720
|
+
Runtime conversion now implements sum, min/max (key/default), abs, round,
|
|
721
|
+
any/all, stable sorted and list.sort (key/reverse), lazy enumerate and zip
|
|
722
|
+
(including strict), iter/next, and builtin function values such as key=abs.
|
|
723
|
+
Lists add extend, pop, insert, remove, reverse, clear, copy, and index; tuples
|
|
724
|
+
also add index. Shared list identity is preserved through mutations.
|
|
725
|
+
|
|
726
|
+
F-strings, format(), and str.format() share bounded precision, width,
|
|
727
|
+
alignment, sign, grouping, decimal/base and floating presentation. !s/!r/!a,
|
|
728
|
+
named/numbered fields, field access, and nested width/precision are supported.
|
|
729
|
+
Print/str/repr/ascii now render nested lists, tuples, dictionaries and views,
|
|
730
|
+
including cycle markers. Numeric rounding uses exact binary64 decimal digits.
|
|
731
|
+
|
|
732
|
+
Select Transpile → Runtime; the CLI uses --runtime-values. No installation
|
|
733
|
+
dependencies changed. The README retains exactly its two screenshot links.
|
|
734
|
+
The existing 20-page HTML Help now documents these operations and examples.
|
|
735
|
+
|
|
736
|
+
Runtime remains a bounded development backend: one source document, no imports,
|
|
737
|
+
module assignments, file I/O, exception recovery, generators or runtime sets.
|
|
738
|
+
Integers are checked int64; floating sums follow Python 3.12 compensated summation.
|
|
739
|
+
Formatting excludes locale-sensitive n, character c, z and custom protocols;
|
|
740
|
+
width is at most 1,000,000 and precision at most 1,000. Numeric formatting needs
|
|
741
|
+
C numeric locale and round-to-nearest. Values remain owned until pv_destroy().
|
|
742
|
+
Exact ForgeLens mappings and the typed C-IR validation path are still absent.
|
|
743
|
+
Native Windows acceptance and PyPI publication have not been performed.
|
|
744
|
+
|
|
745
|
+
See specifications/runtime_values_1_1_8.md for the conversion contract and
|
|
746
|
+
tests/test_everyday_runtime_1_1_8.py for native comparisons against Python.
|
|
747
|
+
|
|
748
|
+
---
|
|
749
|
+
|
|
750
|
+
# PyCForge 1.1.7 — editor responsiveness and correctness
|
|
751
|
+
|
|
752
|
+
This release batches occurrence selection and caret merging, removes fold parsing
|
|
753
|
+
from gutter painting, and fixes the large-document replacement transition.
|
|
754
|
+
Unchanged documents reuse byte-bounded position and outline caches. Outline
|
|
755
|
+
parsing runs in a persistent, cancellable process and extracts symbols without
|
|
756
|
+
building conversion IR. A shared work budget prioritizes explicit operations,
|
|
757
|
+
limits admitted CPU work to one or two jobs, and defers passive observers while
|
|
758
|
+
typing. Current immutable source snapshots are shared between editor consumers.
|
|
759
|
+
|
|
760
|
+
Editor workers retain bounded exact-request replies; formatting diffs are built
|
|
761
|
+
in the worker. New edits still invalidate publication and preview authority.
|
|
762
|
+
Cancellation stops active outline parsing, and obsolete revision indexes check
|
|
763
|
+
for cancellation during scanning. Closed documents leave the document caches.
|
|
764
|
+
|
|
765
|
+
Correctness fixes preserve multiple carets across physical modifier presses,
|
|
766
|
+
prevent extra quote insertion inside comments/strings, replace the existing
|
|
767
|
+
identifier tail when accepting completion, keep selection formatting inside its
|
|
768
|
+
original lines, and correct form-feed navigation offsets. Unsafe inheritance,
|
|
769
|
+
class-private, Unicode-alias, and decorated-parameter renames are refused with an
|
|
770
|
+
explanation. Atomic saves retain existing permission modes and follow symlink
|
|
771
|
+
targets rather than replacing the link.
|
|
772
|
+
|
|
773
|
+
The typed/runtime converter implementations and dependency requirements are
|
|
774
|
+
unchanged. Both README screenshot URLs are preserved. Local Qt measurements,
|
|
775
|
+
regression results, and a focused Windows acceptance checklist accompany this
|
|
776
|
+
candidate. Native Windows acceptance is pending; local timings are not a
|
|
777
|
+
cross-platform input-to-display guarantee. No PyPI publication was performed.
|
|
778
|
+
|
|
779
|
+
---
|
|
780
|
+
|
|
781
|
+
# PyCForge 1.1.6 — professional Python editing
|
|
782
|
+
|
|
783
|
+
This release adds smart pairs and selection wrapping, up to 256 simultaneous
|
|
784
|
+
cursors, regex and selection-scoped search, previewed replacement across open
|
|
785
|
+
source documents, offline completion and parameter hints, definition navigation
|
|
786
|
+
with return, current-document scope-aware rename with preview, and explicit
|
|
787
|
+
undoable formatting of a document or selected lines.
|
|
788
|
+
|
|
789
|
+
Edit now has compact Selection, Lines, Find and Replace, Code, and Folding
|
|
790
|
+
Functions submenus. All native menu surfaces are bounded to the current monitor
|
|
791
|
+
work area, using More Commands submenus for overflow. The existing toolbar is unchanged.
|
|
792
|
+
|
|
793
|
+
Jedi 0.19.x and autopep8 2.3.x are new installation dependencies; parso and
|
|
794
|
+
pycodestyle are installed with them. Editing runs offline. Source analysis and
|
|
795
|
+
regex searches run in deadline-bound processes, use source as data, and reject
|
|
796
|
+
stale results. No backups, autosave, recovery snapshots, or source execution were
|
|
797
|
+
added. The Python-to-C converter implementations are unchanged from 1.1.5.
|
|
798
|
+
|
|
799
|
+
Rename is limited to statically resolved references in the current document,
|
|
800
|
+
refuses name collisions, and preserves imported exports with explicit aliases.
|
|
801
|
+
Dynamic string lookups and references in other documents require manual review.
|
|
802
|
+
Formatting checks syntax-tree equivalence before applying. Analysis accepts
|
|
803
|
+
500,000 characters per document; search previews accept up to 64 open documents,
|
|
804
|
+
4 million characters total, and 2,000 matches. Oversized results are not applied.
|
|
805
|
+
|
|
806
|
+
Automated validation and native Windows acceptance status are recorded in the
|
|
807
|
+
release evidence and Windows checklist included with the distribution bundle.
|
|
808
|
+
|
|
809
|
+
# PyCForge 1.1.5 — conversion mode selection and C scrollbar
|
|
810
|
+
|
|
811
|
+
The Transpile menu now contains exactly two mutually exclusive checked choices:
|
|
812
|
+
Typed and Runtime. Choosing a mode does not convert. The existing Transpile
|
|
813
|
+
button and Ctrl+Enter execute the selected mode; the choice is remembered
|
|
814
|
+
between launches, initially defaulting to Typed. Mode changes retire the previous
|
|
815
|
+
result so it cannot be saved as current until conversion succeeds again.
|
|
816
|
+
|
|
817
|
+
Generated C now uses its normal scrollbar without the dense mapping overview
|
|
818
|
+
strip. Search, mapping navigation, read-only output, and ForgeLens highlighting
|
|
819
|
+
remain available. The hidden strip performs no marker overview projection.
|
|
820
|
+
|
|
821
|
+
No backup, autosave, recovery, snapshot-history, compiler, or other suggested
|
|
822
|
+
feature is added. The typed and runtime conversion capabilities are unchanged
|
|
823
|
+
from 1.1.4. CLI and Python API mode selection are unchanged. Both README
|
|
824
|
+
screenshot URLs are preserved. Native Windows acceptance remains pending.
|
|
825
|
+
|
|
826
|
+
---
|
|
827
|
+
|
|
828
|
+
# PyCForge 1.1.4 — ordered runtime dictionaries
|
|
829
|
+
|
|
830
|
+
Runtime value conversion now handles ordered mutable dictionaries, dictionary
|
|
831
|
+
comprehensions, dict[K, V] annotations, scalar/immutable-tuple keys, key deletion,
|
|
832
|
+
and get/setdefault/update/copy/clear/pop/popitem. Live keys/values/items views
|
|
833
|
+
support iteration, length, truth, membership, and list/tuple snapshots.
|
|
834
|
+
|
|
835
|
+
Shared references, first-insertion order, equal numeric keys, definition-time
|
|
836
|
+
defaults, and nested mutable values are preserved. A hash index supports ordinary
|
|
837
|
+
lookup workloads. Memory, work, missing-key, key-type, and iterator mutation
|
|
838
|
+
checks use the existing C context. Active dictionary iterators permit value
|
|
839
|
+
replacement and reject structural key changes, including equal-size changes.
|
|
840
|
+
|
|
841
|
+
The existing runtime action, CLI, and API expose these additions. Searchable
|
|
842
|
+
HTML help, the supported-conversions table, README, and examples describe the
|
|
843
|
+
implemented forms and boundaries. Both README screenshots retain their URLs.
|
|
844
|
+
No new dependencies, source execution, embedded C compiler, or PyPI publication
|
|
845
|
+
are introduced. See specifications/runtime_values_1_1_4.md and the new tests.
|
|
846
|
+
|
|
847
|
+
This is a development candidate with a documented Python subset. Native
|
|
848
|
+
Windows acceptance remains outstanding; performance needs workload benchmarks.
|
|
849
|
+
|
|
850
|
+
---
|
|
851
|
+
|
|
852
|
+
# PyCForge 1.1.3 — practical conversion coverage
|
|
853
|
+
|
|
854
|
+
The runtime value converter now implements default arguments, named keyword
|
|
855
|
+
calls, positional-only and keyword-only parameters for functions, methods,
|
|
856
|
+
constructors, and lambdas. Defaults are evaluated at definition time and keep
|
|
857
|
+
shared mutable values; lambda defaults can capture each comprehension value.
|
|
858
|
+
|
|
859
|
+
Unicode lower/upper, strip/lstrip/rstrip, whitespace and explicit-separator split
|
|
860
|
+
with maxsplit, numeric text parsing, optional integer bases, finite float
|
|
861
|
+
formatting, simple f-strings, print sep/end, and empty scalar/container
|
|
862
|
+
constructors are implemented. Unsupported calls on known receiver types have
|
|
863
|
+
source diagnostics. Ryu supplies shortest binary64 decimal formatting under its
|
|
864
|
+
Boost license; Unicode case data is pinned to Unicode 15.0.
|
|
865
|
+
|
|
866
|
+
The README and installed HTML help describe these operations as supported
|
|
867
|
+
features, include runnable examples, and retain the two screenshot-only README
|
|
868
|
+
links. The existing typed converter, PySide6 workspace, Ting runtime, splash,
|
|
869
|
+
and PlutoAI boundary remain in place. No PyPI publication is performed here.
|
|
870
|
+
|
|
871
|
+
Validation is recorded in `evidence/coverage_1_1_3/validation_report.json`.
|
|
872
|
+
The preceding 1.1.2 audit and its evidence are retained below as history.
|
|
873
|
+
|
|
874
|
+
---
|
|
875
|
+
|
|
876
|
+
# PyCForge 1.1.2
|
|
877
|
+
|
|
878
|
+
1.1.2 includes a native correctness audit and eight demonstrated fixes. See `docs/CONVERSION_AUDIT_1_1_2.txt` for reproductions, verified coverage and remaining limits.
|
|
879
|
+
|
|
880
|
+
## 1.1.2 conversion improvements
|
|
881
|
+
|
|
882
|
+
Built on the supplied 1.1.1 source. Choose **Transpile → Transpile Runtime Values (Preview)** for real runtime Unicode strings, shared mutable lists and class instances, mixed lists and tuples, union/container annotations, nested filtered list comprehensions, and lambdas with captured cells. The default typed converter remains available.
|
|
883
|
+
|
|
884
|
+
The preview emits self-contained C11 with an explicit arena and checked runtime operations. It converts one document and always identifies its development status. Exact ForgeLens mappings, the established C-IR proof guarantees, complete Python coverage, and native Windows validation are not yet provided by this new backend. Read [the preview contract](specifications/runtime_values_1_1_2.md) for supported forms, memory ownership, type-check boundaries, and remaining work.
|
|
885
|
+
|
|
886
|
+
The embedded Ting execution runtime is now **0.10.0a21**. PyCForge installs **NumPy 2.3.x and Numba 0.63.x** with PySide6 and supports Python **3.11–3.13**. The existing splash warms real numeric kernels on a background worker while the interface stays responsive.
|
|
887
|
+
|
|
888
|
+
Historical 1.1.2 scope: source conversion only. Superseded by the PCFC11 integration in the consolidated 1.3.0 release above.
|
|
889
|
+
|
|
890
|
+
```bash
|
|
891
|
+
python -m pycforge convert example.py --runtime-values --output generated.c
|
|
892
|
+
```
|
|
893
|
+
|
|
894
|
+
The material below describes the preceding default-profile history unless explicitly updated.
|
|
895
|
+
|
|
896
|
+
---
|
|
897
|
+
|
|
898
|
+
# PyCForge Current Contract Index
|
|
899
|
+
|
|
900
|
+
Current candidate: `1.1.7` / editor responsiveness and correctness
|
|
901
|
+
Release state: development preview; no PyPI upload or promotion authorized
|
|
902
|
+
Current validation: see `evidence/correctness_1_1_2/validation_report.json`.
|
|
903
|
+
Prior default-profile validation: `evidence/scalar_1_1/validation_report.json`.
|
|
904
|
+
The following historical results and profiles remain preserved as predecessor evidence.
|
|
905
|
+
Converter boundary: `scalar-strings-v1.1` / `c-renderer-v1.1`, using base C IR `0.16.0`
|
|
906
|
+
Workspace boundary: `pycforge-workspace/0.8`
|
|
907
|
+
Worker protocol: `pycforge.worker-protocol/0.2`
|
|
908
|
+
Action registry: `pycforge.action-registry/0.6`
|
|
909
|
+
Visual system: `pycforge.visual-system/0.5`
|
|
910
|
+
Presentation settings: schema `3`
|
|
911
|
+
Review predecessor: authenticated historical `0.16.3` source archive
|
|
912
|
+
Roadmap authority: Revision 3.1 plus Revision 3.2 and Revision 3.3 addenda
|
|
913
|
+
|
|
914
|
+
PyCForge is a deterministic Python-to-C source transpiler. Its terminal
|
|
915
|
+
artifact is independently validated C11 source. It never imports or executes
|
|
916
|
+
user Python, never opens a path selected by source Python during conversion,
|
|
917
|
+
and exposes no compiler, assembler, linker, loader, runner, debugger, terminal,
|
|
918
|
+
toolchain, plugin, project explorer, external-command surface, or generated-C
|
|
919
|
+
editor. Generated C remains read-only and explicit-save-only.
|
|
920
|
+
|
|
921
|
+
The 1.0.5 package retains the 1.0.1 fixed function-local numeric and Boolean
|
|
922
|
+
set profile with once-evaluated bounded `in`/`not in` membership. It also adds
|
|
923
|
+
authenticated membership facts and 1.0.1 rules, Python-only function folding,
|
|
924
|
+
custom chrome on every dialog, linked-file session restoration with explicit
|
|
925
|
+
failure reporting, and read-only six-agent Ting feedback with a current-state
|
|
926
|
+
graphical Flow Map. Fourteen classified offline HTML Help pages document the
|
|
927
|
+
complete admitted set profile and each new workspace behavior. Generated C
|
|
928
|
+
remains immutable, and the Ting shadow review cannot alter conversion.
|
|
929
|
+
|
|
930
|
+
The desktop begins with a genuine zero-document workspace. The first opened or
|
|
931
|
+
created module becomes primary automatically, while the first, only, or final
|
|
932
|
+
restored tab can always close. Linked files still open at normal exit restore
|
|
933
|
+
in order with their active tab; closing the final tab persists an empty restart.
|
|
934
|
+
Recent-file history is independently clearable without touching open tabs,
|
|
935
|
+
disk files, or the restart session.
|
|
936
|
+
|
|
937
|
+
During ordinary typing the toolbar, conversion-state labels, generated-C state,
|
|
938
|
+
active source breadcrumb, and lower-left persistent status message remain
|
|
939
|
+
visually stationary. Conversion progress appears only for actual conversion
|
|
940
|
+
work. Python source and generated-C text sizes persist independently, defaulting
|
|
941
|
+
to 14 pt and 12 pt, with a durable preference mirror protecting accepted sizes
|
|
942
|
+
across restart and presentation-schema cleanup. Ordinary non-editor components
|
|
943
|
+
copy the exact reviewed menu font, retaining its 11 pt minimum or a larger
|
|
944
|
+
Windows accessibility choice. The Source Bundle, Python Source, and Generated C
|
|
945
|
+
caption bands use a compact 9 pt hierarchy with adaptive identity elision;
|
|
946
|
+
Help article content independently retains its 11–13 pt reading hierarchy.
|
|
947
|
+
Screen-aware logical geometry keeps all top-level windows inside the current
|
|
948
|
+
monitor work area. The Open preview no longer inherits the Python editor size.
|
|
949
|
+
Transpilation Details always starts hidden; opening it creates a resizable
|
|
950
|
+
lower inspector at 38 percent of the available workspace, preserving editor
|
|
951
|
+
context. Help/About render the redesigned multi-resolution raster identity at
|
|
952
|
+
the final display scale.
|
|
953
|
+
|
|
954
|
+
Only Python source editors expose parser-authenticated function folds. Fold
|
|
955
|
+
application synchronizes document geometry across shared source views, moves
|
|
956
|
+
each cursor out of a newly hidden block, and preserves final-function access
|
|
957
|
+
through Generated C visibility changes. Large-source Fold All uses the existing
|
|
958
|
+
latest-wins background structure observer, validates the exact document
|
|
959
|
+
revision, and never performs a full parse on the UI thread. Every dialog uses
|
|
960
|
+
canonical branded frameless chrome without the retired gradient surface.
|
|
961
|
+
Normal shutdown stores at most 64
|
|
962
|
+
unique linked Python paths plus the active linked path; startup reopens them
|
|
963
|
+
sequentially and reports every missing or unreadable target. Unsaved source is
|
|
964
|
+
never stored. Long main-window identities are bounded and elided before the
|
|
965
|
+
window controls, and Find/Replace keeps Previous and Next in a compact adjacent
|
|
966
|
+
group. Converted and rejected decisions enable an internal read-only
|
|
967
|
+
Ting feedback dialog with an overview and one tab per registered agent. Its
|
|
968
|
+
read-only graphical Flow Map renders the current source-free evidence fan-out,
|
|
969
|
+
live decision states, bounded proof counts, and immutable advisory fan-in; it
|
|
970
|
+
is not a command shell or an execution surface.
|
|
971
|
+
|
|
972
|
+
Six deterministic Ting agents now provide bounded, explainable shadow review
|
|
973
|
+
of syntax, semantics, ownership, lowering, verification, and typed capability
|
|
974
|
+
evidence. The pruning policy executes every registered agent and uses verified
|
|
975
|
+
schema/index work only; it never speculatively skips a proof role. The public
|
|
976
|
+
package contains a private execution-only Ting runtime plus six precompiled,
|
|
977
|
+
digest-bound Compact-IR artifacts. That runtime includes the bounded `.ting`
|
|
978
|
+
Compact-IR loader/parser and verifier needed to decode and materialize those
|
|
979
|
+
artifacts. It excludes the authoring-side RuleSpec source parser, Compact-IR
|
|
980
|
+
compiler, artifact writer, builder, console, history/reference subsystem, and
|
|
981
|
+
standalone command entry point. The compiler and source parser are retained
|
|
982
|
+
only in a separate private custody source package for authorized future rule
|
|
983
|
+
releases.
|
|
984
|
+
|
|
985
|
+
The desktop startup dialog authenticates and parses every shipped `.ting`
|
|
986
|
+
artifact before the workspace is exposed. Its progress advances only after
|
|
987
|
+
real work, uses no artificial timer or network access, permits cancellation at
|
|
988
|
+
safe stage boundaries, and leaves validation errors visible instead of opening
|
|
989
|
+
a partially initialized application.
|
|
990
|
+
|
|
991
|
+
The 0.16.1 workspace added passive ForgeLens, the coordinated blackened-steel
|
|
992
|
+
visual system, and bounded custom Open/Save browsers without changing
|
|
993
|
+
conversion semantics or generated C.
|
|
994
|
+
|
|
995
|
+
The active 0.16.0 converter is the additive successor to sealed Phase 14D. It
|
|
996
|
+
adds independently validated selective scalar scope hoisting, exact loop-else
|
|
997
|
+
completion ownership with overflow-safe signed-64 range updates, and one closed
|
|
998
|
+
bounded UTF-8 file read/write profile. Explicit historical Phase 14 and 14D
|
|
999
|
+
requests retain their exact predecessor schemas, diagnostics, bytes, hashes,
|
|
1000
|
+
rejections, and helper custody.
|
|
1001
|
+
|
|
1002
|
+
`specifications/feature_matrix.json` remains the sealed executable Phase 14D
|
|
1003
|
+
`pycforge.feature-matrix/0.14.3` custody artifact. It is not relabeled as the
|
|
1004
|
+
active Phase 16 contract index; this document and the Phase 16 specifications
|
|
1005
|
+
below own the active successor boundary.
|
|
1006
|
+
|
|
1007
|
+
The 1.1.0 scalar expansion adds checked local declarations and assignments,
|
|
1008
|
+
closed module scalar initialization, and allocation-free UTF-8 operations.
|
|
1009
|
+
See `specifications/scalar_strings_1_1.md` for exact boundaries and diagnostics.
|
|
1010
|
+
|
|
1011
|
+
## Release lineage and custody
|
|
1012
|
+
|
|
1013
|
+
Phase 16 `0.16.0` is implemented, validated, promoted, and sealed.
|
|
1014
|
+
PyCForge 1.0.5 retains those base schemas, renderer, and individually versioned
|
|
1015
|
+
1.0.1 set rules while refining public presentation and notification behavior.
|
|
1016
|
+
PyCForge 0.16.3 added installed Help
|
|
1017
|
+
and workspace usability; 0.16.2 repaired the virtual-EOF
|
|
1018
|
+
frontend boundary and hardening only desktop workspace and presentation
|
|
1019
|
+
behavior. Its presentation identities were `pycforge-workspace/0.6`,
|
|
1020
|
+
`pycforge.action-registry/0.3`, and `pycforge.visual-system/0.3`. PyCForge
|
|
1021
|
+
0.16.1 remains the preserved ForgeLens and blackened-steel
|
|
1022
|
+
predecessor. Phase 15C `0.15.2` remains preserved historical custody evidence
|
|
1023
|
+
with its canonical artifacts intact. The preserved
|
|
1024
|
+
0.15.3 workspace candidate changed only desktop behavior and presentation: it
|
|
1025
|
+
migrates the required binding to PySide6/Qt 6, adds persisted Python-editor
|
|
1026
|
+
sizing and Python auto-indent, and removes passive generated-C mapping overlays
|
|
1027
|
+
while preserving mapping navigation and immutable output. Its converter
|
|
1028
|
+
contract remained sealed at `0.14.3`.
|
|
1029
|
+
|
|
1030
|
+
The base distribution now requires `PySide6>=6.8,<7`; no `workspace` extra is
|
|
1031
|
+
needed or provided. That workspace candidate did not claim the wider Phase 15D
|
|
1032
|
+
visible-platform gate: physical Windows/Linux rendering, display scaling, and
|
|
1033
|
+
assistive-technology certification remain unopened.
|
|
1034
|
+
|
|
1035
|
+
The application never compiles or executes generated C. Version 1.1 release
|
|
1036
|
+
validation uses an external GCC test harness to compare generated functions
|
|
1037
|
+
with Python. File-system effects occur only when a caller separately builds
|
|
1038
|
+
and runs the generated C outside the application.
|
|
1039
|
+
|
|
1040
|
+
## Active identities
|
|
1041
|
+
|
|
1042
|
+
| Surface | Active identity | Authority |
|
|
1043
|
+
|---|---|---|
|
|
1044
|
+
| package | `1.1.1` | `pyproject.toml` |
|
|
1045
|
+
| converter contract | `0.16.0` | `pycforge/converter/contracts/versions.py` |
|
|
1046
|
+
| rule set | `scalar-strings-v1.1` | `pycforge/converter/contracts/configuration.py` |
|
|
1047
|
+
| set rules | `pycforge101.container.set_literal@1.0.1`; `pycforge101.container.set_membership@1.0.1` | `pycforge/converter/analysis/planning.py` |
|
|
1048
|
+
| renderer | `c-renderer-v1.1` | `pycforge/converter/contracts/configuration.py` |
|
|
1049
|
+
| runtime policy | `phase16-bounded-runtime-v0.16.0` | `pycforge/converter/contracts/configuration.py` |
|
|
1050
|
+
| workspace | `pycforge-workspace/0.8` | `pycforge/ide/__init__.py` |
|
|
1051
|
+
| worker IPC | `pycforge.worker-protocol/0.2` | `pycforge/ide/worker_protocol.py` |
|
|
1052
|
+
| action registry | `pycforge.action-registry/0.6` | `pycforge/ide/__init__.py` |
|
|
1053
|
+
| visual system | `pycforge.visual-system/0.5` | `pycforge/ide/__init__.py` |
|
|
1054
|
+
| settings | schema `3` | `pycforge/ide/qt_contract.py` |
|
|
1055
|
+
| Ting agents | six roles, shadow mode | `pycforge/ting_agents/rulesets/registry.json` |
|
|
1056
|
+
| Ting pruning | `pycforge.ting-pruning/schema-indexed-exhaustive-v1` | `pycforge/ting_agents/coordinator.py` |
|
|
1057
|
+
| Ting runtime | `0.1.0a21`, execution-only | `pycforge/_vendor/ting_reasoner_provenance.json` |
|
|
1058
|
+
| source bundle | `source-bundle/0.2` | `specifications/source_bundle.md` |
|
|
1059
|
+
| Python grammar IR | `python-ir/0.4` | `specifications/python_ir_schema.md` |
|
|
1060
|
+
| conversion plan | `conversion-plan/0.16.0` | `specifications/analysis_and_planning.md` |
|
|
1061
|
+
| C IR | `c-ir/0.16.0` | `specifications/c_ir_schema.md` |
|
|
1062
|
+
| generated artifact | `generated-c/0.16.0` | `specifications/result_and_fingerprints.md` |
|
|
1063
|
+
| decision trace | `pycforge.decision-trace/0.16.0` | `schemas/decision_trace.schema.json` |
|
|
1064
|
+
| conversion summary | `pycforge.conversion-summary/0.16.0` | `specifications/result_and_fingerprints.md` |
|
|
1065
|
+
| result serialization | `0.5` | `pycforge/converter/contracts/versions.py` |
|
|
1066
|
+
| scope-lifetime facts | `fact-table/0.16-scope-lifetimes` | `pycforge/converter/scope_lifetimes/model.py` |
|
|
1067
|
+
| loop-completion facts | `loop-completion-fact/0.16` | `pycforge/converter/loop_completion/model.py` |
|
|
1068
|
+
| file-I/O facts | `file-io-facts/0.16` | `pycforge/converter/file_io/model.py` |
|
|
1069
|
+
| file helper registry | `phase16-file-io-support-templates-v0.16` | `pycforge/converter/support_templates/registry.py` |
|
|
1070
|
+
| target/semantics | `c11-portable-fixed-v1` / `strict-source-v1` | active converter specifications |
|
|
1071
|
+
|
|
1072
|
+
## Active Phase 16 capability boundary
|
|
1073
|
+
|
|
1074
|
+
The 1.0.1 set profile admits one directly assigned function-local literal with
|
|
1075
|
+
1–64 unique, homogeneous direct `int`, finite `float`, or `bool` elements. A
|
|
1076
|
+
matching expression may use `in` or `not in` against that local name. Analysis
|
|
1077
|
+
publishes complete `container-membership-facts`; validation reconstructs the
|
|
1078
|
+
Python IR, binding, capacity, element category, operator, and supported or
|
|
1079
|
+
rejected closure. Lowering evaluates the searched expression once and compares
|
|
1080
|
+
it against read-only automatic C storage. Empty, duplicate, heterogeneous,
|
|
1081
|
+
computed, or string sets; inline membership sets; comprehensions; indexing;
|
|
1082
|
+
iteration; mutation; methods; aliases; rebinding; passing; return; and escape
|
|
1083
|
+
fail closed with PYC3402/PYC3403/PYC3406/PYC3410/PYC3411/PYC3412 as applicable.
|
|
1084
|
+
|
|
1085
|
+
Selective scalar scope-lifetime proof admits an ordinary `int`, `float`,
|
|
1086
|
+
`bool`, or `str` local whose first stores lie in exhaustive conditional
|
|
1087
|
+
branches when every reachable continuation definitely initializes the binding
|
|
1088
|
+
before use. Nested conditionals and a surviving branch after its sibling
|
|
1089
|
+
returns are reachability-aware. Lowering declares the scalar once at function
|
|
1090
|
+
entry without a synthetic initializer and preserves branch assignment order.
|
|
1091
|
+
Loops, containers, records, closures, globals/nonlocals, missing coverage,
|
|
1092
|
+
read-before-definition, and incompatible categories do not silently widen the
|
|
1093
|
+
candidate. Complete `fact-table/0.16-scope-lifetimes` evidence and bounded,
|
|
1094
|
+
independently reconstructed proof are required.
|
|
1095
|
+
|
|
1096
|
+
Admitted `while`, positional-`range`, and fixed list/tuple/dictionary loops may
|
|
1097
|
+
have `else`. Natural termination and zero iterations run the suite; only a
|
|
1098
|
+
`break` owned by that exact loop suppresses it. Nested breaks do not affect the
|
|
1099
|
+
outer loop, `continue` preserves completion, and `return` bypasses the suite.
|
|
1100
|
+
A Boolean completion flag exists if and only if the loop owns a break. Range
|
|
1101
|
+
updates use a structured pre-addition guard so crossing the signed-64 boundary
|
|
1102
|
+
selects the staged stop value without C signed overflow. Exact
|
|
1103
|
+
`loop-completion-fact/0.16` records authorize lowering.
|
|
1104
|
+
|
|
1105
|
+
The file profile is exactly one direct synchronous one-item
|
|
1106
|
+
`with open(path, "r" or "w", encoding="utf-8", newline="") as fresh_handle`
|
|
1107
|
+
inside a top-level function, with one direct read-transfer or one direct write
|
|
1108
|
+
of an already-proved string name or string literal whose count is discarded.
|
|
1109
|
+
Calls and other effectful write expressions reject with `PYC3905` because the
|
|
1110
|
+
helper-internal open cannot preserve context-entry ordering. Reads default to
|
|
1111
|
+
1,048,576 bytes and are capped at
|
|
1112
|
+
16,777,216; they reject over-limit input, embedded NUL, non-RFC-3629 UTF-8,
|
|
1113
|
+
read errors, and close errors. Writes require an exact byte count and propagate
|
|
1114
|
+
close failure. Handles cannot alias, rebind, escape, survive the region, or be
|
|
1115
|
+
explicitly closed; source calls into file-effect functions reject.
|
|
1116
|
+
|
|
1117
|
+
Every generated file-effect entry point has one hidden final, required non-null
|
|
1118
|
+
`int64_t *` status parameter pointing to external caller-owned storage. Codes
|
|
1119
|
+
are 0 success, 1 open, 2 allocation, 3 read, 4 limit, 5 embedded NUL in read
|
|
1120
|
+
content, 6 invalid UTF-8 in read content, 7 close, and 8 write. A successful read returns one unique
|
|
1121
|
+
`malloc`-owned `char *`; the external caller must `free` it. Conversion itself
|
|
1122
|
+
never opens the path or observes any runtime file contents or status. The
|
|
1123
|
+
generated entry null-guards the pointer and then initializes status 0 before
|
|
1124
|
+
source-controlled work; an independent C-IR/text conformance check authenticates
|
|
1125
|
+
that order and rejects missing, duplicated, or reordered initialization.
|
|
1126
|
+
|
|
1127
|
+
The external C caller must also satisfy the published C-string preconditions:
|
|
1128
|
+
path is non-null, NUL-terminated valid UTF-8; borrowed write text has the same
|
|
1129
|
+
preconditions and no embedded NUL. Generated helpers do not runtime-validate
|
|
1130
|
+
pointer validity, path UTF-8/NUL properties, or bytes hidden after the first
|
|
1131
|
+
write-text terminator. Source literals containing NUL reject as `PYC3903`
|
|
1132
|
+
(path) or `PYC3905` (write). Status 5/6 validation applies to read file content.
|
|
1133
|
+
|
|
1134
|
+
## Historical 0.15.3 workspace candidate and Phase 15C predecessor
|
|
1135
|
+
|
|
1136
|
+
Phase 15C began from the promoted and sealed Phase 15B release:
|
|
1137
|
+
|
|
1138
|
+
- source archive: `pycforge_phase_15b_v0_15_1.tar.gz`;
|
|
1139
|
+
- archive root: `pycforge_phase_15b_v0_15_1`;
|
|
1140
|
+
- size: 1,544,352 bytes;
|
|
1141
|
+
- SHA-256:
|
|
1142
|
+
`aefaebbacb12b458bcadd9aa25ac9f2678a374b51901bcc51aab3698049cd827`;
|
|
1143
|
+
- release-tree fingerprint:
|
|
1144
|
+
`d90225e2e75842dfd2ca581c08b844a3e640988e385cfc70a68dba8f27db9b36`;
|
|
1145
|
+
- converter-subtree SHA-256:
|
|
1146
|
+
`a45bc2c31b954f9856c8eab36e95f68b086d5fdd682d2cf47ba2186887743124`.
|
|
1147
|
+
|
|
1148
|
+
That authenticated archive and its `0.15.1` wheel remain the Phase 15C
|
|
1149
|
+
predecessor. The immediate 0.15.3 rollback is the published `0.15.2` release.
|
|
1150
|
+
|
|
1151
|
+
## Preserved 0.15.3 workspace implementation
|
|
1152
|
+
|
|
1153
|
+
### Documents, panes, and authoring
|
|
1154
|
+
|
|
1155
|
+
Workspace session state stores bounded document identifiers only. The Python
|
|
1156
|
+
source workspace has document tabs and at most two synchronized panes. It does
|
|
1157
|
+
not duplicate semantic source authority or admit an unbounded editor grid.
|
|
1158
|
+
|
|
1159
|
+
Python authoring includes undoable duplicate, move, indent, outdent,
|
|
1160
|
+
comment-toggle, and auto-indent operations. Enter preserves existing leading
|
|
1161
|
+
whitespace and adds one four-space level after a genuine suite-opening colon.
|
|
1162
|
+
Go-to-line uses document blocks instead of copying complete source. Whitespace
|
|
1163
|
+
display and folding are presentation state. Python source uses a persisted
|
|
1164
|
+
8–48 point size with a 14 pt default; generated C has an independent 8–48
|
|
1165
|
+
point size with a 12 pt default. Neither setting scales application chrome.
|
|
1166
|
+
Existing line numbers, current-line treatment, syntax, bracket, overview,
|
|
1167
|
+
undo/redo, select, and literal find/replace foundations remain intact.
|
|
1168
|
+
|
|
1169
|
+
Generated C is immutable. Passive mapping backgrounds and underlines are
|
|
1170
|
+
suppressed for readability, while mapping records, overview-rail markers, and
|
|
1171
|
+
explicit navigation remain available. Its exact context allowlist is Copy,
|
|
1172
|
+
Select All, and Find. Save C requires a complete current result whose
|
|
1173
|
+
authenticated bundle fingerprint matches the committed workspace.
|
|
1174
|
+
|
|
1175
|
+
### Structure, navigation, and search
|
|
1176
|
+
|
|
1177
|
+
Outline and breadcrumb data derives only from immutable already-open normalized
|
|
1178
|
+
Python source. Analysis is cancellable and latest-wins, and it is bounded to:
|
|
1179
|
+
|
|
1180
|
+
- 64 documents;
|
|
1181
|
+
- 4,096 outline symbols;
|
|
1182
|
+
- depth 64;
|
|
1183
|
+
- 256 characters per symbol name; and
|
|
1184
|
+
- 256 KiB source text per projection.
|
|
1185
|
+
|
|
1186
|
+
Invalid syntax is inert and cannot retire valid structure for another open
|
|
1187
|
+
document.
|
|
1188
|
+
|
|
1189
|
+
Find in Source Bundle searches immutable path-free snapshots of one to 64
|
|
1190
|
+
already-open documents. It performs no file I/O, project discovery, import
|
|
1191
|
+
resolution, or host scan. Results carry Python and UTF-16 positions, bounded
|
|
1192
|
+
previews, deterministic bundle/source order, and a global 5,000-match
|
|
1193
|
+
projection cap.
|
|
1194
|
+
|
|
1195
|
+
### Action discovery and observers
|
|
1196
|
+
|
|
1197
|
+
The command palette searches enabled, visible static registry actions. It owns
|
|
1198
|
+
no handlers, provides no free-form command path, caps queries at 256
|
|
1199
|
+
characters, and projects at most 50 results.
|
|
1200
|
+
|
|
1201
|
+
Session transpilation history stores at most 64 immutable payload-free terminal
|
|
1202
|
+
records. It does not retain source, generated C, diagnostics, mappings, facts,
|
|
1203
|
+
summaries, traces, telemetry, or worker envelopes.
|
|
1204
|
+
|
|
1205
|
+
Diagnostics, mappings, Conversion Summary, Decision Trace, Telemetry, outline,
|
|
1206
|
+
bundle-search results, and history use bounded observer panels. Generated C
|
|
1207
|
+
remains a read-only incremental inspection surface.
|
|
1208
|
+
|
|
1209
|
+
### Action and visual inventories
|
|
1210
|
+
|
|
1211
|
+
The import-safe action registry contains:
|
|
1212
|
+
|
|
1213
|
+
- 57 action specifications;
|
|
1214
|
+
- 56 static actions;
|
|
1215
|
+
- one bounded recent-file dynamic template;
|
|
1216
|
+
- 19 declared surfaces;
|
|
1217
|
+
- six persistent main menus; and
|
|
1218
|
+
- eleven context surfaces.
|
|
1219
|
+
|
|
1220
|
+
The main menus are File, Edit, View, Navigate, Transpile, and Help. Persistent
|
|
1221
|
+
`QAction` construction remains singly owned by `pycforge/ide/qt_actions.py`.
|
|
1222
|
+
|
|
1223
|
+
The visual catalogue contains 55 safe self-contained icons at nine PNG
|
|
1224
|
+
resolutions each, including the canonical PyCForge brand mark and Help icon.
|
|
1225
|
+
The retired About glyph is absent; the main shell and About dialog use the same
|
|
1226
|
+
brand mark. The shared stylesheet covers document tabs, split panes,
|
|
1227
|
+
breadcrumbs, outline, bundle search, history, the command palette, Help, and
|
|
1228
|
+
contained status chrome.
|
|
1229
|
+
|
|
1230
|
+
## Historical Phase 15C real offscreen Qt evidence
|
|
1231
|
+
|
|
1232
|
+
Phase 15C records current-release runtime evidence, not inherited historical
|
|
1233
|
+
evidence:
|
|
1234
|
+
|
|
1235
|
+
- Python `3.12.13`;
|
|
1236
|
+
- PyQt `5.15.11`;
|
|
1237
|
+
- Qt build `5.15.14` and runtime `5.15.19`;
|
|
1238
|
+
- QPA platform `offscreen`;
|
|
1239
|
+
- exactly one real `QApplication`;
|
|
1240
|
+
- 18 focused workspace cases with zero failures, errors, or skips;
|
|
1241
|
+
- a 250,113-character source fixture;
|
|
1242
|
+
- window construction in 0.054 seconds, below the 8-second bound;
|
|
1243
|
+
- first event-loop turn in 0.0103 seconds, below the 1-second bound;
|
|
1244
|
+
- a 0.01-second timer producing 110 ticks during 1.201 seconds of isolated
|
|
1245
|
+
transpilation, below the 30-second bound;
|
|
1246
|
+
- large-file mode active with the syntax highlighter detached;
|
|
1247
|
+
- shared editor-buffer authority preserved; and
|
|
1248
|
+
- zero new PyCForge threads after close and zero worker leaks.
|
|
1249
|
+
|
|
1250
|
+
A small end-to-end workspace conversion completed in 0.408 seconds as
|
|
1251
|
+
supporting evidence. The 18-case widget record is the canonical Phase 15C
|
|
1252
|
+
runtime evidence.
|
|
1253
|
+
|
|
1254
|
+
These 0.15.2 checks use real PyQt widgets on the offscreen QPA backend. They do not
|
|
1255
|
+
constitute visible desktop, physical-screen, display-scaling, or
|
|
1256
|
+
assistive-technology evidence.
|
|
1257
|
+
|
|
1258
|
+
## Preserved responsiveness and safety
|
|
1259
|
+
|
|
1260
|
+
Phase 15A process isolation and Phase 15B command/visual custody remain binding:
|
|
1261
|
+
|
|
1262
|
+
- conversion runs in a spawned child process;
|
|
1263
|
+
- exactly one active and one replaceable latest pending request is admitted;
|
|
1264
|
+
- cooperative cancellation has bounded hard-termination fallback;
|
|
1265
|
+
- exact generation, revision, bundle, request, and transport guards control
|
|
1266
|
+
publication;
|
|
1267
|
+
- stale, failed, canceled, partial, malformed, oversized, or superseded work
|
|
1268
|
+
cannot publish or save C;
|
|
1269
|
+
- file I/O, hashing, revision/index construction, literal search,
|
|
1270
|
+
source-structure analysis, and guarded atomic writes remain outside the GUI
|
|
1271
|
+
thread; and
|
|
1272
|
+
- large-file projections and generated-C population remain bounded or
|
|
1273
|
+
incremental.
|
|
1274
|
+
|
|
1275
|
+
Routine tab, pane, palette, history, go-to-line, and observer updates do not
|
|
1276
|
+
invoke the transpiler, scan the host, hash the complete bundle, or recursively
|
|
1277
|
+
build unbounded view state.
|
|
1278
|
+
|
|
1279
|
+
The one-to-64-document `SourceBundle` remains the entire source universe.
|
|
1280
|
+
Python is the only editable code surface.
|
|
1281
|
+
|
|
1282
|
+
## Checkpoint E debt disposition
|
|
1283
|
+
|
|
1284
|
+
`CE-IDE-WORKSPACE-COMPLETENESS` is retired for the authorized Phase 15C scope.
|
|
1285
|
+
Every bounded authoring, navigation, action-discovery, observer, and immutable
|
|
1286
|
+
generated-C inspection family in the Checkpoint E boundary has an explicit
|
|
1287
|
+
implementation, fail-closed contract, and supporting real offscreen runtime
|
|
1288
|
+
evidence.
|
|
1289
|
+
|
|
1290
|
+
The separate visible-platform and Phase 15D distribution debt remains open.
|
|
1291
|
+
Retiring the Phase 15C completeness item does not claim the complete Phase 15
|
|
1292
|
+
workspace.
|
|
1293
|
+
|
|
1294
|
+
## Roadmap boundary
|
|
1295
|
+
|
|
1296
|
+
Phase 15C adds no project explorer, recursive host scan, language server,
|
|
1297
|
+
formatter, semantic completion, refactoring engine, quick-fix mutation,
|
|
1298
|
+
source-control hosting, remote-file system, collaboration, cloud
|
|
1299
|
+
synchronization, arbitrary project configuration, plugin system, macro,
|
|
1300
|
+
external command, build/run/debug action, terminal, toolchain integration, or
|
|
1301
|
+
generated-C editing.
|
|
1302
|
+
|
|
1303
|
+
Phase 15D, the wider distribution and real visible Windows/Linux PySide6 gate,
|
|
1304
|
+
remains unopened.
|
|
1305
|
+
|
|
1306
|
+
## Supporting gates
|
|
1307
|
+
|
|
1308
|
+
```text
|
|
1309
|
+
python -m unittest tests.test_phase12_2_qt
|
|
1310
|
+
python -m unittest tests.test_phase15c_action_contract
|
|
1311
|
+
python -m unittest tests.test_phase15c_command_palette
|
|
1312
|
+
python -m unittest tests.test_phase15c_source_editing
|
|
1313
|
+
python -m unittest tests.test_phase15c_source_structure
|
|
1314
|
+
python -m unittest tests.test_phase15c_workspace_search
|
|
1315
|
+
python -m unittest tests.test_phase15c_workspace_session
|
|
1316
|
+
python -m unittest tests.test_phase15c_session_history
|
|
1317
|
+
python -m unittest tests.test_phase15c_visual_system
|
|
1318
|
+
python -m unittest tests.test_phase15c_qt_command_contract
|
|
1319
|
+
python -m unittest tests.test_phase15c_qt_panels_contract
|
|
1320
|
+
python -m unittest tests.test_phase15c_qt_position_reverse
|
|
1321
|
+
python -m unittest tests.test_phase15c_qt_workspace_integration
|
|
1322
|
+
python -m unittest tests.test_editor_behavior_qt
|
|
1323
|
+
python -m unittest tests.test_editor_settings_qt
|
|
1324
|
+
python -m unittest tests.test_validate_phase16
|
|
1325
|
+
python -m unittest tests.test_phase15c_release_contract
|
|
1326
|
+
python -m unittest tests.test_validate_phase15c
|
|
1327
|
+
python -m unittest tests.test_phase15c_release_packaging
|
|
1328
|
+
python tools/validate_phase16.py --mode promotion
|
|
1329
|
+
```
|
|
1330
|
+
|
|
1331
|
+
The active Phase 16 gate includes the preserved 0.15.3 PySide6 workspace gate
|
|
1332
|
+
and explicit historical Phase 14D converter custody rather than substituting
|
|
1333
|
+
for either. It does not invoke pytest or select tests; CI and release run the
|
|
1334
|
+
complete unfiltered pytest suite in a separate required step and report every
|
|
1335
|
+
conditional skip reason with `-rs`. The validator never executes source Python,
|
|
1336
|
+
opens a witness source-selected path, invokes a C toolchain, or executes
|
|
1337
|
+
generated C.
|
|
1338
|
+
|
|
1339
|
+
Detailed Phase 15C scope and evidence are recorded under
|
|
1340
|
+
`transition/phase_15c` and `evidence/phase_15c`.
|