Releases: Nexus-Mods/NexusMods.App
0.5
v0.5.0 - 2024-05-29
New Features
This release is packed with new features. Configs generated by the game are now ingested into the correct mod, and can be edited using our new Text Editor (#1358, #1346):
The text editor uses AvaloniaEdit and comes with syntax highlighting and many features you'd expect a code editor to have. You can even change the theme in the toolbar directly or using our new Settings UI (#396, #920):
Settings have been in the works for a long time, and we've finally developed a system to easily create settings and allow users to change them. The UI will be expanded with sections, a search bar, and many more features in the future.
Our Downloads Page received a lot of attention in this release as well. It now contains a very nice and sleek download speed chart, and a list of completed downloads (#1297, #1397):
Clicking the "View in library" button will take you to our new Mods Library. Here you can see a list of all mods you've downloaded and installed. You can also quickly add a mod to your Loadout (#1268, #1347):
The biggest change we've done is completely overhauling our internal data model and moving almost everything to our custom build database called MnemonicDB. The immediate benefit of this change is better faster, the long term benefit is having a reliable database with migrations and opportunities for new and awesome features without being bogged down by our previous data model.
One notable change that the new data model brought to the App is reified deletes.
Other Changes
- Starting the App for the first time will open a warning about the state of the release. This overlay can be opened again by clicking the help icon in the top bar (#1390).
- Navigating panels has been made easier. You can now right-click buttons that would create panels, to open up a context menu. Similar to browsers, combinations like Ctrl+Click or Shift+Click also work (#1266).
- This Changelog can now be viewed directly in the App (#1258).
- Stardew Valley saves are no longer managed by the App (#1344).
- Added new Stardew Valley diagnostics:
- Stardew Valley has a new image (#1393).
- The "Library" and "Diagnostics" entry on the left menu now show badges with counts for new archives and active diagnostics (#1452).
- Added a message to an empty Loadout (#1464).
- Updated mod names for failed installations (#1468).
- Game Files and the Override Mod are hidden by default, this is controlled using a setting (#1286, #1341).
- Restrict release build to only having one Loadout (#1416).
- Restrict release build to only show Stardew Valley (#1401).
- The CLI and how we handle multiple processes has been reworked (#1345).
- Logging to the console can be now enabled in the settings, it's disabled by default (#1351).
- A console window will no longer appear on Windows when starting the App (#1410).
- Package maintainers can choose to disable the bundled 7z binary (#1308).
- Loadouts can be removed and games can be unmanaged (#1259, #1279).
- Added an uninstaller (#1383).
Fixes
- Tons of UI fixes and small visual improvements.
- The login overlay has been fixed and will now appear correctly again (#1402).
- Telemetry has been reworked and fixed (#1293).
External Contributors
0.4.9.3
Merge pull request #1394 from erri120/feat/943-markdown-styling Update markdown styling
0.4.1
Changelog
v0.4.1
New Features
The highlight of this PR is the new Apply Diff View (#1202). You can now preview the changes made to disk before applying the Loadout:
Stardew Valley received three new diagnostics (#1171, #1168). These diagnostics use the current game version and a compatibility matrix to figure out if the currently installed SMAPI version is compatible:
This also includes our first "suggestion" diagnostic. This diagnostic will only appear if you have no mods installed and it will recommend a supported SMAPI version:
Other Changes
- A new settings backend was added in preparation for a settings UI. See #1182 for more details.
- The App will now use two logging files,
nexusmods.app.main.log
andnexusmods.app.slim.log
, instead of onenexusmods.app.log
to prevent log collisions between processes (#1167). - The default logging level has been changed from
Information
toDebug
for Release builds to make it easier to debug issues (#1209).
Fixes
- Fixed icons clipping in the left menu (#1165, #1169).
- Windows: Fixed Stardew Valley not launching with a console (#1135, #1205).
- Linux: Fixed NXM protocol registration when using an AppImage (#1149, #1150).
- Linux: Fixed whitespaces in desktop entry files (#1150, #1152).
- Linux: Fixed various issues related to launching the game through Steam (#1206, #1151).
External Contributors
NexusMods.App - v0.4
What's Changed
- Fix SMAPI apply order by @erri120 in #938
- Rename
GenericIcon
toUnifiedIcon
for clarity by @Al12rs in #947 - Add back Left Menus and Left Menu Navigation by @Al12rs in #939
- Update App UI Layout, add Workspaces and Tab names by @Al12rs in #950
- Add implicit conversion for
OpenPageBehvaior
entries by @Al12rs in #951 - Simplify crating
IconValue
s forUnifiedIcon
from XAML by @Al12rs in #953 - Add Support for Setting Execute Bit on Linux based on Extension by @Sewer56 in #949
- Fix build on main by @Al12rs in #955
- Adds support for OSX in the App by @halgari in #877
- Save and restore last window session by @erri120 in #954
- Update formatting and diagnostics by @erri120 in #970
- Fix formatting by @erri120 in #971
- Add initial Apply UI implementation by @Al12rs in #973
- Delete .github/workflows/code_quality.yml by @erri120 in #976
- Ingest required error by @halgari in #974
- Diagnostics using source generator by @erri120 in #975
- Update icons to use
UnifiedIcon
by @erri120 in #991 - Bump the microsoft group with 3 updates by @dependabot in #996
- Bump the avalonia group with 1 update by @dependabot in #997
- Update Language.pl.resx by @Patriot99 in #948
- Update Language.pl.resx by @Patriot99 in #957
- Color system updates by @Al12rs in #1000
- Add Style aliases for
Spacing
andCornerRadius
by @Al12rs in #1001 - More diagnostic improvements by @erri120 in #1004
- Rework Stardew Valley diagnostics by @erri120 in #1007
- Always override Stardew Valley launch file by @erri120 in #1013
- Fix mod install tests by @erri120 in #1009
- Apply fixes and refinements by @Al12rs in #1015
- Use
Verify
for mod installers by @erri120 in #1021 - Allow installers to set mod metadata by @erri120 in #1020
- Build error when missing submodule by @erri120 in #1024
- Fix spine buttons getting refreshed on every loadout change by @Al12rs in #1025
- Add diagnostic for missing SMAPI by @erri120 in #1026
- Override
GetVersion
for Stardew Valley by @erri120 in #1031 - Extract SMAPI version by @erri120 in #1033
- Link mod pages by @erri120 in #1034
- Reorder grid states by @erri120 in #1037
- Add project code style file by @erri120 in #1019
- Workspace documentation by @erri120 in #1046
- Spine items active state improvements by @Al12rs in #1047
- Dep updates by @Al12rs in #1051
- View Mod Contents First Draft & TreeDataGrid Improvements by @Sewer56 in #1023
- Update Language.pl.resx by @Patriot99 in #1022
- Update 'Mod Not Found' wording to match design by @Sewer56 in #1056
- Use single
UnifiedIcon
in Advanced Installer Views by @Sewer56 in #1057 - Update
GetDefaultOpenPageBehavior
by @erri120 in #1052 - More dep updates by @Al12rs in #1061
- Remove
UpdaterViewModelTests
by @erri120 in #1059 - Use GetDefaultOpenPageBehavior by @erri120 in #1062
- Add
RequiresNetworking
trait by @erri120 in #1063 - Downgrade the
Microsoft.CodeAnalaysis.CSharp*
packages by @erri120 in #1064 - Move IsExpanded to Child Items by @Sewer56 in #1053
- Fix crash on close by @Al12rs in #1068
- Fix imprecisions in the workspace system by @erri120 in #1070
- Add Title to Diagnostics by @erri120 in #1073
- Convert diagnostic messages into plain text by @erri120 in #1075
- Diagnostic Entries UI by @Al12rs in #1076
- Add Diagnostic Details Page by @Al12rs in #1081
- Rework diagnostic system by @erri120 in #1078
- Update Language.pl.resx by @Patriot99 in #1080
- Fix multi-window interaction with the single process work by @halgari in #972
- Update Language.pl.resx by @Patriot99 in #1086
- View diagnostics by @erri120 in #1082
- Added: A Writer Lock for SqliteDataStore by @Sewer56 in #1090
- Better
IDiagnosticWriter
API by @erri120 in #1085 - Improved: Apply PR Feedback on previous PR by @Sewer56 in #1092
- Fix game updates by @erri120 in #1095
- Add "Required dependency is disabled" diagnostic by @erri120 in #1098
- Run git builds on schedule by @erri120 in #1100
- Cancel login after set timeout by @erri120 in #1096
- Temp fix for advanced installer not starting by @Al12rs in #1101
- Update Language.pl.resx by @Patriot99 in #1107
- Update Language.pl.resx by @Patriot99 in #1108
- Use
Replay
instead ofPublish
by @erri120 in #1105 - Markdown writer by @erri120 in #1102
- Prototype: Eliminate TreeNodeVM by @Sewer56 in #1055
- Add markdown renderer by @erri120 in #1112
- Show diagnostic count by @erri120 in #1114
- Better "cancel download" window in Polish UI by @Patriot99 in #1111
- Various diagnostic UI improvements by @erri120 in #1115
- Fix steam launch on Linux by @erri120 in #1120
- Added: Support for Enhanced Tree Node Icons by @Sewer56 in #1072
- Changed: Don't use custom join in GamePathNode & Update Paths Library by @Sewer56 in #1067
- Move FileTreeView out of ModFiles by @Al12rs in #1117
- Don't include disabled SMAPI mods when counting by @erri120 in #1122
- Diagnostics UI update in Polish UI by @Patriot99 in #1125
- Run Git Builds on Fridays by @Al12rs in #1126
- FileTreeView Status Bar by @Al12rs in #1124
- Use
$OWD
instead ofEntryDirectory
by @erri120 in #1130 - Status bar update in the Polish UI by @Patriot99 in #1132
- Diagnostics for incompatible SMAPI mods by @erri120 in #1129
- Add Ingest button by @Al12rs in #1131
- Remove legacy benchmarks by @Sewer56 in #1136
- Update
MyGames
ui layout by @Al12rs in #1140 - Icons rework by @erri120 in https://github.com/Nexus...
NexusMods.App - v0.3
What's Changed
- Workspace cleanup by @erri120 in #754
- Ignore System.IdentityModel.Tokens.Jwt updates by @erri120 in #755
- Switch to .NET 8.0 by @halgari in #761
- Bump the microsoft group with 1 update by @dependabot in #763
- Made Before<,>.Other a required property by @Aragas in #764
- Miscellaneous fixes for .NET 8 by @erri120 in #767
- Polish Manual Installer UI by @Patriot99 in #765
- Improve image blurring by @erri120 in #775
- "New Tab"-page with a selection screen by @erri120 in #768
- Bump the system group with 1 update by @dependabot in #762
- Bump a lot of deps to their 8.0 versions by @halgari in #777
- ArchiveInstaller propagate properties by @Aragas in #778
- Use IGeneratedSortRule rules by default by @Aragas in #780
- Replace Vogen by @erri120 in #782
- adv-install-button-pl by @Patriot99 in #766
- Switches the app to a single process by @halgari in #779
- Bump the avalonia group with 1 update by @dependabot in #789
- Bump the nexusmods group with 2 updates by @dependabot in #788
- Panel resizing by @erri120 in #787
- Advanced installer rework by @Al12rs in #790
- Bump the system group with 1 update by @dependabot in #781
- ADR and Implementation of New Default App Locations by @Sewer56 in #783
- Remove ipc code by @halgari in #797
- Game Support: Bannerlord by @halgari in #799
- Game Support: Blade And Sorcery by @halgari in #798
- Fix #800 by @halgari in #802
- AdvancedInstaller.UI.pl by @Patriot99 in #803
- Fix Advanced installer incorrectly canceling when pressing Install by @Al12rs in #808
- Workspace Testing rework by @erri120 in #809
- Bump the avalonia group with 8 updates by @dependabot in #811
- Fix panel splitting by @erri120 in #813
- Add entire column/row by @erri120 in #814
- Workspace Icon Test update by @erri120 in #815
- Update README.md by @Pickysaurus in #821
- Bump TreeDataGrid package version 11.0.2 by @Al12rs in #822
- Upgrade GameFinder to 4.1.0 by @erri120 in #825
- Bump the nexusmods group with 2 updates by @dependabot in #819
- Update SyncFile path by @erri120 in #827
- Bump the microsoft group with 1 update by @dependabot in #818
- Bump the avalonia group with 1 update by @dependabot in #824
- UI styling rework by @Al12rs in #829
- Migrate to Trees 2.0 by @Sewer56 in #826
- Rework resizers by @erri120 in #839
- Use separate activity to report Chunk dl reading progress. by @Al12rs in #835
- Bump the nexusmods group with 1 update by @dependabot in #838
- Upgrade System.IdentityModel.Tokens.Jwt to 7.2.0 by @erri120 in #856
- Various Download fixes by @Al12rs in #857
- Workspace styling by @erri120 in #855
- Avoid download progress poll ticking while there are no active subscriptions by @Al12rs in #862
- Additional Abstraction Work by @Sewer56 in #869
- Disables parallel tests in the new test projects by @halgari in #876
- Update Deps by @halgari in #875
- FOMOD installer fixes by @Al12rs in #867
- Manually update dependencies (Skia, Avalonia.Diagnostics) by @Al12rs in #879
- Add Workspace and Tab controller by @erri120 in #872
- Migrate to new code signing tool by @erri120 in #863
- Fix argument by @erri120 in #880
- Add logging by @erri120 in #884
- Fix signing by @erri120 in #885
- Use java directly by @erri120 in #891
- Fix paths by @erri120 in #892
- Added AddPanelDropDown button by @Al12rs in #894
- code signing script fix (Move-File -> Move-Item) by @Al12rs in #896
- Try to fix Join-Path failures in Signing script by @Al12rs in #897
- Break apart Abstractions.Games by @halgari in #895
- Update Language.pl.resx by @Patriot99 in #874
- Fix DownloadSpine button hover showing the blue Arc by @Al12rs in #900
- Migrate Documentation to MkDocs by @Sewer56 in #902
- Delete .github/workflows/qodana_code_quality.yml by @halgari in #903
- Remove unused MkDocs workflow and Use Latest Workflow from Meta Repo by @Sewer56 in #905
- Update Paths package to get Temp Directories cleanup fix by @Al12rs in #910
- Workspace integration by @erri120 in #898
- Convert "Right Content" to Pages by @erri120 in #908
- Workspace integration improvements by @Al12rs in #912
- Update index.md by @Pickysaurus in #919
- Documentation updates by @Pickysaurus in #921
- Update README.md by @Pickysaurus in #922
- Update Stardew Valley docs by @erri120 in #913
- Fix SMAPI installer by @erri120 in #923
- Spine UI fixes (workspaces improvements) by @Al12rs in #926
- Typo fix by @Patriot99 in #927
- Update Language.pl.resx by @Patriot99 in #935
- Update dependencies by @Al12rs in #931
- Added: Basic File-level Deduplication in our FileStore by @Sewer56 in #914
- Add GenericIcon by @erri120 in #936
- Update deps before 0.4 release by @halgari in #937
Full Changelog: v0.2.1...v0.3
NexusMods.App - v0.2.1
What's Changed
Full Changelog: v0.2...v0.2.1
NexusMods.App - v0.2
What's Changed
- Two small stress test fixes by @halgari in #516
- Cleanup
AdvancedHttpDownloader
by @erri120 in #519 - Fix plugin parsing for non-Skyrim files by @erri120 in #529
- Avoid crashing on fomods that require plugin related checks by @Al12rs in #531
- Abstraction namespace by @halgari in #528
- Try and fix flakey tests by @halgari in #511
- FOMOD Cleanup by @erri120 in #532
- Add tests that cover installing most popular mods for Skyrim LE/SE by @Al12rs in #533
- Configure INI parser to support bethesda ini files by @Al12rs in #535
- Replace Moq with NSubstitute by @erri120 in #538
- Fix fomod install not working due to missing console renderer by @Al12rs in #540
- Allow games to set target path for Fomod installer by @Al12rs in #542
- Warnings cleanup by @Al12rs in #545
- Fix "File is not an archive" by @halgari in #543
- Add Working Directory to .nxm Handler & Remove Default Host Builder (fixes #513) by @Sewer56 in #555
- Upgrade GameFinder to 3.2.2 by @erri120 in #551
- Removed unused imports on entire solution by @Al12rs in #549
- Update Paths library to 0.1.2 and add back GamePath to main repo by @Al12rs in #557
- Fixed: DataModel Default Paths in AppConfig.json by @Sewer56 in #562
- Update guided installer abstraction and FOMOD installer by @erri120 in #541
- Added: Localization Backend & Documentation (fixes #452) by @Sewer56 in #563
- Switch to xxhash64 nuget by @halgari in #559
- Chunked seekable stream reader by @halgari in #566
- Disable flakey tests in CI by @halgari in #569
- Metrics opt-out UI functionality by @halgari in #568
- Hide remaining time in UI when paused by @JanuarySnow in #571
- GamePath FileTree support by @Al12rs in #570
- Installer Architecture Revamp by @halgari in #573
- Add banner for development builds (#567) by @JonathanFeenstra in #574
- Fixes in Skyrim LE docs by @JonathanFeenstra in #576
- Show product version instead of file version in development build banner by @JonathanFeenstra in #575
- Implemented localization support throughout the app by @Al12rs in #587
- More Skyrim docs fixes by @JonathanFeenstra in #594
- Fixed small bug for rendering quotes in Login overlay due to localization changes by @Al12rs in #595
- Add mention to Avalonia extensions for IDEs in docs by @Al12rs in #596
- Remove loadorder.txt section from SSE docs by @JonathanFeenstra in #597
- FOMOD validation for CLI by @Al12rs in #608
- Fix Login button being black due to localization typo by @Al12rs in #602
- Use static references for localization, remove live localization updates by @Al12rs in #613
- Fomod install fixes by @Al12rs in #617
- Update Language.pl.resx by @Patriot99 in #618
- FOMOD UI by @erri120 in #600
- Advanced Installer Documentation & Tasks by @Sewer56 in #628
- Remove analyzers by @halgari in #615
- Load remote and local images for FOMOD by @erri120 in #643
- Add dependabot by @erri120 in #648
- Bump the system group with 2 updates by @dependabot in #649
- Bump the microsoft group with 3 updates by @dependabot in #650
- Fix Avalonia base package in Dependabot config by @erri120 in #652
- Bump the avalonia group with 8 updates by @dependabot in #653
- Added: Base Implementation of AdvancedInstaller Core by @Sewer56 in #657
- Allow Games to define arbitrary GameFolderTypes (game path Ids) by @Al12rs in #656
- Updater functionality by @halgari in #644
- Add telemetry by @erri120 in #655
- Bump the avalonia group with 1 update by @dependabot in #664
- Update Language.pl.resx by @Patriot99 in #669
- Added: Basic Suggesions for AdvancedInstaller by @Sewer56 in #667
- OAuth Rework by @erri120 in #666
- Update GettingStarted.md to mention Avalonia extensions for Rider and VS by @Al12rs in #665
- Run games through Steam by @erri120 in #681
- Move back to nx archivemanager by @halgari in #659
- Switch to 1% threshold on codecov by @halgari in #683
- Ability to set your own game version in AGame by @Aragas in #684
- Bump the nexusmods group with 1 update by @dependabot in #687
- Update README.md by @cuzkey in #696
- Initial support for Workspaces and Panels (split and join) by @erri120 in #688
- Rework the Loadout Synchronizer by @halgari in #697
- Workspace Layout State and Image Generation by @erri120 in #704
- Tell codecov to ignore axaml and .g.cs by @halgari in #710
- Bump the microsoft group with 3 updates by @dependabot in #712
- Bump the avalonia group with 1 update by @dependabot in #713
- Workspace Tabs by @erri120 in #708
- Update Language.pl.resx by @Patriot99 in #720
- Add German translation by @erri120 in #723
- Update README.md by @UdayKharatmol in #724
- Update qodana_code_quality.yml by @halgari in #732
- Workspace pages and persistence by @erri120 in #731
- Implement "Standard Button" using Control Themes by @erri120 in #734
- Polish for FOMOD UI by @Patriot99 in #726
- Add Colors and Fonts resources by @erri120 in #736
- Bump the avalonia group with 7 updates by @dependabot in #729
- Adapt app to syncronizer by @halgari in #719
- Bump the nexusmods group with 1 update by @dependabot in #728
- Update README.md by @bhargavshirin in #745
- Bump the microsoft group with 2 updates by @dependabot in #742
- Update UI coding conventions and guidelines by @erri120 in #738
- Fix text negative margins due to outdated TextBox styling class. by @Al12rs in #749
- More UI coding conventions by @erri120 in #753
- Manual installer UI Layout and Styling by @Al12rs in #673
- Wire up the advanced installer to a button in the UI by @halgari in #756
- Fix tons of little issues found while running the app through the UI by @halgari in https://github.com/...
NexusMods.App - v0.1
Release for Milestone 1 - v0.1