You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bigtop.apache.org by "Masatake Iwasaki (Jira)" <ji...@apache.org> on 2025/07/11 02:48:00 UTC
[jira] [Resolved] (BIGTOP-4357) apply diff patches files sequence error using text sequence not number seq
[ https://issues.apache.org/jira/browse/BIGTOP-4357?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Masatake Iwasaki resolved BIGTOP-4357.
--------------------------------------
Fix Version/s: 3.5.0
Assignee: kongxianghe
Resolution: Fixed
> apply diff patches files sequence error using text sequence not number seq
> --------------------------------------------------------------------------
>
> Key: BIGTOP-4357
> URL: https://issues.apache.org/jira/browse/BIGTOP-4357
> Project: Bigtop
> Issue Type: Bug
> Reporter: kongxianghe
> Assignee: kongxianghe
> Priority: Major
> Fix For: 3.5.0
>
> Time Spent: 1h
> Remaining Estimate: 0h
>
> package.gradle
> {code:java}
> + def patches = new File("${PKG_BUILD_DIR}/rpm/SOURCES").list(\{ d, f -> f ==~ /patch.*diff/}).sort()
> + specFile.eachLine { line ->
> + if (line.startsWith("#BIGTOP_PATCH_FILES")) {
> {code}
>
> maybe cause patch apply orders error!!
> patch1.diff
> patch10.diff
> patch11.diff
> patch2.diff
>
> should be numberic sort
> {code:java}
> def patches = new File("${PKG_BUILD_DIR}/rpm/SOURCES").list({ d, f -> f ==~ /patch.*diff/})
> def fileListWithNumbers = patches.collect { fileName ->
> def matcher = (fileName =~ /patch(\d+)-.*/)
> if (matcher.find()) {
> return [fileName: fileName, number: matcher.group(1).toInteger()]
> } else {
> return [fileName: fileName, number: 0]
> }
> }
> def sortedPatches = fileListWithNumbers.sort { a, b ->
> a.number <=> b.number
> }.collect { it.fileName }
> patches = sortedPatches
> // no changed.
> {code}
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)