Hi, It's been some time since the last update on NATTkA. Here's just a short summary of new cool features. Keyword expansion in package lists ================================== In order to improve compatibility with existing tools, once arches are CC-ed NATTkA automatically replaces `*` and `^` tokens in package lists with actual lists of keywords. If they happen to match current CC, it outputs the 'empty keyword list' for convenience. Note that the expansion happens only if arches are CC-ed and sanity- check passes. This is meant to avoid changing the package list while the developer is still working on it. CC-ARCHES ========= If CC-ARCHES keyword is present on the bug, the NATTkA will automatically CC arches and start keywording/stabilization once sanity- check passes. If keywords are specified on the package list, the union of all arch teams will be used for CC. If no keywords are specified for package on package list, NATTkA sees if `*` would yield consistent keywords throughout all packages. If this is the case, it CC-es the equivalent of `*`. Note that arch teams are CC-ed only when sanity-check passes. Again, this is meant to avoid CC-ing prematurely while developer is still working on the package list. If the bug is not checked, then you probably need to specify keywords. ALLARCHES ========= NATTkA now knows ALLARCHES and helps you do it. When the bug changes, NATTkA looks if all listed packages are marked and adds/removes ALLARCHES keyword appropriately. If you want to force ALLARCHES independently of , just set the keywords yourself once the sanity-check passes and NATTkA shouldn't touch it until next state change. `nattka apply`, `nattka commit` and `nattka resolve` know ALLARCHES too, and will automatically switch to applying all keywords if the bug is marked ALLARCHES. Less verbose output, more verbose logs ====================================== NATTkA used to be very verbose when it could no longer perform sanity- check. This involved spamming security bugs once arch teams finished but the bug was still open. Now NATTkA tries to be less verbose -- it tries to determine if there is any more work to be done, and skips bugs silently when all looks done. Note that this could mean silently skipping bugs in corner cases. If NATTkA does not seem to tackle your bug, try `nattka sanity-check NNNN` and it will log the reason. Now the logs in 'pretend' mode include all the changes that would be done to bugs, including specific comments and package list expansions. New `nattka make-package-list` command ====================================== Did you ever rely on stable-bot/NATTkA to tell you which dependencies need to be keyworded? Now you can do it locally without updating the bug and waiting for NATTkA to complain. Just run: nattka make-package-list dev-foo/bar and NATTkA will run pkgcheck and add failing dependencies iteratively until it completes the package list or fails to satisfy pkgcheck. Note that this is a pretty early feature and it isn't very smart. It may fail at obvious stuff (like `<` deps) or produce extraneous packages. In particular, pkgcheck and repoman handle || deps somewhat poorly and they could bring extraneous solutions into the package list (e.g. asking you to keyword dev-python/sphinx and pypy3 even though the required PYTHON_TARGETS are masked on arch in question). Improvements will happen in the future. In particular, I'm looking forward to adding an interactive mode with package editing and stablereq support. -- Best regards, Michał Górny