in log4j-changelog/src/main/java/org/apache/logging/log4j/changelog/ChangelogFiles.java [37:53]
public static Set<Integer> unreleasedDirectoryVersionMajors(final Path changelogDirectory) {
return FileUtils.findAdjacentFiles(changelogDirectory, false, paths -> paths
.flatMap(path -> {
// Only select directories matching with the `^\.(\d+)\.x\.x$` pattern
final Pattern versionPattern = Pattern.compile("^\\.(\\d+)\\.x\\.x$");
final Matcher versionMatcher = versionPattern.matcher(path.getFileName().toString());
if (!versionMatcher.matches()) {
return Stream.empty();
}
final String versionMajorString = versionMatcher.group(1);
final int versionMajor = Integer.parseInt(versionMajorString);
return Stream.of(versionMajor);
})
.collect(Collectors.toSet()));
}