- add monitor mode support for internal Wi-Fi chipset (with Wi-Fi packet injection);
- add KernelSU support.
- add DM-Verity and Force Encrypt disabler.
- add DriveDroid(-like) support.
- add an asset downloader (ROM, Magisk, etc.);
- add CI/CD pipelines;
- add option to save logs to a file;
- add option to build in Docker container;
- add multidevice support, with appropriate manifest;
- improve log level setting throughout all stages of the build;
- improve file/directory cleaning mechanism in a form of a dedicated module;
- improve Clang download mechanism;
- add build counter mechanism for CI/CD pipelines;
- add codename specific elements to final kernel zip;
- add a simpler and slimer bundle creator (kernel+ROM);
- add return types to functions;
- add requirements.txt for pip;
- add proper OS detection for preventing local builds in unsupported systems;
- add static analysis for the wrapper;
- add a single-point manifest with main info on the tool;
- improve documentation;
- apply OOP paradigm;
- switch to uv for dependency management;
- switch to
pathlib
; - add a FAQ page;
- refactor Docker/Podman command formation;
- fix Podman usage (.dockerignore);
- add a separate method for multiline patching in files;
- add a dataclass for wrapper's arguments;
- add PA ROM support;
- decompose
run()
method inContainerEngine
; - skip building Docker/Podman image if it's already present in local cache;
- for containerized build, download the contents of manifests during image build;
- add a new argument responsible for Linux kernel version selection;
- add 4.14 Linux kernel version builds;
- decompose
run
methods into separate methods as much as possible; - switch to pydantic;
- add type checks with pyright;
- add unit tests with coverage checks;
- switch to
__enter__
and__exit__
Python's magic methods for container engines.
- add published Conan package validator;
- create a commit-based lockfile system for reproducible kernel builds;
- dedicate kernel source patchers as separate modules (LineageOS, AOSP, AOSPA etc);
- make kernel building and assets collection processes asynchronous when launching the
bundle
option; - add a GitHub workflow for checking PRs;
- add system app debloater;
- move device-specific modifications into appropriate folder with custom Modificator (sub)classes;
- switch to
exec
commands for Docker and Podman instead of a singlerun
command; - replace
ccmd.launch()
to justlaunch()
(or any other name); - embed newlines usage (from both sides) into
messages
functions as arguments; - add tests on cases of custom wrapper edge case exits (kernel build on Windows, ROM-only asset collection for a ROM-universal kernel etc.);
- break down (or create inheritance from) KernelBuilder into LineageOsKernelBuilder, ParanoidAndroidKernelBuilder, XKernelBuilder etc;
- investigate project restructuring to avoid circular import;
- consider creating a separate "errors" subpackage for all errors;
- add GKI kernels support;
- use logging facility for logs.