File klp-build.changes of Package klp-build
-------------------------------------------------------------------
Thu Jun 5 19:50:55 UTC 2025 - Lucas Mulling <lucas.mulling@suse.com>
- Add missing requires:
* python3-bugzilla
* python3-pyelftools
* python3-zstandard
-------------------------------------------------------------------
Tue May 13 14:52:47 UTC 2025 - mvetter@suse.com
- Update to version 1.1.0~20250507.8576150:
* plugins: extractor: Remove -Wno-dangling-pointer from gcc invocation
* plugins/scan: Integrate patch analysis into scan
* klplib: Add patch analysis functions
* klplib/ksrc: Add ksrc_is_module_supported()
* klplib/codestream: Add config dict per codestream
* klplib/ksrc: Improve get_commit_files
* klplib: file2config: search Makefile also in parent directories
* klplib: Add file2config script
* klplib/kernel_tree: Add read_file_in_tag()
* klplib/ksrc: Filter out merge commits
* klplib: codestream: use ksrc to read config
* klplib: ksrc: use decorator to fetch kernel-source tags
* klplib: ksrc: drop GitHelper class
* klplib: ksrc: drop unused lp_filter field from class
* klplib: ksrc: drop kernel_branches field from class
* klplib: ksrc: drop kern_src from class
* klplib: ksrc: drop unused imports
* klplib: kernel_tree: use decorator to update kernel tree tags
* drop get-patches command
* setup.py: Remove importlib as dependency
* plugins/scan: Filter codestreams with no-check set
* klplib: utils: don't use PurePath in get_tests_path
* plugins/scan: Update kernel trees on scan
* tests: Adapt the tests to use kernel.git repo
* klplib/kernel-tree: re-implement get_commit_data
* klplib/kernel_tree: return bool in file_exists_in_tag()
* plugins: drop inline plug
* man: Document the new 'data' command
* man: Document 'scan --download' option
* klplib/cmd:man: Document the 'cs-diff' command
* plugins: format-patches: allow format-patches to skip test script
* klplib: utils: make get_test_path return None if no test is found
* klplib: config: emit debug log when entry is not found
* plugins: format-patches: drop unused warning
* plugins: setup: update kernel tree tags
* plugins: extractor: update kernel tree tags before extraction
* plugins: introduce clean-sources plugin
* klplib: kernel_tree: check file exists from kernel tree git
* klpbuild: ibs: stop downloading sources paskages
* klplib: codestream: make get_src_dir initialize the kernel source
* klplib: plugins: introduce kernel tree module
* klplib: ibs: drop unused imports
* plugins: scan: add download_data option
* plugins: data: introduce command to handle cs data
* cmd: Add 'version' command
* argparsers: drop "SLE specific" from all subparser
* plugins: format-patches: fix help message
* plugins: extractor: add help message
* plugins: setup: add help message
* klplib: data: introduce module to manage rpms
* klplib: codestreams: call set_archs directly in from_codestreams
* klplib: ibs: add extraction logging
* tests: extract: check warning is emitted on opt clones
* plugins: extractor: add warning on optimization clone
* ibs: Fix decompression of vmlinux and config for s390x
* klplib/ksrc: Show progress when getting SUSE fixes for upstream commits per CVE branch
* klplib/ksrc: Print also the name of the related suse source branches
* scan: Ignore code streams which do not match --filter
* extract: Replace only the first '..' on a path
* setup: Make validate_config to check for specified archs
* test_extract: Add an example of compile_commands.json search failing
* plugin: extract: Make sure that we propagate the correct errors
* extract: Get gcc args by using compile_commands.json
* plugins: format-patches: convert to plugin
* klplib: plugins: use underscore in plugin file name
* plugins: setup: make sure archs is an array
* plugins: setup: convert to plugin
* plugins: setup: drop unused import
* klplib: cmd: make lp_name arg destination name consistent
-------------------------------------------------------------------
Tue Apr 15 12:46:44 UTC 2025 - mvetter@suse.com
- Update to version 0~20250321.366c1ea:
* ibs: Fix decompression of vmlinux and config for s390x
* ibs: Remove the .zst files aftect they are extracted
* codestreams.py: Detect if a .ko module is missing
* tests: Add more tests for scan
* klplib/ksrc: Minor fix when diffing commits
* tox: Set default logging level to DEBUG
* klplib: templ: Add prototypes of _init/_cleanup functions of files
* klplib: utils: Add get_fname
* templ: Move __create_kbuild function out of TemplateGen class
* templ: Cleanup generate_lp_file
* klplib:ksrc: Switch all the prints to logs
* templ: Remove ununsed mod variable
* klplib: config: use debug logging when loading user conf
* klp-build: enable global verbose option
* klplib: cmd: enable klp-build help message
* ci: Trigger klp-build tests only on PRs
* klplib:ksrc: Don't fetch kernel-src in `TEST_MODE`
* ci: Add support for Github CI
* tox: Allow specifying additional args to Pylint
* tests: Do not use 12.5 codestream
* klplib: Add `TEST_MODE` env variable
* klpbuild: Use bugzilla lib to fill the livepatch title on commit.msg file
* klplib: Add bugzilla lib
* setup: Move generate_commit_msg_file to Setup plugin
* klp-build: main: stop catching every assertion error
* templ: Move generate_commit_msg_file out of TemplateGen class
* klpbuild: utils: Introduce filter_codestreams_str
* plugins: extractor: Group files based on generated livepatches
* templ: Add livepatch.h include when IBT is being used with ext vars
* codestream: Remove the absolute module path from codestreams.json
* tox: add pytest dependency when running pylint
* setup: Add a more advanced versioning schema
* templ: Simplify livepatch.h generation
* ibs: Show the codestreams that are about to be pushed
* templ: Remove clang-extract feature called proto-files
* ksrc: Improve is_kernel_patched() heuristic
* ksrc: Ignore unrelated and duplicated commits
* klplib: plugins: move plugins args subparser outside of klplib/cmd
* klplib: cmd: reorganize argument parser
* klplib: ksrc: fix syntax warning
* plugins: scan: introduce scan plugin
* ibs: Finally remove the deprecated usage of pkg_resources
* klplib: cmd: make filter arg destination name consistent
* klplib: plugins: add helper to extract the required plugin arguments
* klplib: plugins: add helper to dynamically load plugins
* klplib: ksrc: make scan() storing the patches only if needed
* klplib: ksrc: make get_commits() storing the patches only if needed
* klplib: ksrc: rename upatches to upstream_patches_dir
* klplib: ksrc: create fetch_kernel_branch() function
* klplib: ksrc: drop lp_name field
* klplib: supported: add docstrings
* klplib: supported: rename download_codestream_file to get_supported_codestreams
* klplib: ksrc: move download_supported_file to supported.py
* klplib: codestream: drop data_path, lp_path and lp_name fields
* test: codestream: test filter regexp
* klplib: codestream: add check on filter regexp
* klplib: codestream: make sure codestream name contains SLE|MICRO
* klplib: codestream: rename work_dir() to get_ccp_work_dir()
* klplib: codestream: rename lpdir() to get_lp_dir()
* klplib: codestream: rename dir() to get_ccp_dir()
* klplib: codestream: use dir() in lpdir()
* klplib: codestream: drop get_data_dir
* klpbuild: Remove the --skip argument and use negative regex
* klpbuild: Use more --filter instead of --cs on log and cs-diff
* Drop support to SLE15-SP2
* Drop support to SLE15-SP2
* ibs: Test the procedure of getting kernel rpm packages
* klpblib: ibs: Fix download_cs_data method
* Remove Makefile responsible for running tests
* klplib: config: move get_tests_path to klplib/utils
* klplib: config: add docstrings
* klplib: config: apply name mangling to private methods
* klplib: config: finally drop Config class
* klplib: config: drop data field
* klplib: config: drop lp_path field
* klplib: config: move methods out of the Config Class
* klplib: config: drop user_conf_file field
* klplib: config: fix: avoid reloading config file
* klplib: config: move logging configuration to main
* klplib: codestreams_data: introduce codestreams_data module
* tox: Use the ssh-agent from host
* Release klp-build v0.0.2
* klplib: ibs: stop importing get_elf_modinfo_entry
* klplib: ibs: Remove check for module dependencies on prepare-tests
* ksrc: Filter out commits related to the CVE
* templ: Create Kbuild.inc file only after generating the LP files
* config: move to klplib package
* extractor: move to plugins package
* utils: move to klplib package
* inline: move to plugins package
* templ: move to klplib package
* ibs: move to klplib package
* ksrc: move to klplib package
* setup: move to plugins package
* codestream: move to klplib package
* cmd: move main_func out of cmd.py
* utils: drop double import
* utils: rename filter_cs to filter_codestreams
* codestream: fix dict type annotation
* codestream: rename get_odir to get_obj_dir
* codestream: rename get_sdir to get_src_dir
* codestreams: Make set_archs to choose the correct archs per codestream
* ibs: push: fetch the remote codestreams before rebasing
* klp-build: Extract gz files on MICRO as well
* tests: Add tests for MICRO-6-0
* templ: Add SLE MICRO6
* ibs: Refactor validate_livepatch_module to support MICRO
* ibs: Extract all zst and xz files under /usr/lib/modules
* codestreams: Add MICRO version on name_full method
* ibs: Change push/log projects from devbuild to standard
* ksrc: Enable MICRO
* klp-build: Add SLE Micro support
* ksrc: drop support for SLE15-SP5-RT
* ksrc: rename SLE15-SP5 branch to LTSS
* setup: Always set archs and cve to cs_data
* extractor: Remove empty lines
* scripts: run-kgr-test.sh: Add more paths to search for vms and kgr-test
* extractor: Replace '-' for "-" on module name of externalized syms
* ibs: Redownload the rpm if the extraction failed
* ksrc: Skip SLE Micro for now
* ibs: push: Get the codestream branch and rebase it on top of base branch
-------------------------------------------------------------------
Tue Mar 11 05:33:30 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Do not hardcode the Python version for the egg-info directory.
-------------------------------------------------------------------
Wed Jan 15 14:19:42 UTC 2025 - mvetter@suse.com
- Update to version 0~20250108.8e6c7f6:
* ksrc: drop support for SLE15-SP5-RT
* ksrc: rename SLE15-SP5 branch to LTSS
* setup: Always set archs and cve to cs_data
* extractor: Replace '-' for "-" on module name of externalized syms
* ksrc: Skip SLE Micro for now
* Pylint: Solve reports on Setup class and on test files
* setup: Do not reassign archs with archs.sort()
* cmd: use correct archs field
* setup: Move ctor args into a functions
* klpbuild: Fix more pylint warnings
* Fix pylint warnings on extract and templ modules
* templ: Remove the CreateMakefile function
* ksrc: Fix some pylint warnings
* Fix pylint issues on Config class
* codestream: Do not use empty list and dict as default value
* ksrc: Honor --no-check on scan
* extractor: Dump the env vars used by ccp
* config: natsort the codestreams of codestreams.json
* extractor: Check if make invocation fails
* man: Add definiton of the `scan` subcommand
* ksrc: Use atomic transactions with git-fetch
* setup: Always pass conf to scan
* ksrc: Fix IBS constructor
* utils: Remove unneeded variable
* ibs.py: Automatically drop stale codestreams
* config: Fix flush_cs_file regarding list vs dict
* Config: Move check_symbol_archs to Codestream class
* util: Use natsorted on classify_codestreams
* Move filter_cs to utils
* Cleanups
* ksrc: Add --force to git fetch
* config: Remove codestreams_list and use a dict everywhere
* ksrc: Don't download codestreams data with "scan"
* config: Move self.lp_name to the classes that inherit COnfig
* Move lp_out_file and lp_name to Codestream class
* config: Simplify get_tests_path
* Drop conf.json
* Move found commits from conf.json to codestreams.json file
* Move cve data to codestreams.json
* config: Move archs from conf.json to codestreams.json
* config: Move the codestreams into it's own key inside codestreams.json
* klp-build: Remove --data-dir
* config: Remove unused conf.json fields
* Move find_obj_path to Codestream class
* Codestreams: Add get_mod
* Move validate_config to Codestream class
* ksrc: Move get_cs_branch to utils
* ksrc: Clean get_cs_branch function
* Revert "templ.py: Include linux/livepatch.h header for IBT enabled kernels"
* Codestreams: Add lpdir to Codestreams class
* templ: Use SUSE_HEADER only once
* templ: Drop unused methods
* Extractor: Merge CCP class into Extractor
* Codestream.py: Add needs_ibt attribute
* ibs: Use more cs.dir()
* Move lp_path to the Codestream class
* Remove clang-extract usage
* extractor: cs-diff: Assert the correct variable
* ksrc: Add --quiet to git fetch
* pylint: First batch of changes, mostly imports and unused vars
* setup: Remove --codestreams in favor of --filter
* ibs: Speed-up the bulk download of codestreams
* Enable scan --conf to check if we support a livepatch for the CVE
* klp-build: Download missing codestreams on scan
* klpbuild: Remove self.working_cs
* tests: Remove the workers argument from Extractor class
* ccp: Adapt to the new ccp policy scripts
* ibs: Fix typo in log
* templ.py: Include linux/livepatch.h header for IBT enabled kernels
* Fix remaining issues regarding the Codestream class introduction
* config: Add 'workers' setting to config file
* Add 'Settings' section to config file
* doc: Remove support for upstream kernel
* cmd: log: Create Codestream object before calling log
* Move ELF handling to utils
* Move more code out of Config class
* Move more code out of Config class
* Add more code to Codestream class
* Simplify get_boot_file to always use files from /boot/*
* codestream: Add ktype and kname on Codestream class
* Remove support for host and kdir types of LP creation
* cmd: Add scan subcommand
* cmd.py: Remove the --experimental optinal\
* config: rename new_codestreams to codestreams_list
* config: Make verbose=False the default for filter_cs
* Second batch of Codestream class support
* Huge transformation: use Codestream class everywhere
* Use Codestream on IBS class
* Let GitHelper to download and filter the codestreams
* setup: Split the _scan_ part from setup_codestreams
* test: utils: Add check for the new Codestream classify
* Start moving setup phase to use Codestream class
* utils: Change classify to also recognize Codestreams class
* Introduce Codestreams class
* tests: Convert setup tests to use pytest
* tests: Convert templ to use pytest
-------------------------------------------------------------------
Mon Oct 07 12:58:01 UTC 2024 - mvetter@suse.com
- Update to version 0~20241007.06dcc8f:
* README: Fix typos about the configuration
* man: Add "--ignore-errors" definition
* extractor: Do not use compile_commands.json for SLE kernels
* extract: Add --ignore-errors argument
* tests: Fix remove/apply patches log writer handle
* setup: Call validate_config before checking for files
* setup: Check the number of affected codestreams only after filter_cs
* tests: Convert ccp to pytest, and rename the files
* tests: Check classify_codestreams
* test_ksrc: Start using pytest instead of unittest
* setup: Download the missing codestreams before checking for files/mods
* setup: Move file-funcs, repo and info to the check phase
* setup: Mark some functions as static
* ibs: Create a symlink from data/ARCH/lib to data/ARCH/usr/lib
* setup: Show info about the affected architectures
* ksrc: Improve method of detecting patched kernels
* README: Add information about configuration file
* man: Add information about the default files/dirs
* ibs.py: Show information when prepare-tests is called
* ccp: Add one more symbol to the blacklist
* config: Fix missing_codestream check
* Add support to extract code from current running kernel
* config: Introduce self.host to in order to create lp on the running system
* klp-build: Remove the kdir argument
* templ: Fix {mod}_funcs struct nameing for modules that start with numbers
* setup: 15.6-RT uses the SLERT repo
-------------------------------------------------------------------
Wed Sep 04 14:30:27 UTC 2024 - mvetter@suse.com
- Update to version 0~20240902.c95cc9e:
* patches: Update klp-convert patches
* config: Decompress lzma (xz) files
* setup: Remove the -default from uname
* Remove test.sh: clearly tracking it here was a mistake...
* test.sh: Add test for CVE-2024-35817
* Add test for CVE-2024-36921
* ibs: Use osc-tiny API to push files to IBS
* test.sh: Update expected output LoC
* templ: Fix problem with ## macro concatenation macro in C
* Revert "templ: Skip Mako usage for C files"
* patches: Remove compiletime_error kernel patch
* templ: Skip Mako usage for C files
* test.sh: Add CVE-2024-0775
* ksrc: Don't ignore patches without ".patch" suffix
* test.sh: Adjust LoC of bpf_link_free
-------------------------------------------------------------------
Thu Aug 15 04:24:32 UTC 2024 - mvetter@suse.com
- Update to version 0~20240814.5dae2ec:
* setup: More information being logged
* ibs: Optimize extraction of vmlinux and modules
* config.py: Show error code when quilt fails
-------------------------------------------------------------------
Wed Aug 14 06:12:41 UTC 2024 - mvetter@suse.com
- Update to version 0~20240812.ad9f0e0:
* setup: Ignore cs_is_affected if CVE is empty
* Rename and fix user_path config names for kgraft-patches
* ibs: Move kgraft_path to where it's being used
* ibs: Do not remove extracted vmlinux and modules
* config: Support 'kgraft-patches' in config file
* config: Support 'patches-tests' in config file
* klp-ccp: Remove KLP_CCP_PATH env variable
* config: Support 'ccp-pol-scripts' in config file
* config: Support 'kernel-source' in config file
* config: Support per-user configuration file
* config.py: Check for supported attribute on modinfo by using startswith
* setup: Skip codestreams missing backports (not affected)
* ksrc: Add 15.6 RT to get the backports
* config: Skip symbols with empty names
* ibs: Fix typo when validating the livepatch
* ksrc: Check if all branch patches are present to mark as not affected
* ksrc: Simplify getting patched codestreams
* test.sh: Add new test for CVE-2024-40909
* Add zstd support
* Use pyelftools to parse .modinfo
* config: Add support to read gzipped files, like vmlinux
* Replace all invocations of nm binary with pyelftools
* Use PyElfTools in order to read object symbols
* test.sh: Adjust LoC count with recent clang-extract changes
-------------------------------------------------------------------
Thu Aug 01 05:39:12 UTC 2024 - mvetter@suse.com
- Update to version 0~20240731.edfe0bf:
* Add new test for CVE-2021-47402
* test.sh: Simplify call to setup_extract_count
* klpbuild: Copy the .config from the right place
* templ: Add spaces between KLP_RELOC_SYMBOL macro arguments
-------------------------------------------------------------------
Mon Jul 29 07:09:22 UTC 2024 - mvetter@suse.com
- Update to version 0~20240725.cc0513f:
* ksrc.py: Check CVE passed in get-patches
* extractor: lock the same src directory on which architecture the script is running on
* Add support for tests files in directories
* extractor: Add filelocking support for srcdir
-------------------------------------------------------------------
Wed Jul 24 13:13:20 UTC 2024 - mvetter@suse.com
- Update to version 0~20240722.3c379d8:
* tests: Fixed one issue on clang-extract
* tests: Add test.sh to check for known working extraction for CE
* templ: Fix case of IBT + upstream kernel module with dashes on its name
* run-kgr-test.sh: Check in more directories for VMs
* templ.py: Return empty string when IBT and CE
* extractor: Enable upstream extraction to apply patches
* templ.py: Replace dash by underscore when using fname on functions
* ce: Use -DCE_LATE_EXTERNALIZE by default
* ibs.py: Stop downloading kernel-default-extra
* ccp: Drop workarounds for different codestreams
* config: Fix get_sdir to always point to x86_64
* templ: Add IBT support for ccp
* extractor: Propagate needs_ibt to extractor backends
* ccp: Check KLP_CONVERT on fun_exts
* Change get_cs_boot_file to target odir instead of arch/boot dir
* templ: Add 15.6 codestream to fixes header
* extractor: Use IBT for 15.6 onwards
* setup: Remove s390x check since all codestreams are now supported
* setup: Show kernel version when file is not found
* extractor: Do not catch a specific error when running ccp/ce
* ccp: Remove more options that ccp doesn't understand
* extractor: Adapt the regex for SLE 15-SP6 cases
* extractor: Show more info when we can't get the command line
-------------------------------------------------------------------
Tue Jul 02 07:46:00 UTC 2024 - mvetter@suse.com
- Update to version 0~20240701.f72b4a1:
* config: Show kernel version when configuration entries diverge
* Add man page for klp-build
* ksrc: Remove MIME-Version string from upstream commit subject
- Install man page
-------------------------------------------------------------------
Fri Jun 28 05:18:20 UTC 2024 - mvetter@suse.com
- Update to version 0~20240627.48ed241:
* ksrc.py: Add --tags to git fetch
* Adding support to SLE15-SP6
* config.py: Dump kernel version and arch when a module is not supported
* templ.py: Fix Kbuild file generation
-------------------------------------------------------------------
Mon Jun 24 10:13:45 UTC 2024 - mvetter@suse.com
- Update to version 0~20240622.445505a:
* config: Add architecture of the duplicated symbol warning
* config.py: Show kernle version when a duplicate symbol was found
-------------------------------------------------------------------
Mon Jun 24 10:07:21 UTC 2024 - Michael Vetter <mvetter@suse.com>
- Install run-kgr-test.sh to bindir
- Run fdupes
-------------------------------------------------------------------
Thu Jun 20 20:40:30 UTC 2024 - Michael Vetter <mvetter@suse.com>
- Initial package of klp-build git 9aa77a for openSUSE