Release 3.10.0
Aelin (4):
pmb.qemu: Remove support for direct kernel boot
pmb.build: If clang is used, don't install GCC
pmb.qemu: Remove QEMU dep handling for Alpine 3.12
pmb.sideload: Fix sudo detection
Anri Dellal (1):
pmb.helpers.ui: Do not fail if UI APKBUILD is missing
Aster Boese (5):
pmb.chroot.init: bootstrap the bin-merge by creating symlinks
gitlab-ci: change ci-common pull from master to main
pmb: add run0 support
docs: add run0 support to documentation
treewide: replace 'master' strings with 'main'
Casey Connolly (2):
remove ondev support
pmb.build.autodetect: Use cross-native2 for noarch packages
Clayton Craft (1):
pmb.helpers.run_core: fix 100% cpu busy loop
Gregory Kietzman (2):
pmb.install: Fix broken parameters
pmb.parse, pmb.helpers: Fix docstrings
Hugo Osvaldo Barrera (2):
pmb.helpers.aportupgrade: remove obsolete command
docs: explain how to install keys for mirrors
Hugo Posnic (5):
pmb: Migrate status away from legacy frontend
pmb: Migrate update away from legacy frontend
pmb: Migrate initfs away from legacy frontend
pmb: Migrate work_migrate away from legacy frontend
pmb: Migrate repo_missing away from legacy frontend
Newbyte (1):
pmb: Remove lint subcommand
Pablo Correa Gómez (9):
pmb.helpers.package: do not add packages to the queue that are already there
pmb.helpers.package: use sets for queue and ret in depends_recurse
pmb.helpers.package: do not queue providers of packages we have seen
test.helpers.test_package: add test for remove_operators
pmb.helpers.pmaports: make check_version_constraints more generic
pmb.helpers: move check_version_constraints from pmaports to package
pmb.helpers.package: also track the original names of the packages
pmb.helpers.package: remove unused import
pmb.parse.apkindex: only select provider if it matches constraints
Paul Adam (7):
docs: fix order of command modules
pmb: Migrate stats away from legacy frontend
pmb: Migrate build_init away from legacy frontend
pmb: Migrate newapkbuild away from legacy frontend
pmb: Migrate apkindex_parse away from legacy frontend
pmb: Migrate bootimg_analyze away from legacy frontend
pmb: Migrate chroot away from legacy frontend
Rakshit Kumar Singh (1):
pmb: Migrate apkbuild_parse away from legacy frontend
Rudraksha Gupta (1):
pmb.qemu.run: Add armv7 display support
Stefan Hansson (143):
pmb.helpers.pkgrel_bump: Remove unnecessary type check
pmb.parse.kconfigcheck: Simplify get_path()
pmb.config.init: Simpify ask_for_work_path() using is_relative_to()
pmb.config.init: Avoid unnecessary string concatenation in get_locales()
pmb.config.pmaports: Modernise check_version_pmbootstrap() using pathlib
pmb.parse._apkbuild: Remove attr-defined disable
pmb.chroot.initfs_hooks: Rename list_aports() to list_hook_packages()
pmb.chroot.initfs_hooks: Use NonBugError
envkernel: Add better hint if installing build dependencies fails
pmb.helpers: Raise CommandFailedError on failed command
pmb.helpers.frontend: Handle CommandFailedError in chroot()
pmb.install._install: Use NonBugError for nonexistent kernel
pmb: Introduce PackagingError
pmb.chroot.initfs: Use PackagingError if mkinitfs fails
pmb: Guess checksum package based on cwd if none is specified
pmb.chroot.apk: Replace Sequence and list with Collection in inputs
pmb.build._package: Don't needlessly turn set into list
pmb.chroot.initfs_hooks: Print hook descriptions when listing them
pmb.aportgen.core: Try to be more helpful on nonexistent aport
pmb.install._install: Remove args from setup_login_chpasswd_user_from_arg()
pmb.install._install: Remove args from setup_login()
pmb.install._install: Remove args from print_sshd_info()
pmb.install._install: Remove args from generate_binary_list()
pmb.install._install: Remove args from embed_firmware()
pmb.install._install: Remove args from write_cgpt_kpart()
pmb.install._install: Remove args from sanity_check_disk()
pmb.install._install: Remove args from sanity_check_disk_size()
pmb.install._install: Remove args from get_ondev_pkgver()
pmb.install._install: Remove args from sanity_check_ondev_version()
pmb.install._install: Remove args from create_fstab()
pmb.install.format: Remove args from format()
pmb.install._install: Remove args from get_selected_providers()
pmb.install._install: Remove args from get_recommends()
pmb.install._install: Remove args from create_device_rootfs()
pmb.qemu.run: Remove args from create_second_storage()
pmb.qemu.run: Remove args from install_depends()
pmb.qemu.run: Remove args from create_gdk_loader_cache()
pmb.types: Remove qemu_redir_stdio from PmbArgs
pmb.types: Make PmbArgs.port an int
pmb.types: Add memory to PmbArgs
pmb.args: Make some arguments optional
pmb.qemu.run: Remove PmbArgs
pmb.export.frontend: Remove PmbArgs from frontend()
pmb.sideload: Remove PmbArgs from ssh_install_apks()
pmb.sideload: Remove PmbArgs from ssh_find_arch()
pmb.sideload: Remove PmbArgs from scp_abuild_key()
pmb.sideload: Remove PmbArgs from sideload()
pmb.chroot.initfs: Refactor frontend()
pmb.helpers.repo_missing: Simplify generate()
pmb.commands: Use functions intead of classes for most commands
pmb.build._package: Catch CommandFailedError when build fails
pmb: Migrate sideload away from legacy frontend
pmb.meta: Simplify build_key() slightly
pmb.build._package: Fix instance of cross compile literal
pmb.helpers.mount: Fix str being compared to Path
pmb.install.format: Fix sector_size comparison
pyproject.toml: Set strict_equality = true
pmb.parse.deviceinfo: Remove validation code
pmb, test: Remove references to deviceinfo_external_storage
pmb: Migrate export away from legacy backend
pmb.parse.deviceinfo: Trim down Deviceinfo class docstring
pmb: Migrate netboot away from legacy frontend
pmb.aportgen.core: Properly type replace_simple in rewrite()
pmb: Migrate build away from legacy frontend
pmb.helpers.git: Fix infinite loop in get_changed_packages()
pmb.build.autodetect: Remove dead code
pmb.helpers.git: Fix always False expression
pmb.types: Mark disk as optional in PmbArgs
pmb.install._install: Ignore truthy-bool error in setup_appstream()
pmb.commands.export: Fix rootfs export hint never appearing
pyproject.toml: Enable "truthy-bool" error code for mypy
pmb.build.autodetect: Fix automatic arch detection
pmb: Migrate checksum away from legacy frontend
pmb.helpers.logging: Avoid undocumented logging.WARN
pmb.chroot.test_apk: Remove unnecessary return statement
pmb.commands.test: Use from keyword to import logging
pmb.parse.arguments: Simplify package_completer()
pmb.parse.kconfig: Avoid redundant exception naming
pmb.parse.arguments: Simplify arguments_status()
pmb.install.losetup: Avoid redundant exception naming
pmb.build._package: Simplify get_depends()
pmb.build._package: Remove unncessary global declaration
pmb.build.envkernel: Avoid redundant exception naming
pmb: Use sys.exit() instead of exit()
pmb.commands.netboot: Avoid redundant exception naming
pmb.commands.sideload: Simplify ssh_find_arch()
pmb.core.arch: Remove unncessary global declaration
pmb.core.chroot: Use dict to avoid repeated equality comparison
pmb.core.context: Remove unncessary global declaration
pmb.helpers.other: Simplify folder_size()
pmb.helpers.pmaports: Simplify _find_apkbuilds()
pmb.helpers.repo: Avoid redefining "arch" variable
pmb.helpers.repo_missing: Simplify generate()
pmb.install._install: Replace if ... else with match
pmb.install.format: Use dict to avoid repeated equality comparison
pyproject.toml: Ignore more rules
pmb.parse.apkindex: Don't bother checking if provides is None
pmb.build.kernel: Don't bother checking if Match.groups() is None
pmb.types: Mark name in PmbArgs as optional
pmb.parse.deviceinfo: Update name validation comment
pmb.parse.deviceinfo: Make InitfsCompression.from_str() never return None
pmb.parse.deviceinfo: Reduce setattr() use in Deviceinfo.__init__()
pmb: Migrate zap away from legacy frontend
pmb: Migrate qemu away from legacy frontend
pmb.parse.kconfig: Error on kconfig option not being set correctly
pmb.commands.kconfig: Raise NonBugError on failed validation
pmb.core.package_metadata: Use annotations from __future__
pyproject.toml: Set pretty = true for mypy
pyproject.toml: Set strict_bytes = true for mypy
pmb.types: Mark sparse in PmbArgs as optional
pmb.install._install: Don't bother checking if config.keymap is None
pmb.types: Mark value in PmbArgs as optional
pmb.config.other: Don't bother checking if check_option() returns None
pmb.install.recovery: Remove flavoured initfs compatiblity
pmb.build._package: Explicitly annotate cross and prev_cross
test.core.test_arch: Generalise alpine_triple() assert
test.config.test_config_serde: Generalise config.mirrors assertion
pmb.core.chroot: Ignore comparison overlap for deviceinfo arch
pmb.install: Refactor args.split
pyproject.toml: Set strict_equality_for_none = true for mypy
pmb.commands.build: Clean up some strings
pmb.commands.config: Fix type hint
pmb.install.blockdevice: Use Path.replace()
pmb.helpers.frontend: Ask for password early with getpass()
pmb.install: Mount disk early
pmb.install._install: Simplify setup_timezone()
pmb.helpers.args: Replace constant attribute delattr() with del keyword
pmb.chroot.zap: Improve error message if a chroot fails to umount
pmb.parse.apkindex: Improve overloads for parse()
pmb.config.init: Remove unreachable return statement
pmb: Fix apkindex_parse command
pyproject.toml: Set warn_unreachable = true for mypy
pmb.commands: Mark newapkbuild as migrated
pmb.commands: Use args.package for apkindex_parse
CI: Add APKINDEX parsing integration test
pmb.install._install: Re-add disk argument to install_system_image()
pmb.commands.apkindex_parse: Remove redundant type check
pyproject.toml: Set local_partial_types = true for mypy
pmb.helpers.ui: Actually skip UI directories without APKBUILDs
pmb.parse.kconfig: Don't bother catching RuntimeError for read_categories()
pmb.install._install: Avoid using undefined variable in exception handler
pmb.helpers.git: Fix MissingSectionHeaderError handling
Prepare 3.10.0 release
Yohan Boniface (1):
pmb: migrate config command away from legacy frontend
kersnazzle kersnazzle (1):
pmb: Migrate ci away from legacy frontend