List<GithubTagInfo> (@NotNull Collection<? extends GithubTagInfo> tags) { List<GithubTagInfo> sortedTags = new ArrayList<>(tags); sortedTags.sort((tag1, tag2) -> { GithubTagInfo.Version v1 = tag1.getVersion(); GithubTagInfo.Version v2 = tag2.getVersion(); return v2.compareTo(v1); }); for (GithubTagInfo tag : sortedTags) { tag.setRecentTag(false); } if (!sortedTags.isEmpty()) { sortedTags.get(0).setRecentTag(true); } return sortedTags; }