Commit Graph
65 Commits
Author SHA1 Message Date
David Sangrey f345dc6715 [#559] Prevent EDMC Crash -> No Update 2026-01-03 21:21:12 -05:00
David Sangrey 3545f9e8d7 [#2572] Plugin Browser First Pass 2025-12-26 23:20:17 -05:00
David Sangrey 4112a2110b [Minor] Improve Local File Updater
This helps with speed and prevents blocking of EDMC load.
2025-12-26 13:48:12 -05:00
David Sangrey 08046185d5 Add Master Plugin List Dev Endpoint 2025-12-25 18:26:59 -05:00
David Sangrey f61b319fcd [#2570] Datafile Updater 2025-12-25 02:27:12 -05:00
David Sangrey beb68efae8 [2568] Fix Ships JSON Typo 2025-12-25 01:36:24 -05:00
David Sangrey ab5c8ac6c6 [2440] Fix Updater Race Condition 2025-12-07 14:05:48 -05:00
David Sangrey 0994f1351b [#2440] Refactor Updater 2025-11-11 21:47:02 -05:00
David Sangrey aeed31acd1 [Minor] Add Back Pass
Stylistic choice after discussion in Discord

Signed-off-by: David Sangrey <rixxan@hullseals.space>
2025-04-12 12:23:18 -04:00
David Sangrey 336c627c07 [#1822] Better Update Checks
Also simplifies some if-else checks and sets up cleaner handling of the requests response
2025-04-11 19:55:01 -04:00
David Sangrey 5d43388439 [RELEASE] 5.11.1 2024-06-09 17:26:19 -04:00
David Sangrey 2f6e9fa4c2 [2251] Use Pathlib 2024-06-06 19:41:10 -04:00
David Sangrey dd8b18cbae [2251] Clarify Bundle Update Error Msg 2024-06-06 18:49:12 -04:00
David Sangrey 1930930854 [2251] Add Temp Local Check 2024-06-06 18:34:17 -04:00
David Sangrey 79bb416fe1 [2251] No Ouroboros CSVs please 2024-06-06 18:16:27 -04:00
David Sangrey 1f92c0cdfb [2251] Remember the File May Not Exist 2024-06-06 18:08:03 -04:00
David Sangrey 76c94bfdb9 [2251] Update FDEVID Timeout 2024-06-06 17:56:19 -04:00
David Sangrey 3209b4e1fb [2251] ResPath Update 2024-06-06 17:25:51 -04:00
David Sangrey 264d359a29 Merge branch 'develop' into enhancement/519/add-beta 2024-05-14 18:00:36 -04:00
David Sangrey 2686b23b3b Merge branch 'develop' into enhancement/1801/FDEV-ID-Updater 2024-05-13 20:21:42 -04:00
David Sangrey b6e373decd [#519] Framework Beta Update Track 2024-05-03 21:34:03 -04:00
David Sangrey 960fb2dc82 [1808] Add Folder If Not Exist 2024-04-28 15:34:02 -04:00
David Sangrey af207f60e8 [1801] FDEV ID Local Updater
This removes the FDEV ID Submodule, and instead hands over responsibility for maintaining the fdev id files to the internal system updater. Instead of the full submodule, we only pull the two files we need.
2024-04-27 20:10:09 -04:00
David Sangrey 080d9f98f2 [1812] Handover Translations 2024-04-22 17:33:28 -04:00
David Sangrey 3c6ea3c932 [Minor] Comment Clarify 2024-04-05 17:50:30 -04:00
David Sangrey 016fb96e06 [2186] General Cleanup 2024-03-27 22:01:49 -04:00
David Sangrey 57cd75e75e [2186] Additional Files 2024-03-27 19:39:51 -04:00
David Sangrey 0b90ca7708 [Minor] More Type Hints 2024-01-05 15:39:26 -05:00
David Sangrey 881c94a619 [Lang] Update Lang Comment 2024-01-04 15:22:57 -05:00
David Sangrey 41b879716f [2140] Translate Newver Str 2024-01-04 15:22:50 -05:00
David Sangrey b2d5e13465 [2051] Update Supporting Files
Not touching any of the big ones, but some clarification updates to many of the supporting files.
2023-11-17 11:33:26 -05:00
Athanasius 449e3e4ddc update.py: Log when internal check finds no new version
It just makes quick debugging easier.
2022-12-30 18:13:57 +00:00
Athanasius 04145146d7 update.py: Finaly mypy pass
* It's possible the `xml` code could be changed to make types work.  But
  the code works, ignore types on those calls.
2022-12-04 15:12:46 +00:00
Athanasius 74ebba20b4 update.py: Remove unused 'global root' & some more typing
`global root` was never removed after `self.root` became a thing.
2022-12-04 15:08:38 +00:00
Athanasius e419e6dca0 update.py: Technically Updater.root can be None, so check this
The only current users of the code that blindly uses `self.root` are for
the GUI application, but let's add the checks anyway.
2022-12-04 14:56:58 +00:00
Athanasius 2ac055e8f0 update.py: Yes, we have to use .nametowidget()
'status' is a child of 'edmarketconnector', not of `self.root`.  And if
we were to do `self.root.children['edmarketconnector'].children['status']`
then we might as well use `.nametowidget()`.
2022-12-04 14:49:51 +00:00
Athanasius eab2f35360 update.py: Minor whitespace correction 2022-12-04 14:43:00 +00:00
Athanasius eefb56c2c0 update.py: Check appcast version is correct platform 2022-12-04 14:30:37 +00:00
Athanasius b38044928a update.py: Now passes flake8
**BUG FOUND**
The code in `Updater.check_appcast()` assumes that
`semantic_version.SimpleSpec.select()` will say "5.6.1 is an upgrade for
this 5.6.0".  But it doesn't.  It's looking for *matches*.

So this needs to be a proper loop/compare *and* should only take into account
options *for the current platform*.
2022-12-04 14:23:53 +00:00
Athanasius 3c47b6c782 Fix semantic_version appversion issues in update.py and setup.py 2021-04-01 14:46:43 +01:00
Athanasius 5de4950fba Change config.appversion() to return semantic_version.Version
As we're changing it to a function at this stage anyway, it might as
well return this type, not a str.
2021-04-01 14:46:43 +01:00
Athanasius 2f9789afdd Update all code to use config.appversion() as a function
This *also* caught some instances where appversion_nobuild should
already have been used, so those were both changed and updated to a
function call.
2021-04-01 14:45:52 +01:00
Athanasius 501f34836a update.py: Need to from config import config to access shutting_down 2021-01-11 17:48:47 +00:00
Athanasius 462cd25312 config: Make config.shutting_down() a property, and change 'callers' 2021-01-11 16:54:09 +00:00
Athanasius fb1c9fc034 update: Avoid Tk event_generate() calls during shutdown. 2021-01-11 16:44:11 +00:00
Athanasius bd81f05514 Utilise 'return None' to reduce check_appcast() indentation 2020-07-19 12:06:59 +01:00
Athanasius 739dfec114 Only import tkinter if we're type checking. 2020-07-19 12:05:37 +01:00
Athanasius 35f573bc14 Updater class now used for all updates checking
* Updater.__init__() now takes 'provider' argument to specify if we use
 the internal checking code, or the available external code.
* EDMC.py changed to utilise this with internal provider.
* EDMarketConnector.py changed to use internal provider if not frozen,
 else the internal provider.
* Corrected the darwin/MacOS toggling of auto updates checking to actually
 use the Sparkle, not WinSparkle, API call.
* Updater.check_appcast() does the internal checking:
    * class EDMCVersion to hold the information.
    * Returns None on any error, or if it didn't find a newer version.
    * Returns an EDMCVersion object if it found a newer version.
2020-07-19 11:45:07 +01:00
Athanasius 76a6eec69d Updater.check_appcast() added to 'run from source' version
Tested as working with EDMarketConnector.py.
2020-07-19 11:45:07 +01:00
Athanasius af1c313dc3 update.py: Note to redo 'manual' version check 2020-07-19 11:45:07 +01:00