Open
Conversation
Member
Collaborator
Author
|
I haven't been able to reproduce #1460 locally. Maybe if @Skydea777 or @JinJanODWan can confirm that this PR fixes it? If not it might be best to address #1460 in a follow u PR. |
252a233 to
a0182bf
Compare
This was referenced Dec 21, 2025
Collaborator
Author
|
I want to at least look into the following things before marking this ready to merge:
|
Collaborator
Author
|
I've resubmitted philippj/SteamworksPy/pull/91 as philippj/SteamworksPy/pull/114 |
ada489d to
17614f7
Compare
Collaborator
Author
|
This currently uses my branch of steamworkspy until philippj/SteamworksPy#116 is merged, at which point we can swap over. |
… detection Enhances the Steam Workshop mod update detection system with comprehensive diagnostic logging and improved error handling. Changes: - Add detailed timestamp comparison logging in filter_eligible_mods_for_update() showing human-readable dates, deltas, and timestamp sources - Add timestamp fallback to internal_time_updated when internal_time_touched unavailable - Enhance refresh_workshop_timestamps_via_steamworks() with detailed logging and statistics return value (total_mods, updated, failed, steam_unavailable) - Add user feedback dialog when Steam client unavailable explaining potential false positives from stale ACF timestamps - Add comprehensive test coverage for update detection edge cases The improved logging makes it easy to diagnose update detection issues by showing exact timestamp values and comparisons. The fallback logic and better error handling improve robustness when Steam is unavailable. Tested with 723 Workshop mods - successfully refreshed all timestamps via Steamworks API with no false positives. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
add notifications about steam availbility (fixes RimSort#1376)
050acc9 to
68ee8ec
Compare
Integrates Steam auto-launch functionality from PR RimSort#1637 with the current branch's singleton-based SteamworksInterface architecture and proper linux support. Steam can now be automatically launched on startup if not running, with user configuration. Features: - Platform-specific Steam executable detection (Windows, macOS, Linux) - Process-based Steam detection using psutil for accurate status checking - 45-second initial timeout with interactive user prompts to continue waiting - Configurable via Settings > Advanced > "Automatically launch Steam if not running" - Manual launch via Help > Launch Steam menu action - Disabled by default to avoid startup delays Implementation: - Added _find_steam_executable(), _is_steam_running(), and _launch_steam() utility functions to app/utils/steam/steamworks/wrapper.py - Added auto_launch_steam boolean setting to Settings model (default: False) - Added checkbox UI in SettingsDialog Advanced tab - Extended SteamStatusHandler with auto-launch logic and timeout handling - Added "Launch Steam" menu action to Help menu Bug fixes: - Fixed signal timing issue where steam_not_running emitted before SteamStatusHandler created by adding initialization check in __init__() - Fixed Help > Launch Steam showing warning dialog before launching by using direct _is_steam_running() check instead of check_steam_availability() - Fixed blocking dialog preventing immediate launch by removing pre-launch notification and only showing result dialogs
Collaborator
Author
|
updated to pull in features from #1637 but based on this SteamworksInterface architecture. Also fixes steam launching on linux and autostart setting |
…ngleton Merges upstream improvements: - CSV export refactored to separate utility module (RimSort#1646) - Steam integration validation only when checkbox enabled (RimSort#1645) - Enhanced translation guide with batch operations (RimSort#1643) - Enhanced translation helper with automated features (RimSort#1642) Conflict resolutions: - settings_controller.py: Adopted upstream's conditional Steam validation - csv_export_utils.py: Accepted upstream refactoring to separate module - acf_log_reader.py: Updated to use csv_export_utils import - .translation_cache.json: Excluded from version control, added to .gitignore - All translation files: Accepted upstream improvements All tests pass (322 tests), code quality checks pass. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
cebarks
added a commit
that referenced
this pull request
Dec 29, 2025
This commit completes the integration of PR #1623's QThreadPool-based Steamworks API with the CLI by adding proper Qt event loop support. Key changes: - Add QCoreApplication initialization to CLI build-db command for headless Qt support - Replace QThreadPool.waitForDone() with QEventLoop.exec() in ISteamUGC_GetAppDependencies - Ensures Qt signals are properly delivered from worker thread to main thread - Allows progress callbacks to function correctly in CLI context - Add QEventLoop to PySide6.QtCore imports Rationale: - QThreadPool signals require an event loop to deliver signals from worker threads - waitForDone() blocks without processing events, preventing signal delivery - QEventLoop.exec() processes events while waiting, enabling proper signal handling - QCoreApplication provides headless Qt support without GUI overhead This eliminates the need for multiprocessing (which caused broken pipe errors) and provides a single, unified code path for both GUI and CLI. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
What the status of this? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This refactors the steamworks integration heavily:
multiprocessingsteamworks api calls with a QT thread implementationSteamworksInterfaceinstance across all usecasesDownloadItem()call instead of unsubscribing and resubscribing which is much more consistent. (also fixesThis fixes:
Additional misc changes:
--onefilecompiled application; Implement ISteamUGC/GetAppDependencies (resubmit of #91) philippj/SteamworksPy#114Disclaimer: Claude Code was used to generate SOME of the code. HOWEVER, all changes and implementations were reviewed and double checked by an experienced human for accuracy.