From d16b458d83a3ebfd0bc71cf893d6916f7e9e1759 Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Mon, 10 Aug 2026 07:24:54 +0000 Subject: [PATCH 01/13] Update quality status documents --- .../functional-labels.svg | 54 +-- .../quality-status-images/issue-age.svg | 22 +- .../issue-assignment.svg | 10 +- .../quality-status-images/issue-types.svg | 17 +- .../operating-systems.svg | 22 +- .../quality-status/quality-status-linux.adoc | 16 +- .../quality-status/quality-status-macos.adoc | 19 +- .../quality-status-windows.adoc | 43 +-- .../quality-status/quality-status.adoc | 327 ++++++++++-------- 9 files changed, 284 insertions(+), 246 deletions(-) diff --git a/documentation/quality-status/quality-status-images/functional-labels.svg b/documentation/quality-status/quality-status-images/functional-labels.svg index 21e573c256..f6162d1be2 100644 --- a/documentation/quality-status/quality-status-images/functional-labels.svg +++ b/documentation/quality-status/quality-status-images/functional-labels.svg @@ -20,44 +20,44 @@ Most common functional labels Most common functional labels -install +GUI -20 -GUI +35 +install - -18 -settings + +19 +commandlet - -16 -internal + +16 +settings - -12 -commandlet + +12 +internal - -10 + +11 urls - -9 + +9 software - -8 -update + +8 +uninstall - -7 -docker + +8 +git - -6 -git + +7 +vscode - -6 + +7 diff --git a/documentation/quality-status/quality-status-images/issue-age.svg b/documentation/quality-status/quality-status-images/issue-age.svg index bac5c400a0..a198a68dca 100644 --- a/documentation/quality-status/quality-status-images/issue-age.svg +++ b/documentation/quality-status/quality-status-images/issue-age.svg @@ -20,22 +20,22 @@ Issue age Issue age - + -0-10 days: 13 (7.8%) - +0-10 days: 31 (17.7%) + -11-30 days: 11 (6.6%) - +11-30 days: 22 (12.6%) + -31-60 days: 18 (10.8%) - +31-60 days: 16 (9.1%) + -61-90 days: 5 (3.0%) - +61-90 days: 13 (7.4%) + -90+ days: 119 (71.7%) +90+ days: 93 (53.1%) -166 +175 total diff --git a/documentation/quality-status/quality-status-images/issue-assignment.svg b/documentation/quality-status/quality-status-images/issue-assignment.svg index e1514f55ba..4b703c5318 100644 --- a/documentation/quality-status/quality-status-images/issue-assignment.svg +++ b/documentation/quality-status/quality-status-images/issue-assignment.svg @@ -20,13 +20,13 @@ Assigned vs unassigned issues Assigned vs unassigned issues - + -Assigned: 66 (39.8%) - +Assigned: 99 (56.6%) + -Unassigned: 100 (60.2%) +Unassigned: 76 (43.4%) -166 +175 total diff --git a/documentation/quality-status/quality-status-images/issue-types.svg b/documentation/quality-status/quality-status-images/issue-types.svg index afb32ce09b..1d7ab4db8a 100644 --- a/documentation/quality-status/quality-status-images/issue-types.svg +++ b/documentation/quality-status/quality-status-images/issue-types.svg @@ -20,16 +20,19 @@ Issue type distribution Issue type distribution - + -Bugs: 51 (30.7%) - +Bugs: 44 (25.1%) + -Tasks: 30 (18.1%) - +Tasks: 40 (22.9%) + -Features: 85 (51.2%) +Features: 89 (50.9%) + + +No Type: 2 (1.1%) -166 +175 total diff --git a/documentation/quality-status/quality-status-images/operating-systems.svg b/documentation/quality-status/quality-status-images/operating-systems.svg index d6d7ce64f9..f490cc01cd 100644 --- a/documentation/quality-status/quality-status-images/operating-systems.svg +++ b/documentation/quality-status/quality-status-images/operating-systems.svg @@ -27,17 +27,17 @@ Cross-platform Windows - - -148 + + +154 Linux - - - -141 + + + +154 macOS - - - -146 + + + +158 diff --git a/documentation/quality-status/quality-status-linux.adoc b/documentation/quality-status/quality-status-linux.adoc index 76b80d4a1a..8f0ddf21e2 100644 --- a/documentation/quality-status/quality-status-linux.adoc +++ b/documentation/quality-status/quality-status-linux.adoc @@ -9,20 +9,28 @@ Automatically generated open issue overview for Linux. link:quality-status.adoc[Back to overview] -*Total Issues:* 141 +*Total Issues:* 154 -* OS-specific: 6 +* OS-specific: 8 * Multi-OS: 1 -* Cross-platform: 134 +* Cross-platform: 145 == Linux Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary -2+^| *11-30 days* +2+^| *0-10 days* + +| link:https://github.com/devonfw/IDEasy/issues/2271[#2271] +| ide install pgadmin fails on Ubuntu Linux + +| link:https://github.com/devonfw/IDEasy/issues/2250[#2250] +| Derive uninstall commands from package manager configuration (Linux) + +2+^| *61-90 days* | link:https://github.com/devonfw/IDEasy/issues/2007[#2007] | IDEasy can not install docker on arch linux diff --git a/documentation/quality-status/quality-status-macos.adoc b/documentation/quality-status/quality-status-macos.adoc index 857216bc63..56cb4ad8da 100644 --- a/documentation/quality-status/quality-status-macos.adoc +++ b/documentation/quality-status/quality-status-macos.adoc @@ -9,19 +9,29 @@ Automatically generated open issue overview for macOS. link:quality-status.adoc[Back to overview] -*Total Issues:* 146 +*Total Issues:* 158 -* OS-specific: 11 +* OS-specific: 12 * Multi-OS: 1 -* Cross-platform: 134 +* Cross-platform: 145 == macOS Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary +2+^| *0-10 days* + +| link:https://github.com/devonfw/IDEasy/issues/2252[#2252] +| Provide uninstall support for globally installed tools (macOS) + +2+^| *11-30 days* + +| link:https://github.com/devonfw/IDEasy/issues/2206[#2206] +| IDEasy title not properly shown on macOS + 2+^| *90+ days* | link:https://github.com/devonfw/IDEasy/issues/1512[#1512] @@ -42,9 +52,6 @@ link:quality-status.adoc[Back to overview] | link:https://github.com/devonfw/IDEasy/issues/868[#868] | Eclipse does not work on Mac x64 -| link:https://github.com/devonfw/IDEasy/issues/865[#865] -| Az is not working on Mac x64 - | link:https://github.com/devonfw/IDEasy/issues/864[#864] | AWS is not working on Mac x64 diff --git a/documentation/quality-status/quality-status-windows.adoc b/documentation/quality-status/quality-status-windows.adoc index 3e496bbda7..83ce5213ba 100644 --- a/documentation/quality-status/quality-status-windows.adoc +++ b/documentation/quality-status/quality-status-windows.adoc @@ -9,57 +9,44 @@ Automatically generated open issue overview for Windows. link:quality-status.adoc[Back to overview] -*Total Issues:* 148 +*Total Issues:* 154 -* OS-specific: 14 +* OS-specific: 9 * Multi-OS: 0 -* Cross-platform: 134 +* Cross-platform: 145 == Windows Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary +2+^| *0-10 days* + +| link:https://github.com/devonfw/IDEasy/issues/2251[#2251] +| Provide generic uninstall support for globally installed tools (Windows) + 2+^| *11-30 days* -| link:https://github.com/devonfw/IDEasy/issues/1982[#1982] -| relative option for link not honored +| link:https://github.com/devonfw/IDEasy/issues/2226[#2226] +| Show IDEasy project, workspace and repository in the Git Bash / Windows Termina… + +2+^| *61-90 days* | link:https://github.com/devonfw/IDEasy/issues/1981[#1981] | ide update fails on windows@arm64 -2+^| *31-60 days* +2+^| *90+ days* | link:https://github.com/devonfw/IDEasy/issues/1873[#1873] | Implement generic get-edition implementation for global tools under windows -| link:https://github.com/devonfw/IDEasy/issues/1872[#1872] -| Implement generic uninstall implementation for global tools under windows - -| link:https://github.com/devonfw/IDEasy/issues/1870[#1870] -| Implement generic get-version implementation for global tools under windows - -2+^| *90+ days* - -| link:https://github.com/devonfw/IDEasy/issues/1579[#1579] -| IDEasy uninstall after a failed MSI installation does not work - -| link:https://github.com/devonfw/IDEasy/issues/1558[#1558] -| Add install.log path to msi installer window - | link:https://github.com/devonfw/IDEasy/issues/1548[#1548] | Windows file locking error on update with plugins -| link:https://github.com/devonfw/IDEasy/issues/1232[#1232] -| MSI Repair broken - -| link:https://github.com/devonfw/IDEasy/issues/1227[#1227] -| Guide windows user after installation - -| link:https://github.com/devonfw/IDEasy/issues/1056[#1056] -| Add Conversion of LICENSE.adoc to RTF Format +| link:https://github.com/devonfw/IDEasy/issues/1102[#1102] +| IDEasy MSI installer not working (unsigned) | link:https://github.com/devonfw/IDEasy/issues/599[#599] | Add release for windows-arm architecture diff --git a/documentation/quality-status/quality-status.adoc b/documentation/quality-status/quality-status.adoc index 00e70f0de0..27f82267c5 100644 --- a/documentation/quality-status/quality-status.adoc +++ b/documentation/quality-status/quality-status.adoc @@ -20,7 +20,7 @@ image::quality-status-images/issue-assignment.svg[Pie chart: assigned vs unassig image::quality-status-images/issue-types.svg[Pie chart: issue type distribution,width=100%] -_Generated: 2026-06-19 12:08 UTC_ +_Generated: 2026-08-10 07:24 UTC_ == Operating System Status Files @@ -29,7 +29,7 @@ Issues are assigned to operating systems based on their labels: `windows`, `linux`, or `macOS`. Issues without an operating system label are treated as cross-platform. -*A total of 134 cross-platform issues* are documented centrally in this document and are therefore not repeated in the operating system specific files. +*A total of 145 cross-platform issues* are documented centrally in this document and are therefore not repeated in the operating system specific files. The detailed tool status is split into one generated file per operating system. @@ -58,11 +58,183 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | Issue | Summary 2+^a| [[cross-platform-0-10-days]] *0-10 days* -| link:https://github.com/devonfw/IDEasy/issues/2052[#2052] -| Split issue statistics into separate assigned and unassigned pie charts +| link:https://github.com/devonfw/IDEasy/issues/2296[#2296] +| Improve support to get installed version and edition -| link:https://github.com/devonfw/IDEasy/issues/2051[#2051] -| Release workflow failing publishing release metadata on github +| link:https://github.com/devonfw/IDEasy/issues/2293[#2293] +| Rework spyder as IdeToolCommandlet + +| link:https://github.com/devonfw/IDEasy/issues/2292[#2292] +| Questions appear twice + +| link:https://github.com/devonfw/IDEasy/issues/2286[#2286] +| SystemPath.findBinary ignores extraPathEntries, so withPathEntry has no effect… + +| link:https://github.com/devonfw/IDEasy/issues/2284[#2284] +| Restore .ide.software.version from actual installed Python version + +| link:https://github.com/devonfw/IDEasy/issues/2283[#2283] +| GUI blocks commandlets when license agreement is missing + +| link:https://github.com/devonfw/IDEasy/issues/2281[#2281] +| Allow removing plugins from the IDEasy GUI + +| link:https://github.com/devonfw/IDEasy/issues/2280[#2280] +| Maven commandlet runs from workspace root instead of project directory + +| link:https://github.com/devonfw/IDEasy/issues/2279[#2279] +| Desktop shortcut for the GUI does not work: gui commandlet requires IDE_HOME + +| link:https://github.com/devonfw/IDEasy/issues/2278[#2278] +| Restructure main-view.fxml into seperate layout files + +| link:https://github.com/devonfw/IDEasy/issues/2277[#2277] +| Research task: Check if JavaFX Platform.runLater() method correctly logs thrown… + +| link:https://github.com/devonfw/IDEasy/issues/2276[#2276] +| Create documentation how to find story from Backlog + +| link:https://github.com/devonfw/IDEasy/issues/2275[#2275] +| Auto-install git if not already installed + +| link:https://github.com/devonfw/IDEasy/issues/2274[#2274] +| Create GitUrlUpdater + +| link:https://github.com/devonfw/IDEasy/issues/2273[#2273] +| Integrate git as global tool + +| link:https://github.com/devonfw/IDEasy/issues/2269[#2269] +| Allow choice of installation location in macOS PKG Installer + +| link:https://github.com/devonfw/IDEasy/issues/2268[#2268] +| Allow text selection in console + +| link:https://github.com/devonfw/IDEasy/issues/2267[#2267] +| Allow multi selection in console list view (or for ListViews in general) + +| link:https://github.com/devonfw/IDEasy/issues/2265[#2265] +| MainView status progress bar not displaying correctly when indeterminate + +| link:https://github.com/devonfw/IDEasy/issues/2264[#2264] +| ide «tool» does not set the environment variables of the other installed tools… + +| link:https://github.com/devonfw/IDEasy/issues/2257[#2257] +| Refactor CI/CD Workflows and Improve Release Documentation + +| link:https://github.com/devonfw/IDEasy/issues/2256[#2256] +| Integrate SonarCloud analysis into GitHub workflows + +| link:https://github.com/devonfw/IDEasy/issues/2255[#2255] +| Refactor build logic from GitHub Workflows into dedicated shell scripts + +| link:https://github.com/devonfw/IDEasy/issues/2253[#2253] +| Improve/fix documentation of structure and logs + +| link:https://github.com/devonfw/IDEasy/issues/2248[#2248] +| Change TaskManager design. + +| link:https://github.com/devonfw/IDEasy/issues/2241[#2241] +| Version selection support + +| link:https://github.com/devonfw/IDEasy/issues/2240[#2240] +| Support file and folder selection + +2+^a| [[cross-platform-11-30-days]] *11-30 days* + +| link:https://github.com/devonfw/IDEasy/issues/2236[#2236] +| Preserve Git Bash Working Directory When Launching VS Code via ide vscode + +| link:https://github.com/devonfw/IDEasy/issues/2225[#2225] +| Define installation ownership for Homebrew: brew and 'ideasy install' produce a… + +| link:https://github.com/devonfw/IDEasy/issues/2219[#2219] +| Add unpack commandlet + +| link:https://github.com/devonfw/IDEasy/issues/2218[#2218] +| Add missing 3rd party libs to LICENSE + +| link:https://github.com/devonfw/IDEasy/issues/2214[#2214] +| Overhaul language selection logic + +| link:https://github.com/devonfw/IDEasy/issues/2200[#2200] +| Add repository linting support + +| link:https://github.com/devonfw/IDEasy/issues/2197[#2197] +| Python integration broken + +| link:https://github.com/devonfw/IDEasy/issues/2193[#2193] +| Support for conditional auto-completion + +| link:https://github.com/devonfw/IDEasy/issues/2191[#2191] +| Improve auto-completion + +| link:https://github.com/devonfw/IDEasy/issues/2190[#2190] +| IDEasy destroys my python installation + +| link:https://github.com/devonfw/IDEasy/issues/2186[#2186] +| Create ObsidianUrlUpdater + +| link:https://github.com/devonfw/IDEasy/issues/2185[#2185] +| Explore JPackage and evaluate + +| link:https://github.com/devonfw/IDEasy/issues/2183[#2183] +| Dynamically generate form fields for selected commandlet + +| link:https://github.com/devonfw/IDEasy/issues/2182[#2182] +| Basic structure for Commandlet view + +| link:https://github.com/devonfw/IDEasy/issues/2180[#2180] +| Add *_PLUGINS_EXTRA variable to install extra IDE plugins per user + +| link:https://github.com/devonfw/IDEasy/issues/2178[#2178] +| Make ReleaseCommandlet independent of specific build commandlet + +| link:https://github.com/devonfw/IDEasy/issues/2174[#2174] +| VSCode: store metadata under $IDE_HOME/.ide/vscode/ + migration + +| link:https://github.com/devonfw/IDEasy/issues/2173[#2173] +| JetBrains: store IntelliJ/PyCharm/Android Studio metadata under $IDE_HOME/.ide… + +| link:https://github.com/devonfw/IDEasy/issues/2168[#2168] +| repository remote feature + +| link:https://github.com/devonfw/IDEasy/issues/2165[#2165] +| prompt user for template variables at apply time + +2+^a| [[cross-platform-31-60-days]] *31-60 days* + +| link:https://github.com/devonfw/IDEasy/issues/2142[#2142] +| Move IDE-specific metada (.idea, .vscode) out of workspace + +| link:https://github.com/devonfw/IDEasy/issues/2124[#2124] +| Workflow "Update Quality Status Documents" Fails + +| link:https://github.com/devonfw/IDEasy/issues/2111[#2111] +| Add user documentation for GUI + +| link:https://github.com/devonfw/IDEasy/issues/2110[#2110] +| Add documentation for contributing to UI components + +| link:https://github.com/devonfw/IDEasy/issues/2109[#2109] +| Add documentation on how to modify the FIGMA board properly + +| link:https://github.com/devonfw/IDEasy/issues/2108[#2108] +| Modify PR Template for GUI contributions. + +| link:https://github.com/devonfw/IDEasy/issues/2107[#2107] +| Add documentation for contributing to the GUI + +| link:https://github.com/devonfw/IDEasy/issues/2103[#2103] +| Add obsidian software/commandlet + +| link:https://github.com/devonfw/IDEasy/issues/2097[#2097] +| Configure IDE Plugins in Tool Configuration Tree in the GUI + +| link:https://github.com/devonfw/IDEasy/issues/2096[#2096] +| Add a commandlet execution user interface + +| link:https://github.com/devonfw/IDEasy/issues/2058[#2058] +| VSCode authentication not working with IDEasy | link:https://github.com/devonfw/IDEasy/issues/2050[#2050] | Evaluate shim/launcher-based runtime activation for Node/npm in IDEasy (follow-… @@ -70,79 +242,35 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/2045[#2045] | Add tool selection and version/edition configuration via GUI -| link:https://github.com/devonfw/IDEasy/issues/2044[#2044] -| mvn -- does not trigger completion - | link:https://github.com/devonfw/IDEasy/issues/2042[#2042] | -q parameter supresses ask for CVE choices | link:https://github.com/devonfw/IDEasy/issues/2040[#2040] | Workspace selection buggy -| link:https://github.com/devonfw/IDEasy/issues/2039[#2039] -| IDE logo not shown in mac task bar - -| link:https://github.com/devonfw/IDEasy/issues/2033[#2033] -| Improve documentation of GUI code. - -| link:https://github.com/devonfw/IDEasy/issues/2026[#2026] -| Create UvRepository and UvBasedCommandlet - -| link:https://github.com/devonfw/IDEasy/issues/2025[#2025] -| Improve JavaDoc of IdeContext - | link:https://github.com/devonfw/IDEasy/issues/2021[#2021] | Remove status.json from ide-urls after migration -| link:https://github.com/devonfw/IDEasy/issues/2013[#2013] -| Warning: "Unsupported JavaFX configuration: classes were loaded from 'unnamed m… - -2+^a| [[cross-platform-11-30-days]] *11-30 days* - -| link:https://github.com/devonfw/IDEasy/issues/2000[#2000] -| Create script for local end-to-end testing +2+^a| [[cross-platform-61-90-days]] *61-90 days* | link:https://github.com/devonfw/IDEasy/issues/1996[#1996] | Revisit design for tools that do not install to software repository -| link:https://github.com/devonfw/IDEasy/issues/1992[#1992] -| Improve GitContextMock - -| link:https://github.com/devonfw/IDEasy/issues/1990[#1990] -| Merge of Vscode settings.json file fails - | link:https://github.com/devonfw/IDEasy/issues/1987[#1987] | Gui commandlet broken for snapshots -| link:https://github.com/devonfw/IDEasy/issues/1976[#1976] -| Extend ToolCommandlet installation logic to allow software-repository-only inst… - | link:https://github.com/devonfw/IDEasy/issues/1975[#1975] | Improve state management implementation in the GUI | link:https://github.com/devonfw/IDEasy/issues/1965[#1965] | Improve dependent installations -2+^a| [[cross-platform-31-60-days]] *31-60 days* - -| link:https://github.com/devonfw/IDEasy/issues/1953[#1953] -| Implement Base Functionality of Cleanup Commandlet - | link:https://github.com/devonfw/IDEasy/issues/1943[#1943] | Create Ruby Commandlet -| link:https://github.com/devonfw/IDEasy/issues/1942[#1942] -| Create a RubyUrlUpdater - | link:https://github.com/devonfw/IDEasy/issues/1938[#1938] | GUI not launchable outside of project context -| link:https://github.com/devonfw/IDEasy/issues/1937[#1937] -| Ability to link content from settings into workspace(s) - -| link:https://github.com/devonfw/IDEasy/issues/1936[#1936] -| Improve localization of the GUI - | link:https://github.com/devonfw/IDEasy/issues/1933[#1933] | Implement a console window in the GUI @@ -158,23 +286,11 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1927[#1927] | IDEasy virtual instance for AI agent -| link:https://github.com/devonfw/IDEasy/issues/1917[#1917] -| Allow the creation of a desktop shortcut for the GUI - -| link:https://github.com/devonfw/IDEasy/issues/1909[#1909] -| Support for maven daemon (mvnd) - -| link:https://github.com/devonfw/IDEasy/issues/1902[#1902] -| Create InsoUrlUpdater +2+^a| [[cross-platform-90plus-days]] *90+ days* | link:https://github.com/devonfw/IDEasy/issues/1868[#1868] | Revision of the functionality of global tool commandlets -2+^a| [[cross-platform-61-90-days]] *61-90 days* - -| link:https://github.com/devonfw/IDEasy/issues/1814[#1814] -| IDEasy still reports updates for settings are available after any number of inv… - | link:https://github.com/devonfw/IDEasy/issues/1808[#1808] | icd is not navigating into single available workspace on icd -p project @@ -184,35 +300,18 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1785[#1785] | Implemenent confirmation modals using JavaFX -| link:https://github.com/devonfw/IDEasy/issues/1784[#1784] -| Implement JavaFX based progress bars for the GUI - -2+^a| [[cross-platform-90plus-days]] *90+ days* - | link:https://github.com/devonfw/IDEasy/issues/1746[#1746] | ide shell broken | link:https://github.com/devonfw/IDEasy/issues/1721[#1721] | Integrate ruby -| link:https://github.com/devonfw/IDEasy/issues/1720[#1720] -| Integrate SoapUI - | link:https://github.com/devonfw/IDEasy/issues/1695[#1695] | Clone settings to temporary directory, analyse, and then move -| link:https://github.com/devonfw/IDEasy/issues/1694[#1694] -| Fix behavior when providing a wrong git URL - -| link:https://github.com/devonfw/IDEasy/issues/1689[#1689] -| Fix user commnication when switching the Java version from the default to the r… - | link:https://github.com/devonfw/IDEasy/issues/1676[#1676] | Import extra SDKs automatically into IDE -| link:https://github.com/devonfw/IDEasy/issues/1659[#1659] -| Global tools run tool while installation is running in background - | link:https://github.com/devonfw/IDEasy/issues/1651[#1651] | Move status.json files out of ide-urls to own repo @@ -222,45 +321,27 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1628[#1628] | Support for OS specific CVEs -| link:https://github.com/devonfw/IDEasy/issues/1594[#1594] -| implement ReleaseCommandlet - | link:https://github.com/devonfw/IDEasy/issues/1580[#1580] | Implement cleanup | link:https://github.com/devonfw/IDEasy/issues/1525[#1525] | lombok not correctly installed in eclipse -| link:https://github.com/devonfw/IDEasy/issues/1517[#1517] -| IDEasy setup does not install Windows Terminal - -| link:https://github.com/devonfw/IDEasy/issues/1501[#1501] -| Starting intellij leads to error popup - | link:https://github.com/devonfw/IDEasy/issues/1493[#1493] | Analyze Scoop Windows CLI installer | link:https://github.com/devonfw/IDEasy/issues/1453[#1453] | Allow co-authored commits in cla assistant -| link:https://github.com/devonfw/IDEasy/issues/1422[#1422] -| Refactor tests to remove windowsJunctionsAreUsed - | link:https://github.com/devonfw/IDEasy/issues/1333[#1333] | Step 'Install or update software' already ended with false and now ended again… -| link:https://github.com/devonfw/IDEasy/issues/1311[#1311] -| improve IDE_MIN_VERSION support - | link:https://github.com/devonfw/IDEasy/issues/1296[#1296] | Implement IdeContext properly for Dashboard | link:https://github.com/devonfw/IDEasy/issues/1295[#1295] | IDEasy Dashboard Epic -| link:https://github.com/devonfw/IDEasy/issues/1263[#1263] -| Fix android-studio workspace templates - | link:https://github.com/devonfw/IDEasy/issues/1225[#1225] | Create new IDEasy introduction videos @@ -276,15 +357,9 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1209[#1209] | migration version message is confusing -| link:https://github.com/devonfw/IDEasy/issues/1206[#1206] -| java.util.zip.ZipException when opening Android Studio archives from versions 2… - | link:https://github.com/devonfw/IDEasy/issues/1181[#1181] | Improve url updater for docker desktop to pull all necessary versions -| link:https://github.com/devonfw/IDEasy/issues/1178[#1178] -| Revisit VersionPhase detection - | link:https://github.com/devonfw/IDEasy/issues/1167[#1167] | Automatic project import for VSCode @@ -306,21 +381,12 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1134[#1134] | IDEasy autocompletion gets stuck if license agreement file was not found -| link:https://github.com/devonfw/IDEasy/issues/1124[#1124] -| Ensure latest version of Python is installed - -| link:https://github.com/devonfw/IDEasy/issues/1063[#1063] -| User specific configurations are not working as described - | link:https://github.com/devonfw/IDEasy/issues/1059[#1059] | Improve and fix dependency mechanism | link:https://github.com/devonfw/IDEasy/issues/1054[#1054] | Incorrect interpretation of trailling and leading spaces in version range parsi… -| link:https://github.com/devonfw/IDEasy/issues/1041[#1041] -| native image has globbing active - | link:https://github.com/devonfw/IDEasy/issues/1031[#1031] | Integration of OpenRewrite @@ -342,9 +408,6 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/930[#930] | Refactor `JsonPrettyPrinter` to be usable in CustomToolJson -| link:https://github.com/devonfw/IDEasy/issues/897[#897] -| HTTP Proxy with TLS termination causing errors - | link:https://github.com/devonfw/IDEasy/issues/892[#892] | Improve GitContextTest tests to actually test something @@ -357,12 +420,6 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/840[#840] | git fetch does not work with multiple remotes -| link:https://github.com/devonfw/IDEasy/issues/825[#825] -| Consider adding GC Log Analyzer - -| link:https://github.com/devonfw/IDEasy/issues/822[#822] -| Handle long CWD paths in shell prompt - | link:https://github.com/devonfw/IDEasy/issues/821[#821] | Allow User to remove "ide " prefix in ide shell for non-IDEasy command @@ -378,57 +435,33 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/780[#780] | Create IDEasy service -| link:https://github.com/devonfw/IDEasy/issues/772[#772] -| CVE-2023-7272 in org.eclipse.parsson 1.1.7 - | link:https://github.com/devonfw/IDEasy/issues/771[#771] | Check URL Updater issues -| link:https://github.com/devonfw/IDEasy/issues/768[#768] -| Improve IntelliJ configuration (annotation processing, auto-import, maven argLi… - -| link:https://github.com/devonfw/IDEasy/issues/756[#756] -| Implement CustomToolRepositoryTest - | link:https://github.com/devonfw/IDEasy/issues/741[#741] | Add a warning message for legacy devonfw-ide settings users -| link:https://github.com/devonfw/IDEasy/issues/735[#735] -| Enhance workspace configuration with generic overlay from settings/workspace - | link:https://github.com/devonfw/IDEasy/issues/726[#726] | Replace hardcoded dependencies with dependencies.json in ide-urls | link:https://github.com/devonfw/IDEasy/issues/714[#714] | Improve UX for settings repository -| link:https://github.com/devonfw/IDEasy/issues/701[#701] -| Fix Dotnet tests on our CI - | link:https://github.com/devonfw/IDEasy/issues/690[#690] | UpdateUrls workflow timeout not working -| link:https://github.com/devonfw/IDEasy/issues/639[#639] -| Improve step success logic for sub steps - | link:https://github.com/devonfw/IDEasy/issues/629[#629] | Recycle devonfw-ide documentation | link:https://github.com/devonfw/IDEasy/issues/607[#607] | Test for environment variables of process contexts -| link:https://github.com/devonfw/IDEasy/issues/516[#516] -| IdeToolCommandlet: add option and support for import of project(s) - | link:https://github.com/devonfw/IDEasy/issues/492[#492] | Use Maven dependency cache to optimize workflow running times | link:https://github.com/devonfw/IDEasy/issues/449[#449] | Consider integration of continue GenAI coding assistant -| link:https://github.com/devonfw/IDEasy/issues/412[#412] -| consider integration of lama - | link:https://github.com/devonfw/IDEasy/issues/399[#399] | Handle uninstall of global tool commandlets From 7a97ffcd22c5c3f9d5a5c8ffef9203e8ad718a6c Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Thu, 6 Aug 2026 14:06:23 +0200 Subject: [PATCH 02/13] #2186: - Add Obsidian URL updater, test and release mock data added Obsidian url updater to updateManager # Conflicts: # url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java # Conflicts: # url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java --- .../url/tool/obsidian/ObsidianUrlUpdater.java | 67 ++++ .../tools/ide/url/updater/UpdateManager.java | 3 +- .../tool/obsidian/ObsidianUrlUpdaterTest.java | 74 +++++ .../ObsidianUrlUpdater/obsidian-releases.json | 288 ++++++++++++++++++ 4 files changed, 431 insertions(+), 1 deletion(-) create mode 100644 url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java create mode 100644 url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java create mode 100644 url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java new file mode 100644 index 0000000000..ac67db00b2 --- /dev/null +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java @@ -0,0 +1,67 @@ +package com.devonfw.tools.ide.url.tool.obsidian; + +import com.devonfw.tools.ide.url.model.folder.UrlVersion; +import com.devonfw.tools.ide.url.updater.GithubUrlReleaseUpdater; + +/** + * {@link GithubUrlReleaseUpdater} for Obsidian. + */ +public class ObsidianUrlUpdater extends GithubUrlReleaseUpdater { + + /** + * The Constructor. + */ + public ObsidianUrlUpdater() { + super(); + } + + /** + * Package-private constructor used for testing {@link ObsidianUrlUpdater}. + * + * @param downloadBaseUrl mock url used for download base. + * @param versionBaseUrl mock url used for version base. + */ + ObsidianUrlUpdater(String downloadBaseUrl, String versionBaseUrl) { + super(downloadBaseUrl, versionBaseUrl); + } + + @Override + public String getTool() { + return "obsidian"; + } + + @Override + protected String getGithubOrganization() { + return "obsidianmd"; + } + + @Override + protected String getGithubRepository() { + return "obsidian-releases"; + } + + @Override + protected String getVersionPrefixToRemove() { + return "v"; + } + + @Override + protected void addVersion(UrlVersion urlVersion) { + String baseUrl = createGithubReleaseDownloadUrl("v${version}", ""); + + doAddVersion(urlVersion, baseUrl + "Obsidian-${version}.exe", WINDOWS, X64); + doAddVersion(urlVersion, baseUrl + "Obsidian-${version}.dmg", MAC, X64); + doAddVersion(urlVersion, baseUrl + "obsidian_${version}_amd64.deb", LINUX, X64); + doAddVersion(urlVersion, baseUrl + "obsidian-${version}.tar.gz", LINUX, X64); + } + + @Override + public String getCpeVendor() { + return "obsidian"; + } + + @Override + public String getCpeProduct() { + return "obsidian"; + } +} diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java index b83d043f99..ff0855809a 100644 --- a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java @@ -45,6 +45,7 @@ import com.devonfw.tools.ide.url.tool.ng.NgUrlUpdater; import com.devonfw.tools.ide.url.tool.node.NodeUrlUpdater; import com.devonfw.tools.ide.url.tool.npm.NpmUrlUpdater; +import com.devonfw.tools.ide.url.tool.obsidian.ObsidianUrlUpdater; import com.devonfw.tools.ide.url.tool.oc.OcUrlUpdater; import com.devonfw.tools.ide.url.tool.pgadmin.PgAdminUrlUpdater; import com.devonfw.tools.ide.url.tool.pip.PipUrlUpdater; @@ -83,7 +84,7 @@ public class UpdateManager extends AbstractProcessorWithTimeout { new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), new RubyUrlUpdater(), new RubyJdxUrlUpdater(), new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), new SquirrelSqlUrlUpdater(), new SoapUiUrlUpdater(), - new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater()); + new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater(), new ObsidianUrlUpdater()); /** * The constructor. diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java new file mode 100644 index 0000000000..7be562ad93 --- /dev/null +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -0,0 +1,74 @@ +package com.devonfw.tools.ide.url.tool.obsidian; + +import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; +import static com.github.tomakehurst.wiremock.client.WireMock.any; +import static com.github.tomakehurst.wiremock.client.WireMock.get; +import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; +import static com.github.tomakehurst.wiremock.client.WireMock.urlMatching; + +import java.io.IOException; +import java.nio.file.Path; +import java.util.List; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.io.TempDir; + +import com.devonfw.tools.ide.url.model.folder.UrlRepository; +import com.devonfw.tools.ide.url.updater.AbstractUrlUpdaterTest; +import com.github.tomakehurst.wiremock.junit5.WireMockRuntimeInfo; +import com.github.tomakehurst.wiremock.junit5.WireMockTest; + +/** + * Test of {@link ObsidianUrlUpdater}. + */ +@WireMockTest +public class ObsidianUrlUpdaterTest extends AbstractUrlUpdaterTest { + + /** + * Test of {@link ObsidianUrlUpdater} for the creation of download URLs and checksums. + * + * @param tempDir Path to a temporary directory. + * @param wmRuntimeInfo the {@link WireMockRuntimeInfo}. + */ + @Test + void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntimeInfo) throws IOException { + + // arrange + stubFor(get(urlMatching("/repos/obsidianmd/obsidian-releases/releases")) + .willReturn(aResponse() + .withStatus(200) + .withBody(readAndResolve(PATH_INTEGRATION_TEST.resolve("ObsidianUrlUpdater") + .resolve("obsidian-releases.json"), wmRuntimeInfo)))); + + stubFor(any(urlMatching("/obsidianmd/obsidian-releases/releases/download/v\\d+\\.\\d+\\.\\d+/Obsidian-.*\\.exe")) + .willReturn(aResponse() + .withStatus(200) + .withBody(DOWNLOAD_CONTENT))); + stubFor(any(urlMatching("/obsidianmd/obsidian-releases/releases/download/v\\d+\\.\\d+\\.\\d+/Obsidian-.*\\.dmg")) + .willReturn(aResponse() + .withStatus(200) + .withBody(DOWNLOAD_CONTENT))); + stubFor(any(urlMatching("/obsidianmd/obsidian-releases/releases/download/v\\d+\\.\\d+\\.\\d+/obsidian_.*_amd64\\.deb")) + .willReturn(aResponse() + .withStatus(200) + .withBody(DOWNLOAD_CONTENT))); + stubFor(any(urlMatching("/obsidianmd/obsidian-releases/releases/download/v\\d+\\.\\d+\\.\\d+/obsidian-.*\\.tar\\.gz")) + .willReturn(aResponse() + .withStatus(200) + .withBody(DOWNLOAD_CONTENT))); + + UrlRepository urlRepository = UrlRepository.load(tempDir); + ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); + + // act + updater.update(urlRepository); + + // assert + List expectedPlatforms = List.of("windows_x64", "mac_x64", "linux_x64"); + Path obsidianDir = tempDir.resolve("obsidian").resolve("obsidian"); + assertUrlVersion(obsidianDir.resolve("1.9.10"), expectedPlatforms); + assertUrlVersion(obsidianDir.resolve("1.10.6"), expectedPlatforms); + assertUrlVersion(obsidianDir.resolve("1.11.7"), expectedPlatforms); + assertUrlVersion(obsidianDir.resolve("1.12.7"), expectedPlatforms); + } +} diff --git a/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json b/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json new file mode 100644 index 0000000000..d35e16f33a --- /dev/null +++ b/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json @@ -0,0 +1,288 @@ +[ + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/298621467", + "assets_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/298621467/assets", + "upload_url": "https://uploads.github.com/repos/obsidianmd/obsidian-releases/releases/298621467/assets{?name,label}", + "html_url": "https://github.com/obsidianmd/obsidian-releases/releases/tag/v1.12.7", + "id": 298621467, + "author": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "node_id": "RE_kwDOD6MHws4RzJob", + "tag_name": "v1.12.7", + "target_commitish": "master", + "name": "1.12.7", + "draft": false, + "immutable": false, + "prerelease": false, + "created_at": "2026-03-23T15:26:14Z", + "updated_at": "2026-03-23T15:56:28Z", + "published_at": "2026-03-23T15:56:19Z", + "assets": [ + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809280", + "id": 379809280, + "node_id": "RA_kwDOD6MHws4Wo24A", + "name": "Obsidian-1.12.7.exe", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-msdownload", + "state": "uploaded", + "size": 138452736, + "digest": "sha256:f35d2a35061098400a3fafc1bfd38d8bd33f1ad76df8b78b62ccdf20b0a30d26", + "download_count": 123456, + "created_at": "2026-03-23T15:27:05Z", + "updated_at": "2026-03-23T15:27:17Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.12.7/Obsidian-1.12.7.exe" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809281", + "id": 379809281, + "node_id": "RA_kwDOD6MHws4Wo24B", + "name": "Obsidian-1.12.7.dmg", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-apple-diskimage", + "state": "uploaded", + "size": 142352896, + "digest": "sha256:3b85c13b4ce55512e86e170a7cd2a494e2db695ac888c0601e153cb85b77881b", + "download_count": 98765, + "created_at": "2026-03-23T15:27:06Z", + "updated_at": "2026-03-23T15:27:18Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.12.7/Obsidian-1.12.7.dmg" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809282", + "id": 379809282, + "node_id": "RA_kwDOD6MHws4Wo24C", + "name": "obsidian_1.12.7_amd64.deb", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/vnd.debian.binary-package", + "state": "uploaded", + "size": 85762386, + "digest": "sha256:3644e3ef19bcd23db4d17f7c73311b5245429391a2a48b361da93375f59712b0", + "download_count": 264755, + "created_at": "2026-03-23T15:27:29Z", + "updated_at": "2026-03-23T15:27:38Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.12.7/obsidian_1.12.7_amd64.deb" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809283", + "id": 379809283, + "node_id": "RA_kwDOD6MHws4Wo24D", + "name": "obsidian-1.12.7.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/gzip", + "state": "uploaded", + "size": 112456789, + "digest": "sha256:fcbe08b111d9c1fdb09b9c08952b06e1c829c62163eba2584c4b4ec859be079d", + "download_count": 45678, + "created_at": "2026-03-23T15:27:30Z", + "updated_at": "2026-03-23T15:27:40Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.12.7/obsidian-1.12.7.tar.gz" + } + ], + "tarball_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/tarball/v1.12.7", + "zipball_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/zipball/v1.12.7", + "body": "https://obsidian.md/changelog/2026-03-23-desktop-v1.12.7/", + "reactions": { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/298621467/reactions", + "total_count": 67, + "+1": 45, + "-1": 0, + "laugh": 2, + "hooray": 11, + "confused": 0, + "heart": 3, + "rocket": 4, + "eyes": 2 + } + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456788", + "assets_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456788/assets", + "html_url": "https://github.com/obsidianmd/obsidian-releases/releases/tag/v1.11.7", + "id": 123456788, + "tag_name": "v1.11.7", + "name": "1.11.7", + "draft": false, + "prerelease": false, + "published_at": "2026-02-15T00:00:00Z", + "assets": [ + { + "name": "Obsidian-1.11.7.exe", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/Obsidian-1.11.7.exe" + }, + { + "name": "Obsidian-1.11.7.dmg", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/Obsidian-1.11.7.dmg" + }, + { + "name": "obsidian_1.11.7_amd64.deb", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian_1.11.7_amd64.deb" + }, + { + "name": "obsidian-1.11.7.tar.gz", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian-1.11.7.tar.gz" + } + ] + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456787", + "assets_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456787/assets", + "html_url": "https://github.com/obsidianmd/obsidian-releases/releases/tag/v1.10.6", + "id": 123456787, + "tag_name": "v1.10.6", + "name": "1.10.6", + "draft": false, + "prerelease": false, + "published_at": "2026-01-10T00:00:00Z", + "assets": [ + { + "name": "Obsidian-1.10.6.exe", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/Obsidian-1.10.6.exe" + }, + { + "name": "Obsidian-1.10.6.dmg", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/Obsidian-1.10.6.dmg" + }, + { + "name": "obsidian_1.10.6_amd64.deb", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian_1.10.6_amd64.deb" + }, + { + "name": "obsidian-1.10.6.tar.gz", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian-1.10.6.tar.gz" + } + ] + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456786", + "assets_url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/123456786/assets", + "html_url": "https://github.com/obsidianmd/obsidian-releases/releases/tag/v1.9.10", + "id": 123456786, + "tag_name": "v1.9.10", + "name": "1.9.10", + "draft": false, + "prerelease": false, + "published_at": "2025-12-01T00:00:00Z", + "assets": [ + { + "name": "Obsidian-1.9.10.exe", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/Obsidian-1.9.10.exe" + }, + { + "name": "Obsidian-1.9.10.dmg", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/Obsidian-1.9.10.dmg" + }, + { + "name": "obsidian_1.9.10_amd64.deb", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian_1.9.10_amd64.deb" + }, + { + "name": "obsidian-1.9.10.tar.gz", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian-1.9.10.tar.gz" + } + ] + } +] \ No newline at end of file From e74d8744825ff7dfa62e0cadca0d4e01c9d6247b Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Wed, 29 Jul 2026 07:52:12 +0200 Subject: [PATCH 03/13] 2186: - added arm64 updater for obsidian - improved obsidian-releases mock --- .../url/tool/obsidian/ObsidianUrlUpdater.java | 1 + .../tool/obsidian/ObsidianUrlUpdaterTest.java | 4 + .../ObsidianUrlUpdater/obsidian-releases.json | 554 +++++++++++++++++- 3 files changed, 546 insertions(+), 13 deletions(-) diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java index ac67db00b2..6e79de080c 100644 --- a/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdater.java @@ -53,6 +53,7 @@ protected void addVersion(UrlVersion urlVersion) { doAddVersion(urlVersion, baseUrl + "Obsidian-${version}.dmg", MAC, X64); doAddVersion(urlVersion, baseUrl + "obsidian_${version}_amd64.deb", LINUX, X64); doAddVersion(urlVersion, baseUrl + "obsidian-${version}.tar.gz", LINUX, X64); + doAddVersion(urlVersion, baseUrl + "obsidian-${version}-arm64.tar.gz", LINUX, ARM64); } @Override diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java index 7be562ad93..da55498a5d 100644 --- a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -56,6 +56,10 @@ void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntime .willReturn(aResponse() .withStatus(200) .withBody(DOWNLOAD_CONTENT))); + stubFor(any(urlMatching("/obsidianmd/obsidian-releases/releases/download/v\\d+\\.\\d+\\.\\d+/obsidian-.*-arm64\\.tar\\.gz")) + .willReturn(aResponse() + .withStatus(200) + .withBody(DOWNLOAD_CONTENT))); UrlRepository urlRepository = UrlRepository.load(tempDir); ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); diff --git a/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json b/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json index d35e16f33a..9d48a8a698 100644 --- a/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json +++ b/url-updater/src/test/resources/integrationtest/ObsidianUrlUpdater/obsidian-releases.json @@ -37,6 +37,42 @@ "updated_at": "2026-03-23T15:56:28Z", "published_at": "2026-03-23T15:56:19Z", "assets": [ + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809421", + "id": 379809421, + "node_id": "RA_kwDOD6MHws4Wo26N", + "name": "obsidian-1.12.7-arm64.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 117539982, + "digest": "sha256:6bc8727bfdbb6d731d5af9a06f51d6de7061c68c908c8ae8b43a9ed379a20260", + "download_count": 8065, + "created_at": "2026-03-23T15:27:17Z", + "updated_at": "2026-03-23T15:27:29Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.12.7/obsidian-1.12.7-arm64.tar.gz" + }, { "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/379809280", "id": 379809280, @@ -210,20 +246,184 @@ "published_at": "2026-02-15T00:00:00Z", "assets": [ { - "name": "Obsidian-1.11.7.exe", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/Obsidian-1.11.7.exe" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/351268070", + "id": 351268070, + "node_id": "RA_kwDOD6MHws4U7-zm", + "name": "obsidian-1.11.7-arm64.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 117991009, + "digest": "sha256:41bfe126ac0ca55fc1019aa4f663a155586347e90917e96b257fc726a4e90c20", + "download_count": 1232, + "created_at": "2026-02-05T19:04:31Z", + "updated_at": "2026-02-05T19:04:34Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian-1.11.7-arm64.tar.gz" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/351268105", + "id": 351268105, + "node_id": "RA_kwDOD6MHws4U7-0J", "name": "Obsidian-1.11.7.dmg", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 213823477, + "digest": "sha256:4d113dca636da5ca7b8046eeb927c9c6f6035cb0d5373fa8e3e4523721d98261", + "download_count": 965437, + "created_at": "2026-02-05T19:04:39Z", + "updated_at": "2026-02-05T19:04:42Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/Obsidian-1.11.7.dmg" }, { - "name": "obsidian_1.11.7_amd64.deb", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian_1.11.7_amd64.deb" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/351268134", + "id": 351268134, + "node_id": "RA_kwDOD6MHws4U7-0m", + "name": "Obsidian-1.11.7.exe", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-msdownload", + "state": "uploaded", + "size": 296595328, + "digest": "sha256:b29fd8812282bc44e8782f3ed00c13bc54ef8a4039c1d86b2d3559311e77b895", + "download_count": 461175, + "created_at": "2026-02-05T19:04:42Z", + "updated_at": "2026-02-05T19:04:48Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/Obsidian-1.11.7.exe" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/351268048", + "id": 351268048, + "node_id": "RA_kwDOD6MHws4U7-zQ", "name": "obsidian-1.11.7.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 117698473, + "digest": "sha256:1eba9e149d82e6e670d0806d0fdcbad3b57ad34edf3b09c0d0a9c0f377305a38", + "download_count": 942, + "created_at": "2026-02-05T19:04:25Z", + "updated_at": "2026-02-05T19:04:28Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian-1.11.7.tar.gz" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/351268089", + "id": 351268089, + "node_id": "RA_kwDOD6MHws4U7-z5", + "name": "obsidian_1.11.7_amd64.deb", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 85637518, + "digest": "sha256:967e4f24a608f76a57fb00798a0416e14bf7db92b62bb16728ae123e1ef48123", + "download_count": 35166, + "created_at": "2026-02-05T19:04:34Z", + "updated_at": "2026-02-05T19:04:36Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.11.7/obsidian_1.11.7_amd64.deb" } ] }, @@ -239,20 +439,184 @@ "published_at": "2026-01-10T00:00:00Z", "assets": [ { - "name": "Obsidian-1.10.6.exe", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/Obsidian-1.10.6.exe" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/320715568", + "id": 320715568, + "node_id": "RA_kwDOD6MHws4THbsw", + "name": "obsidian-1.10.6-arm64.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 118402386, + "digest": "sha256:e6ffd34d2c2faaec7c050ad6fc805b1d098545a9ac2a3dada1077bb067e9c995", + "download_count": 1881, + "created_at": "2025-11-25T16:08:06Z", + "updated_at": "2025-11-25T16:08:09Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian-1.10.6-arm64.tar.gz" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/320715517", + "id": 320715517, + "node_id": "RA_kwDOD6MHws4THbr9", "name": "Obsidian-1.10.6.dmg", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 210410377, + "digest": "sha256:a7fbd87353d7802933a13e3d90f55c39114c419ac48d459a356bdab73c128a8a", + "download_count": 1707135, + "created_at": "2025-11-25T16:07:53Z", + "updated_at": "2025-11-25T16:07:57Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/Obsidian-1.10.6.dmg" }, { - "name": "obsidian_1.10.6_amd64.deb", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian_1.10.6_amd64.deb" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/320715532", + "id": 320715532, + "node_id": "RA_kwDOD6MHws4THbsM", + "name": "Obsidian-1.10.6.exe", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-msdownload", + "state": "uploaded", + "size": 291796608, + "digest": "sha256:cf5ecd9e9d1b703186e41d938c1fefe4e06c075699de7d48e64d4ca1740d38ce", + "download_count": 840829, + "created_at": "2025-11-25T16:07:57Z", + "updated_at": "2025-11-25T16:08:02Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/Obsidian-1.10.6.exe" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/320715544", + "id": 320715544, + "node_id": "RA_kwDOD6MHws4THbsY", "name": "obsidian-1.10.6.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 118420302, + "digest": "sha256:1596c81d8645ff9f6506b5b3e1a6963250d9372ceb58eb037551e53bc1b16f72", + "download_count": 22261, + "created_at": "2025-11-25T16:08:02Z", + "updated_at": "2025-11-25T16:08:04Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian-1.10.6.tar.gz" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/320715581", + "id": 320715581, + "node_id": "RA_kwDOD6MHws4THbs9", + "name": "obsidian_1.10.6_amd64.deb", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 86313124, + "digest": "sha256:7e2fcf3fa6da54715d88a17ac906c87ca397c9d1e15ac6a0f6ba74f097a749d6", + "download_count": 59027, + "created_at": "2025-11-25T16:08:09Z", + "updated_at": "2025-11-25T16:08:11Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.10.6/obsidian_1.10.6_amd64.deb" } ] }, @@ -268,21 +632,185 @@ "published_at": "2025-12-01T00:00:00Z", "assets": [ { - "name": "Obsidian-1.9.10.exe", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/Obsidian-1.9.10.exe" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/283449167", + "id": 283449167, + "node_id": "RA_kwDOD6MHws4Q5RdP", + "name": "obsidian-1.9.10-arm64.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 118893018, + "digest": "sha256:e675eb2f59efb753f9db69586a293c926118ebd12e69ce5e36aecac95edb2d67", + "download_count": 553, + "created_at": "2025-08-17T21:11:25Z", + "updated_at": "2025-08-17T21:11:27Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian-1.9.10-arm64.tar.gz" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/283449187", + "id": 283449187, + "node_id": "RA_kwDOD6MHws4Q5Rdj", "name": "Obsidian-1.9.10.dmg", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 212511501, + "digest": "sha256:b544f9d27185dabb9ae569b59eac0ee08f37bbca3e070c2b6a921bc606808b56", + "download_count": 275850, + "created_at": "2025-08-17T21:11:32Z", + "updated_at": "2025-08-17T21:11:35Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/Obsidian-1.9.10.dmg" }, { - "name": "obsidian_1.9.10_amd64.deb", - "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian_1.9.10_amd64.deb" + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/283449194", + "id": 283449194, + "node_id": "RA_kwDOD6MHws4Q5Rdq", + "name": "Obsidian-1.9.10.exe", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-msdownload", + "state": "uploaded", + "size": 279721936, + "digest": "sha256:b962d67046d19feefc0841bf9ba94714ddaca120dbb37ec54ba72eb6642115d3", + "download_count": 185926, + "created_at": "2025-08-17T21:11:35Z", + "updated_at": "2025-08-17T21:11:40Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/Obsidian-1.9.10.exe" }, { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/283449160", + "id": 283449160, + "node_id": "RA_kwDOD6MHws4Q5RdI", "name": "obsidian-1.9.10.tar.gz", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/x-gzip", + "state": "uploaded", + "size": 118901593, + "digest": "sha256:e5df71f7636ef1dcc01829d37981e6bf95d037a696c517a64728c2eb037a9434", + "download_count": 6009, + "created_at": "2025-08-17T21:11:20Z", + "updated_at": "2025-08-17T21:11:23Z", "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian-1.9.10.tar.gz" + }, + { + "url": "https://api.github.com/repos/obsidianmd/obsidian-releases/releases/assets/283449176", + "id": 283449176, + "node_id": "RA_kwDOD6MHws4Q5RdY", + "name": "obsidian_1.9.10_amd64.deb", + "label": null, + "uploader": { + "login": "lishid", + "id": 609710, + "node_id": "MDQ6VXNlcjYwOTcxMA==", + "avatar_url": "https://avatars.githubusercontent.com/u/609710?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/lishid", + "html_url": "https://github.com/lishid", + "followers_url": "https://api.github.com/users/lishid/followers", + "following_url": "https://api.github.com/users/lishid/following{/other_user}", + "gists_url": "https://api.github.com/users/lishid/gists{/gist_id}", + "starred_url": "https://api.github.com/users/lishid/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/lishid/subscriptions", + "organizations_url": "https://api.github.com/users/lishid/orgs", + "repos_url": "https://api.github.com/users/lishid/repos", + "events_url": "https://api.github.com/users/lishid/events{/privacy}", + "received_events_url": "https://api.github.com/users/lishid/received_events", + "type": "User", + "user_view_type": "public", + "site_admin": false + }, + "content_type": "application/octet-stream", + "state": "uploaded", + "size": 86628952, + "digest": "sha256:44c8eeb0797c332dbf4533aaaa126a31896db8c207dac9cda61beba7c33be257", + "download_count": 12190, + "created_at": "2025-08-17T21:11:27Z", + "updated_at": "2025-08-17T21:11:29Z", + "browser_download_url": "https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.10/obsidian_1.9.10_amd64.deb" } ] } -] \ No newline at end of file +] From 5926c82d6f834d76ad7047529389f0cd1de70d53 Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Wed, 29 Jul 2026 08:00:18 +0200 Subject: [PATCH 04/13] 2186: - add changelog --- CHANGELOG.adoc | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 75335de611..a058aaa7e2 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -6,6 +6,7 @@ This file documents all notable changes to https://github.com/devonfw/IDEasy[IDE Release with new features and bugfixes: +* https://github.com/devonfw/IDEasy/issues/2186[#2186]: create Obsidian url updater * https://github.com/devonfw/IDEasy/issues/2187[#2187]: Start SoapUI commandlet in background * https://github.com/devonfw/IDEasy/issues/2189[#2189]: Integrate Ruff * https://github.com/devonfw/IDEasy/issues/2126[#2126]: Fix language selection dropdown From d46f3c2a772c129356cd097e8e5c169fb86248dd Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Mon, 10 Aug 2026 12:00:31 +0200 Subject: [PATCH 05/13] restored quality status documentation from devonfw --- .../functional-labels.svg | 54 +-- .../quality-status-images/issue-age.svg | 22 +- .../issue-assignment.svg | 10 +- .../quality-status-images/issue-types.svg | 17 +- .../operating-systems.svg | 22 +- .../quality-status/quality-status-linux.adoc | 16 +- .../quality-status/quality-status-macos.adoc | 19 +- .../quality-status-windows.adoc | 43 ++- .../quality-status/quality-status.adoc | 327 ++++++++---------- 9 files changed, 246 insertions(+), 284 deletions(-) diff --git a/documentation/quality-status/quality-status-images/functional-labels.svg b/documentation/quality-status/quality-status-images/functional-labels.svg index f6162d1be2..21e573c256 100644 --- a/documentation/quality-status/quality-status-images/functional-labels.svg +++ b/documentation/quality-status/quality-status-images/functional-labels.svg @@ -20,44 +20,44 @@ Most common functional labels Most common functional labels -GUI +install -35 -install +20 +GUI - -19 -commandlet + +18 +settings - -16 -settings + +16 +internal - -12 -internal + +12 +commandlet - -11 + +10 urls - -9 + +9 software - -8 -uninstall + +8 +update - -8 -git + +7 +docker - -7 -vscode + +6 +git - -7 + +6 diff --git a/documentation/quality-status/quality-status-images/issue-age.svg b/documentation/quality-status/quality-status-images/issue-age.svg index a198a68dca..bac5c400a0 100644 --- a/documentation/quality-status/quality-status-images/issue-age.svg +++ b/documentation/quality-status/quality-status-images/issue-age.svg @@ -20,22 +20,22 @@ Issue age Issue age - + -0-10 days: 31 (17.7%) - +0-10 days: 13 (7.8%) + -11-30 days: 22 (12.6%) - +11-30 days: 11 (6.6%) + -31-60 days: 16 (9.1%) - +31-60 days: 18 (10.8%) + -61-90 days: 13 (7.4%) - +61-90 days: 5 (3.0%) + -90+ days: 93 (53.1%) +90+ days: 119 (71.7%) -175 +166 total diff --git a/documentation/quality-status/quality-status-images/issue-assignment.svg b/documentation/quality-status/quality-status-images/issue-assignment.svg index 4b703c5318..e1514f55ba 100644 --- a/documentation/quality-status/quality-status-images/issue-assignment.svg +++ b/documentation/quality-status/quality-status-images/issue-assignment.svg @@ -20,13 +20,13 @@ Assigned vs unassigned issues Assigned vs unassigned issues - + -Assigned: 99 (56.6%) - +Assigned: 66 (39.8%) + -Unassigned: 76 (43.4%) +Unassigned: 100 (60.2%) -175 +166 total diff --git a/documentation/quality-status/quality-status-images/issue-types.svg b/documentation/quality-status/quality-status-images/issue-types.svg index 1d7ab4db8a..afb32ce09b 100644 --- a/documentation/quality-status/quality-status-images/issue-types.svg +++ b/documentation/quality-status/quality-status-images/issue-types.svg @@ -20,19 +20,16 @@ Issue type distribution Issue type distribution - + -Bugs: 44 (25.1%) - +Bugs: 51 (30.7%) + -Tasks: 40 (22.9%) - +Tasks: 30 (18.1%) + -Features: 89 (50.9%) - - -No Type: 2 (1.1%) +Features: 85 (51.2%) -175 +166 total diff --git a/documentation/quality-status/quality-status-images/operating-systems.svg b/documentation/quality-status/quality-status-images/operating-systems.svg index f490cc01cd..d6d7ce64f9 100644 --- a/documentation/quality-status/quality-status-images/operating-systems.svg +++ b/documentation/quality-status/quality-status-images/operating-systems.svg @@ -27,17 +27,17 @@ Cross-platform Windows - - -154 + + +148 Linux - - - -154 + + + +141 macOS - - - -158 + + + +146 diff --git a/documentation/quality-status/quality-status-linux.adoc b/documentation/quality-status/quality-status-linux.adoc index 8f0ddf21e2..76b80d4a1a 100644 --- a/documentation/quality-status/quality-status-linux.adoc +++ b/documentation/quality-status/quality-status-linux.adoc @@ -9,28 +9,20 @@ Automatically generated open issue overview for Linux. link:quality-status.adoc[Back to overview] -*Total Issues:* 154 +*Total Issues:* 141 -* OS-specific: 8 +* OS-specific: 6 * Multi-OS: 1 -* Cross-platform: 145 +* Cross-platform: 134 == Linux Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary -2+^| *0-10 days* - -| link:https://github.com/devonfw/IDEasy/issues/2271[#2271] -| ide install pgadmin fails on Ubuntu Linux - -| link:https://github.com/devonfw/IDEasy/issues/2250[#2250] -| Derive uninstall commands from package manager configuration (Linux) - -2+^| *61-90 days* +2+^| *11-30 days* | link:https://github.com/devonfw/IDEasy/issues/2007[#2007] | IDEasy can not install docker on arch linux diff --git a/documentation/quality-status/quality-status-macos.adoc b/documentation/quality-status/quality-status-macos.adoc index 56cb4ad8da..857216bc63 100644 --- a/documentation/quality-status/quality-status-macos.adoc +++ b/documentation/quality-status/quality-status-macos.adoc @@ -9,29 +9,19 @@ Automatically generated open issue overview for macOS. link:quality-status.adoc[Back to overview] -*Total Issues:* 158 +*Total Issues:* 146 -* OS-specific: 12 +* OS-specific: 11 * Multi-OS: 1 -* Cross-platform: 145 +* Cross-platform: 134 == macOS Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary -2+^| *0-10 days* - -| link:https://github.com/devonfw/IDEasy/issues/2252[#2252] -| Provide uninstall support for globally installed tools (macOS) - -2+^| *11-30 days* - -| link:https://github.com/devonfw/IDEasy/issues/2206[#2206] -| IDEasy title not properly shown on macOS - 2+^| *90+ days* | link:https://github.com/devonfw/IDEasy/issues/1512[#1512] @@ -52,6 +42,9 @@ link:quality-status.adoc[Back to overview] | link:https://github.com/devonfw/IDEasy/issues/868[#868] | Eclipse does not work on Mac x64 +| link:https://github.com/devonfw/IDEasy/issues/865[#865] +| Az is not working on Mac x64 + | link:https://github.com/devonfw/IDEasy/issues/864[#864] | AWS is not working on Mac x64 diff --git a/documentation/quality-status/quality-status-windows.adoc b/documentation/quality-status/quality-status-windows.adoc index 83ce5213ba..3e496bbda7 100644 --- a/documentation/quality-status/quality-status-windows.adoc +++ b/documentation/quality-status/quality-status-windows.adoc @@ -9,44 +9,57 @@ Automatically generated open issue overview for Windows. link:quality-status.adoc[Back to overview] -*Total Issues:* 154 +*Total Issues:* 148 -* OS-specific: 9 +* OS-specific: 14 * Multi-OS: 0 -* Cross-platform: 145 +* Cross-platform: 134 == Windows Specific Issues [%header, cols="^1,7"] |=== | Issue | Summary -2+^| *0-10 days* - -| link:https://github.com/devonfw/IDEasy/issues/2251[#2251] -| Provide generic uninstall support for globally installed tools (Windows) - 2+^| *11-30 days* -| link:https://github.com/devonfw/IDEasy/issues/2226[#2226] -| Show IDEasy project, workspace and repository in the Git Bash / Windows Termina… - -2+^| *61-90 days* +| link:https://github.com/devonfw/IDEasy/issues/1982[#1982] +| relative option for link not honored | link:https://github.com/devonfw/IDEasy/issues/1981[#1981] | ide update fails on windows@arm64 -2+^| *90+ days* +2+^| *31-60 days* | link:https://github.com/devonfw/IDEasy/issues/1873[#1873] | Implement generic get-edition implementation for global tools under windows +| link:https://github.com/devonfw/IDEasy/issues/1872[#1872] +| Implement generic uninstall implementation for global tools under windows + +| link:https://github.com/devonfw/IDEasy/issues/1870[#1870] +| Implement generic get-version implementation for global tools under windows + +2+^| *90+ days* + +| link:https://github.com/devonfw/IDEasy/issues/1579[#1579] +| IDEasy uninstall after a failed MSI installation does not work + +| link:https://github.com/devonfw/IDEasy/issues/1558[#1558] +| Add install.log path to msi installer window + | link:https://github.com/devonfw/IDEasy/issues/1548[#1548] | Windows file locking error on update with plugins -| link:https://github.com/devonfw/IDEasy/issues/1102[#1102] -| IDEasy MSI installer not working (unsigned) +| link:https://github.com/devonfw/IDEasy/issues/1232[#1232] +| MSI Repair broken + +| link:https://github.com/devonfw/IDEasy/issues/1227[#1227] +| Guide windows user after installation + +| link:https://github.com/devonfw/IDEasy/issues/1056[#1056] +| Add Conversion of LICENSE.adoc to RTF Format | link:https://github.com/devonfw/IDEasy/issues/599[#599] | Add release for windows-arm architecture diff --git a/documentation/quality-status/quality-status.adoc b/documentation/quality-status/quality-status.adoc index 27f82267c5..00e70f0de0 100644 --- a/documentation/quality-status/quality-status.adoc +++ b/documentation/quality-status/quality-status.adoc @@ -20,7 +20,7 @@ image::quality-status-images/issue-assignment.svg[Pie chart: assigned vs unassig image::quality-status-images/issue-types.svg[Pie chart: issue type distribution,width=100%] -_Generated: 2026-08-10 07:24 UTC_ +_Generated: 2026-06-19 12:08 UTC_ == Operating System Status Files @@ -29,7 +29,7 @@ Issues are assigned to operating systems based on their labels: `windows`, `linux`, or `macOS`. Issues without an operating system label are treated as cross-platform. -*A total of 145 cross-platform issues* are documented centrally in this document and are therefore not repeated in the operating system specific files. +*A total of 134 cross-platform issues* are documented centrally in this document and are therefore not repeated in the operating system specific files. The detailed tool status is split into one generated file per operating system. @@ -58,183 +58,11 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | Issue | Summary 2+^a| [[cross-platform-0-10-days]] *0-10 days* -| link:https://github.com/devonfw/IDEasy/issues/2296[#2296] -| Improve support to get installed version and edition +| link:https://github.com/devonfw/IDEasy/issues/2052[#2052] +| Split issue statistics into separate assigned and unassigned pie charts -| link:https://github.com/devonfw/IDEasy/issues/2293[#2293] -| Rework spyder as IdeToolCommandlet - -| link:https://github.com/devonfw/IDEasy/issues/2292[#2292] -| Questions appear twice - -| link:https://github.com/devonfw/IDEasy/issues/2286[#2286] -| SystemPath.findBinary ignores extraPathEntries, so withPathEntry has no effect… - -| link:https://github.com/devonfw/IDEasy/issues/2284[#2284] -| Restore .ide.software.version from actual installed Python version - -| link:https://github.com/devonfw/IDEasy/issues/2283[#2283] -| GUI blocks commandlets when license agreement is missing - -| link:https://github.com/devonfw/IDEasy/issues/2281[#2281] -| Allow removing plugins from the IDEasy GUI - -| link:https://github.com/devonfw/IDEasy/issues/2280[#2280] -| Maven commandlet runs from workspace root instead of project directory - -| link:https://github.com/devonfw/IDEasy/issues/2279[#2279] -| Desktop shortcut for the GUI does not work: gui commandlet requires IDE_HOME - -| link:https://github.com/devonfw/IDEasy/issues/2278[#2278] -| Restructure main-view.fxml into seperate layout files - -| link:https://github.com/devonfw/IDEasy/issues/2277[#2277] -| Research task: Check if JavaFX Platform.runLater() method correctly logs thrown… - -| link:https://github.com/devonfw/IDEasy/issues/2276[#2276] -| Create documentation how to find story from Backlog - -| link:https://github.com/devonfw/IDEasy/issues/2275[#2275] -| Auto-install git if not already installed - -| link:https://github.com/devonfw/IDEasy/issues/2274[#2274] -| Create GitUrlUpdater - -| link:https://github.com/devonfw/IDEasy/issues/2273[#2273] -| Integrate git as global tool - -| link:https://github.com/devonfw/IDEasy/issues/2269[#2269] -| Allow choice of installation location in macOS PKG Installer - -| link:https://github.com/devonfw/IDEasy/issues/2268[#2268] -| Allow text selection in console - -| link:https://github.com/devonfw/IDEasy/issues/2267[#2267] -| Allow multi selection in console list view (or for ListViews in general) - -| link:https://github.com/devonfw/IDEasy/issues/2265[#2265] -| MainView status progress bar not displaying correctly when indeterminate - -| link:https://github.com/devonfw/IDEasy/issues/2264[#2264] -| ide «tool» does not set the environment variables of the other installed tools… - -| link:https://github.com/devonfw/IDEasy/issues/2257[#2257] -| Refactor CI/CD Workflows and Improve Release Documentation - -| link:https://github.com/devonfw/IDEasy/issues/2256[#2256] -| Integrate SonarCloud analysis into GitHub workflows - -| link:https://github.com/devonfw/IDEasy/issues/2255[#2255] -| Refactor build logic from GitHub Workflows into dedicated shell scripts - -| link:https://github.com/devonfw/IDEasy/issues/2253[#2253] -| Improve/fix documentation of structure and logs - -| link:https://github.com/devonfw/IDEasy/issues/2248[#2248] -| Change TaskManager design. - -| link:https://github.com/devonfw/IDEasy/issues/2241[#2241] -| Version selection support - -| link:https://github.com/devonfw/IDEasy/issues/2240[#2240] -| Support file and folder selection - -2+^a| [[cross-platform-11-30-days]] *11-30 days* - -| link:https://github.com/devonfw/IDEasy/issues/2236[#2236] -| Preserve Git Bash Working Directory When Launching VS Code via ide vscode - -| link:https://github.com/devonfw/IDEasy/issues/2225[#2225] -| Define installation ownership for Homebrew: brew and 'ideasy install' produce a… - -| link:https://github.com/devonfw/IDEasy/issues/2219[#2219] -| Add unpack commandlet - -| link:https://github.com/devonfw/IDEasy/issues/2218[#2218] -| Add missing 3rd party libs to LICENSE - -| link:https://github.com/devonfw/IDEasy/issues/2214[#2214] -| Overhaul language selection logic - -| link:https://github.com/devonfw/IDEasy/issues/2200[#2200] -| Add repository linting support - -| link:https://github.com/devonfw/IDEasy/issues/2197[#2197] -| Python integration broken - -| link:https://github.com/devonfw/IDEasy/issues/2193[#2193] -| Support for conditional auto-completion - -| link:https://github.com/devonfw/IDEasy/issues/2191[#2191] -| Improve auto-completion - -| link:https://github.com/devonfw/IDEasy/issues/2190[#2190] -| IDEasy destroys my python installation - -| link:https://github.com/devonfw/IDEasy/issues/2186[#2186] -| Create ObsidianUrlUpdater - -| link:https://github.com/devonfw/IDEasy/issues/2185[#2185] -| Explore JPackage and evaluate - -| link:https://github.com/devonfw/IDEasy/issues/2183[#2183] -| Dynamically generate form fields for selected commandlet - -| link:https://github.com/devonfw/IDEasy/issues/2182[#2182] -| Basic structure for Commandlet view - -| link:https://github.com/devonfw/IDEasy/issues/2180[#2180] -| Add *_PLUGINS_EXTRA variable to install extra IDE plugins per user - -| link:https://github.com/devonfw/IDEasy/issues/2178[#2178] -| Make ReleaseCommandlet independent of specific build commandlet - -| link:https://github.com/devonfw/IDEasy/issues/2174[#2174] -| VSCode: store metadata under $IDE_HOME/.ide/vscode/ + migration - -| link:https://github.com/devonfw/IDEasy/issues/2173[#2173] -| JetBrains: store IntelliJ/PyCharm/Android Studio metadata under $IDE_HOME/.ide… - -| link:https://github.com/devonfw/IDEasy/issues/2168[#2168] -| repository remote feature - -| link:https://github.com/devonfw/IDEasy/issues/2165[#2165] -| prompt user for template variables at apply time - -2+^a| [[cross-platform-31-60-days]] *31-60 days* - -| link:https://github.com/devonfw/IDEasy/issues/2142[#2142] -| Move IDE-specific metada (.idea, .vscode) out of workspace - -| link:https://github.com/devonfw/IDEasy/issues/2124[#2124] -| Workflow "Update Quality Status Documents" Fails - -| link:https://github.com/devonfw/IDEasy/issues/2111[#2111] -| Add user documentation for GUI - -| link:https://github.com/devonfw/IDEasy/issues/2110[#2110] -| Add documentation for contributing to UI components - -| link:https://github.com/devonfw/IDEasy/issues/2109[#2109] -| Add documentation on how to modify the FIGMA board properly - -| link:https://github.com/devonfw/IDEasy/issues/2108[#2108] -| Modify PR Template for GUI contributions. - -| link:https://github.com/devonfw/IDEasy/issues/2107[#2107] -| Add documentation for contributing to the GUI - -| link:https://github.com/devonfw/IDEasy/issues/2103[#2103] -| Add obsidian software/commandlet - -| link:https://github.com/devonfw/IDEasy/issues/2097[#2097] -| Configure IDE Plugins in Tool Configuration Tree in the GUI - -| link:https://github.com/devonfw/IDEasy/issues/2096[#2096] -| Add a commandlet execution user interface - -| link:https://github.com/devonfw/IDEasy/issues/2058[#2058] -| VSCode authentication not working with IDEasy +| link:https://github.com/devonfw/IDEasy/issues/2051[#2051] +| Release workflow failing publishing release metadata on github | link:https://github.com/devonfw/IDEasy/issues/2050[#2050] | Evaluate shim/launcher-based runtime activation for Node/npm in IDEasy (follow-… @@ -242,35 +70,79 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/2045[#2045] | Add tool selection and version/edition configuration via GUI +| link:https://github.com/devonfw/IDEasy/issues/2044[#2044] +| mvn -- does not trigger completion + | link:https://github.com/devonfw/IDEasy/issues/2042[#2042] | -q parameter supresses ask for CVE choices | link:https://github.com/devonfw/IDEasy/issues/2040[#2040] | Workspace selection buggy +| link:https://github.com/devonfw/IDEasy/issues/2039[#2039] +| IDE logo not shown in mac task bar + +| link:https://github.com/devonfw/IDEasy/issues/2033[#2033] +| Improve documentation of GUI code. + +| link:https://github.com/devonfw/IDEasy/issues/2026[#2026] +| Create UvRepository and UvBasedCommandlet + +| link:https://github.com/devonfw/IDEasy/issues/2025[#2025] +| Improve JavaDoc of IdeContext + | link:https://github.com/devonfw/IDEasy/issues/2021[#2021] | Remove status.json from ide-urls after migration -2+^a| [[cross-platform-61-90-days]] *61-90 days* +| link:https://github.com/devonfw/IDEasy/issues/2013[#2013] +| Warning: "Unsupported JavaFX configuration: classes were loaded from 'unnamed m… + +2+^a| [[cross-platform-11-30-days]] *11-30 days* + +| link:https://github.com/devonfw/IDEasy/issues/2000[#2000] +| Create script for local end-to-end testing | link:https://github.com/devonfw/IDEasy/issues/1996[#1996] | Revisit design for tools that do not install to software repository +| link:https://github.com/devonfw/IDEasy/issues/1992[#1992] +| Improve GitContextMock + +| link:https://github.com/devonfw/IDEasy/issues/1990[#1990] +| Merge of Vscode settings.json file fails + | link:https://github.com/devonfw/IDEasy/issues/1987[#1987] | Gui commandlet broken for snapshots +| link:https://github.com/devonfw/IDEasy/issues/1976[#1976] +| Extend ToolCommandlet installation logic to allow software-repository-only inst… + | link:https://github.com/devonfw/IDEasy/issues/1975[#1975] | Improve state management implementation in the GUI | link:https://github.com/devonfw/IDEasy/issues/1965[#1965] | Improve dependent installations +2+^a| [[cross-platform-31-60-days]] *31-60 days* + +| link:https://github.com/devonfw/IDEasy/issues/1953[#1953] +| Implement Base Functionality of Cleanup Commandlet + | link:https://github.com/devonfw/IDEasy/issues/1943[#1943] | Create Ruby Commandlet +| link:https://github.com/devonfw/IDEasy/issues/1942[#1942] +| Create a RubyUrlUpdater + | link:https://github.com/devonfw/IDEasy/issues/1938[#1938] | GUI not launchable outside of project context +| link:https://github.com/devonfw/IDEasy/issues/1937[#1937] +| Ability to link content from settings into workspace(s) + +| link:https://github.com/devonfw/IDEasy/issues/1936[#1936] +| Improve localization of the GUI + | link:https://github.com/devonfw/IDEasy/issues/1933[#1933] | Implement a console window in the GUI @@ -286,11 +158,23 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1927[#1927] | IDEasy virtual instance for AI agent -2+^a| [[cross-platform-90plus-days]] *90+ days* +| link:https://github.com/devonfw/IDEasy/issues/1917[#1917] +| Allow the creation of a desktop shortcut for the GUI + +| link:https://github.com/devonfw/IDEasy/issues/1909[#1909] +| Support for maven daemon (mvnd) + +| link:https://github.com/devonfw/IDEasy/issues/1902[#1902] +| Create InsoUrlUpdater | link:https://github.com/devonfw/IDEasy/issues/1868[#1868] | Revision of the functionality of global tool commandlets +2+^a| [[cross-platform-61-90-days]] *61-90 days* + +| link:https://github.com/devonfw/IDEasy/issues/1814[#1814] +| IDEasy still reports updates for settings are available after any number of inv… + | link:https://github.com/devonfw/IDEasy/issues/1808[#1808] | icd is not navigating into single available workspace on icd -p project @@ -300,18 +184,35 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1785[#1785] | Implemenent confirmation modals using JavaFX +| link:https://github.com/devonfw/IDEasy/issues/1784[#1784] +| Implement JavaFX based progress bars for the GUI + +2+^a| [[cross-platform-90plus-days]] *90+ days* + | link:https://github.com/devonfw/IDEasy/issues/1746[#1746] | ide shell broken | link:https://github.com/devonfw/IDEasy/issues/1721[#1721] | Integrate ruby +| link:https://github.com/devonfw/IDEasy/issues/1720[#1720] +| Integrate SoapUI + | link:https://github.com/devonfw/IDEasy/issues/1695[#1695] | Clone settings to temporary directory, analyse, and then move +| link:https://github.com/devonfw/IDEasy/issues/1694[#1694] +| Fix behavior when providing a wrong git URL + +| link:https://github.com/devonfw/IDEasy/issues/1689[#1689] +| Fix user commnication when switching the Java version from the default to the r… + | link:https://github.com/devonfw/IDEasy/issues/1676[#1676] | Import extra SDKs automatically into IDE +| link:https://github.com/devonfw/IDEasy/issues/1659[#1659] +| Global tools run tool while installation is running in background + | link:https://github.com/devonfw/IDEasy/issues/1651[#1651] | Move status.json files out of ide-urls to own repo @@ -321,27 +222,45 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1628[#1628] | Support for OS specific CVEs +| link:https://github.com/devonfw/IDEasy/issues/1594[#1594] +| implement ReleaseCommandlet + | link:https://github.com/devonfw/IDEasy/issues/1580[#1580] | Implement cleanup | link:https://github.com/devonfw/IDEasy/issues/1525[#1525] | lombok not correctly installed in eclipse +| link:https://github.com/devonfw/IDEasy/issues/1517[#1517] +| IDEasy setup does not install Windows Terminal + +| link:https://github.com/devonfw/IDEasy/issues/1501[#1501] +| Starting intellij leads to error popup + | link:https://github.com/devonfw/IDEasy/issues/1493[#1493] | Analyze Scoop Windows CLI installer | link:https://github.com/devonfw/IDEasy/issues/1453[#1453] | Allow co-authored commits in cla assistant +| link:https://github.com/devonfw/IDEasy/issues/1422[#1422] +| Refactor tests to remove windowsJunctionsAreUsed + | link:https://github.com/devonfw/IDEasy/issues/1333[#1333] | Step 'Install or update software' already ended with false and now ended again… +| link:https://github.com/devonfw/IDEasy/issues/1311[#1311] +| improve IDE_MIN_VERSION support + | link:https://github.com/devonfw/IDEasy/issues/1296[#1296] | Implement IdeContext properly for Dashboard | link:https://github.com/devonfw/IDEasy/issues/1295[#1295] | IDEasy Dashboard Epic +| link:https://github.com/devonfw/IDEasy/issues/1263[#1263] +| Fix android-studio workspace templates + | link:https://github.com/devonfw/IDEasy/issues/1225[#1225] | Create new IDEasy introduction videos @@ -357,9 +276,15 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1209[#1209] | migration version message is confusing +| link:https://github.com/devonfw/IDEasy/issues/1206[#1206] +| java.util.zip.ZipException when opening Android Studio archives from versions 2… + | link:https://github.com/devonfw/IDEasy/issues/1181[#1181] | Improve url updater for docker desktop to pull all necessary versions +| link:https://github.com/devonfw/IDEasy/issues/1178[#1178] +| Revisit VersionPhase detection + | link:https://github.com/devonfw/IDEasy/issues/1167[#1167] | Automatic project import for VSCode @@ -381,12 +306,21 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/1134[#1134] | IDEasy autocompletion gets stuck if license agreement file was not found +| link:https://github.com/devonfw/IDEasy/issues/1124[#1124] +| Ensure latest version of Python is installed + +| link:https://github.com/devonfw/IDEasy/issues/1063[#1063] +| User specific configurations are not working as described + | link:https://github.com/devonfw/IDEasy/issues/1059[#1059] | Improve and fix dependency mechanism | link:https://github.com/devonfw/IDEasy/issues/1054[#1054] | Incorrect interpretation of trailling and leading spaces in version range parsi… +| link:https://github.com/devonfw/IDEasy/issues/1041[#1041] +| native image has globbing active + | link:https://github.com/devonfw/IDEasy/issues/1031[#1031] | Integration of OpenRewrite @@ -408,6 +342,9 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/930[#930] | Refactor `JsonPrettyPrinter` to be usable in CustomToolJson +| link:https://github.com/devonfw/IDEasy/issues/897[#897] +| HTTP Proxy with TLS termination causing errors + | link:https://github.com/devonfw/IDEasy/issues/892[#892] | Improve GitContextTest tests to actually test something @@ -420,6 +357,12 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/840[#840] | git fetch does not work with multiple remotes +| link:https://github.com/devonfw/IDEasy/issues/825[#825] +| Consider adding GC Log Analyzer + +| link:https://github.com/devonfw/IDEasy/issues/822[#822] +| Handle long CWD paths in shell prompt + | link:https://github.com/devonfw/IDEasy/issues/821[#821] | Allow User to remove "ide " prefix in ide shell for non-IDEasy command @@ -435,33 +378,57 @@ image::quality-status-images/functional-labels.svg[Bar chart: most common functi | link:https://github.com/devonfw/IDEasy/issues/780[#780] | Create IDEasy service +| link:https://github.com/devonfw/IDEasy/issues/772[#772] +| CVE-2023-7272 in org.eclipse.parsson 1.1.7 + | link:https://github.com/devonfw/IDEasy/issues/771[#771] | Check URL Updater issues +| link:https://github.com/devonfw/IDEasy/issues/768[#768] +| Improve IntelliJ configuration (annotation processing, auto-import, maven argLi… + +| link:https://github.com/devonfw/IDEasy/issues/756[#756] +| Implement CustomToolRepositoryTest + | link:https://github.com/devonfw/IDEasy/issues/741[#741] | Add a warning message for legacy devonfw-ide settings users +| link:https://github.com/devonfw/IDEasy/issues/735[#735] +| Enhance workspace configuration with generic overlay from settings/workspace + | link:https://github.com/devonfw/IDEasy/issues/726[#726] | Replace hardcoded dependencies with dependencies.json in ide-urls | link:https://github.com/devonfw/IDEasy/issues/714[#714] | Improve UX for settings repository +| link:https://github.com/devonfw/IDEasy/issues/701[#701] +| Fix Dotnet tests on our CI + | link:https://github.com/devonfw/IDEasy/issues/690[#690] | UpdateUrls workflow timeout not working +| link:https://github.com/devonfw/IDEasy/issues/639[#639] +| Improve step success logic for sub steps + | link:https://github.com/devonfw/IDEasy/issues/629[#629] | Recycle devonfw-ide documentation | link:https://github.com/devonfw/IDEasy/issues/607[#607] | Test for environment variables of process contexts +| link:https://github.com/devonfw/IDEasy/issues/516[#516] +| IdeToolCommandlet: add option and support for import of project(s) + | link:https://github.com/devonfw/IDEasy/issues/492[#492] | Use Maven dependency cache to optimize workflow running times | link:https://github.com/devonfw/IDEasy/issues/449[#449] | Consider integration of continue GenAI coding assistant +| link:https://github.com/devonfw/IDEasy/issues/412[#412] +| consider integration of lama + | link:https://github.com/devonfw/IDEasy/issues/399[#399] | Handle uninstall of global tool commandlets From 286823097b6671fdb8550f4f97aa5bbad46fa5af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 14:30:44 +0200 Subject: [PATCH 06/13] constructive review: quickfix for test that broke due to changes on main --- .../ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java index da55498a5d..18cb3d6bde 100644 --- a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -15,6 +15,7 @@ import com.devonfw.tools.ide.url.model.folder.UrlRepository; import com.devonfw.tools.ide.url.updater.AbstractUrlUpdaterTest; +import com.devonfw.tools.ide.url.updater.UpdateManager; import com.github.tomakehurst.wiremock.junit5.WireMockRuntimeInfo; import com.github.tomakehurst.wiremock.junit5.WireMockTest; @@ -61,9 +62,11 @@ void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntime .withStatus(200) .withBody(DOWNLOAD_CONTENT))); - UrlRepository urlRepository = UrlRepository.load(tempDir); + UpdateManager updateManager = new UpdateManager(tempDir, null, null); + UrlRepository urlRepository = updateManager.getUrlRepository(); ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); - + updater..setUpdateManager(updateManager); + // act updater.update(urlRepository); From f4cc127198c9d4362bd54b19ad407aa21cad02b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 14:32:07 +0200 Subject: [PATCH 07/13] Apply suggestion from @hohwille --- CHANGELOG.adoc | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index b49cbf3e52..3b2df938eb 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -6,7 +6,6 @@ This file documents all notable changes to https://github.com/devonfw/IDEasy[IDE Release with new features and bugfixes: -* https://github.com/devonfw/IDEasy/issues/2186[#2186]: create Obsidian url updater * https://github.com/devonfw/IDEasy/issues/2180[#2180]: Add *_EXTRA_PLUGINS variable to install extra IDE plugins per user * https://github.com/devonfw/IDEasy/issues/1651[#1651]: Move status.json files out of ide-urls to ide-urls-status * https://github.com/devonfw/IDEasy/issues/1943[#1943]: Create ruby commandlet From e3f81ef0331f231db513a0ef9f249c6632bfbd65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 14:34:30 +0200 Subject: [PATCH 08/13] Fix syntax error in ObsidianUrlUpdaterTest --- .../tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java index 18cb3d6bde..a04301622e 100644 --- a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -65,7 +65,7 @@ void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntime UpdateManager updateManager = new UpdateManager(tempDir, null, null); UrlRepository urlRepository = updateManager.getUrlRepository(); ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); - updater..setUpdateManager(updateManager); + updater.setUpdateManager(updateManager); // act updater.update(urlRepository); From 75bad322aa42427c661abc7d8ca7f04fdf3c3d55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 14:36:35 +0200 Subject: [PATCH 09/13] Remove unnecessary blank line in ObsidianUrlUpdaterTest how I hate this spotless harness. --- .../tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java index a04301622e..40f3744dcb 100644 --- a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -66,7 +66,7 @@ void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntime UrlRepository urlRepository = updateManager.getUrlRepository(); ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); updater.setUpdateManager(updateManager); - + // act updater.update(urlRepository); From 02c5daabb1ef3b4a09787a2489cec8bca72b8b71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 14:37:52 +0200 Subject: [PATCH 10/13] keep alphabetical order --- .../com/devonfw/tools/ide/url/updater/UpdateManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java index 2c2a1fb1af..f80f74527b 100644 --- a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java @@ -90,10 +90,10 @@ public class UpdateManager extends AbstractProcessorWithTimeout { new GcLogAnalyzerUrlUpdater(), new GCloudUrlUpdater(), new GcViewerUrlUpdater(), new GhUrlUpdater(), new GoUrlUpdater(), new GraalVmCommunityUpdater(), new GraalVmOracleUrlUpdater(), new GradleUrlUpdater(), new HelmUrlUpdater(), new InsoUrlUpdater(), new IntellijUrlUpdater(), new JasyptUrlUpdater(), new JavaAzulUrlUpdater(), new JavaUrlUpdater(), new JenkinsUrlUpdater(), new JmcUrlUpdater(), new KotlincUrlUpdater(), new KotlincNativeUrlUpdater(), - new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), new OcUrlUpdater(), - new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), new RubyUrlUpdater(), new RubyJdxUrlUpdater(), + new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), new ObsidianUrlUpdater(), + new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), new RubyUrlUpdater(), new RubyJdxUrlUpdater(), new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), new SquirrelSqlUrlUpdater(), new SoapUiUrlUpdater(), - new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater(), new ObsidianUrlUpdater()); + new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater()); /** * The constructor. From 253a3b55c14e60fedfa5ac18f4251197485bf17a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 15:02:40 +0200 Subject: [PATCH 11/13] spotless harness can be so annoying --- .../com/devonfw/tools/ide/url/updater/UpdateManager.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java index f80f74527b..dcec23640b 100644 --- a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java @@ -90,10 +90,11 @@ public class UpdateManager extends AbstractProcessorWithTimeout { new GcLogAnalyzerUrlUpdater(), new GCloudUrlUpdater(), new GcViewerUrlUpdater(), new GhUrlUpdater(), new GoUrlUpdater(), new GraalVmCommunityUpdater(), new GraalVmOracleUrlUpdater(), new GradleUrlUpdater(), new HelmUrlUpdater(), new InsoUrlUpdater(), new IntellijUrlUpdater(), new JasyptUrlUpdater(), new JavaAzulUrlUpdater(), new JavaUrlUpdater(), new JenkinsUrlUpdater(), new JmcUrlUpdater(), new KotlincUrlUpdater(), new KotlincNativeUrlUpdater(), - new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), new ObsidianUrlUpdater(), - new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), new RubyUrlUpdater(), new RubyJdxUrlUpdater(), - new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), new SquirrelSqlUrlUpdater(), new SoapUiUrlUpdater(), - new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater()); + new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), + new ObsidianUrlUpdater(), new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), + new RubyUrlUpdater(), new RubyJdxUrlUpdater(), new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), + new SquirrelSqlUrlUpdater(), new SoapUiUrlUpdater(), new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), + new VsCodiumUrlUpdater()); /** * The constructor. From fc61bac0ff1fc7d3535becfeaf810191b0ea13a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Hohwiller?= Date: Fri, 21 Aug 2026 15:07:20 +0200 Subject: [PATCH 12/13] need to change my practices since spotless harness is preventing this browser coding --- .../java/com/devonfw/tools/ide/url/updater/UpdateManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java index dcec23640b..609a27a4ed 100644 --- a/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java +++ b/url-updater/src/main/java/com/devonfw/tools/ide/url/updater/UpdateManager.java @@ -92,7 +92,7 @@ public class UpdateManager extends AbstractProcessorWithTimeout { new JavaAzulUrlUpdater(), new JavaUrlUpdater(), new JenkinsUrlUpdater(), new JmcUrlUpdater(), new KotlincUrlUpdater(), new KotlincNativeUrlUpdater(), new LazyDockerUrlUpdater(), new MvnUrlUpdater(), new MvndUrlUpdater(), new NgUrlUpdater(), new NodeUrlUpdater(), new NpmUrlUpdater(), new ObsidianUrlUpdater(), new OcUrlUpdater(), new PgAdminUrlUpdater(), new PipUrlUpdater(), new PycharmUrlUpdater(), new QuarkusUrlUpdater(), - new RubyUrlUpdater(), new RubyJdxUrlUpdater(), new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), + new RubyUrlUpdater(), new RubyJdxUrlUpdater(), new RustUrlUpdater(), new DockerRancherDesktopUrlUpdater(), new SonarUrlUpdater(), new SquirrelSqlUrlUpdater(), new SoapUiUrlUpdater(), new TerraformUrlUpdater(), new TomcatUrlUpdater(), new UvUrlUpdater(), new VsCodeUrlUpdater(), new VsCodiumUrlUpdater()); From b848b78f4fcd614d5762d940e76ba5a3b6d4d4aa Mon Sep 17 00:00:00 2001 From: JoelAdbu Date: Tue, 25 Aug 2026 11:44:14 +0200 Subject: [PATCH 13/13] 2203: - fixed test (uses update method of AbstractUrlUpdaterTest.java) --- .../ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java index 40f3744dcb..f8bbcfb788 100644 --- a/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java +++ b/url-updater/src/test/java/com/devonfw/tools/ide/url/tool/obsidian/ObsidianUrlUpdaterTest.java @@ -15,7 +15,6 @@ import com.devonfw.tools.ide.url.model.folder.UrlRepository; import com.devonfw.tools.ide.url.updater.AbstractUrlUpdaterTest; -import com.devonfw.tools.ide.url.updater.UpdateManager; import com.github.tomakehurst.wiremock.junit5.WireMockRuntimeInfo; import com.github.tomakehurst.wiremock.junit5.WireMockTest; @@ -62,13 +61,11 @@ void testObsidianUrlUpdater(@TempDir Path tempDir, WireMockRuntimeInfo wmRuntime .withStatus(200) .withBody(DOWNLOAD_CONTENT))); - UpdateManager updateManager = new UpdateManager(tempDir, null, null); - UrlRepository urlRepository = updateManager.getUrlRepository(); + UrlRepository urlRepository = UrlRepository.load(tempDir); ObsidianUrlUpdater updater = new ObsidianUrlUpdater(wmRuntimeInfo.getHttpBaseUrl(), wmRuntimeInfo.getHttpBaseUrl()); - updater.setUpdateManager(updateManager); // act - updater.update(urlRepository); + update(updater, urlRepository); // assert List expectedPlatforms = List.of("windows_x64", "mac_x64", "linux_x64");