Standard SDL rulesets for adapting Qt 5.x codebases to Qt 6.x with Evolution Engine.
Equivalence Engine
·
Report Bug
·
Request Feature
Rules for source code migrations between library and framework versions, designed for the Equivalence Engine.
This repository contains SDL-based rulesets for evolving source code. Rules are organized by language and library binding to ensure precise and safe migrations.
Currently featuring comprehensive rules for PyQt5 to PyQt6 migrations.
-
Equivalence Engine — The core binary that resolves and applies these rules.
-
Equivalence Engine Action — Modular GitHub Action to automate code adaptation in CI pipelines.
-
Equivalence Rules: Code — This repository (PyQt, library-level migrations).
-
Equivalence Rules: Filesystem — Rules for cross-OS path mapping and equivalency.
rules/
└── python/ <-- Language
└── PyQt/ <-- Library/Binding
└── 5.15-6.0.sdl <-- Version Migration RuleTo migrate a Python project from PyQt5 to PyQt6:
equivalence-engine -p . \
--rules-repo https://github.com/dev-centr/equivalence-rules-code \
--library python/PyQt \
--from 5.15 --to 6.0 --in-placeNew rules should be added to the appropriate rules/<lang>/<library>/ subdirectory. Each rule file should be named according to the version jump (e.g., 1.0-2.0.sdl).
DevCentr.org — support@devcentr.org