1
0
mirror of https://github.com/EDCD/EDMarketConnector.git synced 2025-04-15 08:40:34 +03:00

2522 Commits

Author SHA1 Message Date
Athanasius
c3663d8be8 Move the 'duplicate' constants into a new constants.py
1. So now they're only defined in one place.
2. config.py does an import of them, and `from config import ...` then
   chains through, so no need to update other users.
3. No need to ' # noqa E402' the killswitch/config imports now.
2021-01-18 14:43:45 +00:00
Athanasius
778668f680 Add --suppress-dupe-process-popup and move enforce_single_instance() call after 2021-01-18 14:35:46 +00:00
Athanasius
966599d82c
Merge pull request #844 from alterNERDtive/alterNERDtive-patch-1
PLUGINS.md: fix typo & example for `journal_entry`
2021-01-13 13:14:34 +00:00
alterNERDtive
589f0cf454
PLUGINS.md: fix typo & example for journal_entry 2021-01-13 14:06:27 +01:00
Athanasius
52193a9f07 Release 4.1.6: config version and changelog Release/4.1.6 2021-01-12 16:24:10 +00:00
Athanasius
6a8d950b87 Change all requirements to latest tested and use '==' on all.
Although the issue we've identified with GitHub builds isn't to do with
a python module version it's best to nail precise versions so we can be
sure it will build with the same as we've tested locally.
2021-01-11 19:28:56 +00:00
Athanasius
3d515ba919 protocol.py: Need from config import config Release/4.1.6-rc3 2021-01-11 18:20:58 +00:00
Athanasius
501f34836a update.py: Need to from config import config to access shutting_down 2021-01-11 17:48:47 +00:00
Athanasius
67e72f7477 Pre-Release 4.1.6-rc3: config version and changelog 2021-01-11 17:35:54 +00:00
Athanasius
c90392ab89 Merge branch 'release-4.1.6-rc2' into release-4.1.6-rc3 2021-01-11 17:24:42 +00:00
Athanasius
6831c45c59
Merge pull request #840 from EDCD/fix/678-check-for-shutdown-when-tk-event-generate
Avoid Tk event_generate() calls during shutdown.
2021-01-11 17:23:15 +00:00
Athanasius
247577c5f4 config: Also set Config.shutting_down to be @propety on win32 and linux 2021-01-11 17:13:31 +00:00
Athanasius
462cd25312 config: Make config.shutting_down() a property, and change 'callers' 2021-01-11 16:54:09 +00:00
Athanasius
111f445cac plugins/inara: Avoid Tk event_generate() calls during shutdown 2021-01-11 16:45:45 +00:00
Athanasius
bca0231dfc plugins/edsm: Avoid Tk event_generate() calls during shutdown 2021-01-11 16:45:26 +00:00
Athanasius
fb1c9fc034 update: Avoid Tk event_generate() calls during shutdown. 2021-01-11 16:44:11 +00:00
Athanasius
92d5657e21 protocol: Avoid Tk event_generate() calls during shutdown 2021-01-11 16:43:53 +00:00
Athanasius
4bddc4c0cb prefs: Avoid Tk event_generate() calls during shutdown 2021-01-11 16:43:33 +00:00
Athanasius
571f9665b3 monitor: Avoid Tk event_generate() calls during shutdown. 2021-01-11 16:43:07 +00:00
Athanasius
6cdc1dc20c hotkey: Avoid event_generate() calls during shutdown 2021-01-11 16:41:57 +00:00
Athanasius
cb9bd30a05 dashboard: Bail early from process() if in shutdown 2021-01-11 16:41:36 +00:00
Athanasius
50f520ab66 config: Change self.in_shutdown to be mangled.
I specifically made set_shutdown() *not* take an argument and only ever
set this true so no-one else can monkey with it, so might as well mangle
it too.
2021-01-11 15:53:12 +00:00
Athanasius
5175136419 plug.py: Avoid Tk event_generate() call from show_error() if in shutdown 2021-01-11 15:49:08 +00:00
Athanasius
08f1f3e7d9 EDMarketConnector: call config.set_shutdown() in AppWindow.onexit() 2021-01-11 15:37:47 +00:00
Athanasius
f92385244c config: Add class member and methods for signalling/checking shutdown status 2021-01-11 15:37:17 +00:00
Athanasius
decb889242 Pre-Release 4.1.6-rc2 version and changelog Release/4.1.6-rc2 2021-01-08 15:51:27 +00:00
Athanasius
e51bde44ef Shutdown: re-order the top level calls
1. The updater is in a thread/DLL and we don't want that firing part way
  through shutdown, so it gets asked to stop first.
2. Then plugins, so they're out of the way and we won't have already
  stopped something they might rely on.
3. Hotkey after that to head off the user triggering something via them.
4. Now stop the programmatic input from Journal files (including
   Status.json).
5. Frontier auth handling.
6. And then anything else.
2021-01-08 15:44:06 +00:00
Ash Holland
590cd608d3 Fix logging from mangled methods where class name starts with "_"
Python's name-mangling rules are quite complex. Previously, EDMC was
incorrectly mangling names where the class name starts with one or more
underscores; if the class name starts with any underscores, they should
be removed before prepending to the identifier being mangled. If the
class name contains *only* underscores, no mangling should be performed.
2021-01-08 15:32:42 +00:00
Athanasius
5776149d5d
Merge pull request #835 from EDCD/fix/834/cease-journal-parse-on-shutdown
Bail out of Journal monitoring during shutdown
2021-01-08 15:14:09 +00:00
Athanasius
90ddd4e1e3 plugins: Log plugin names as we ask them to stop, and when we're done with them all
This should point the finger at any plugin(s) that aren't stopping
properly.  Well, at least those that are hanging *in* their
`plugin_stop()`.
2021-01-08 14:56:22 +00:00
Athanasius
81974f66ec monitor/dashboard: move away from if __debug__
This includes changing one print_exc() to logger.exception()
2021-01-08 14:56:22 +00:00
Athanasius
be18f36e54 EDMarketConnector: Bail in AppWindow.journal_entry if monitor.thread is None
monitor.thread should only be none when there's a <<JournalEvent>> to
process if we're in shutdown, in which case we do *not* want to be
processing journal events.
2021-01-08 14:56:22 +00:00
Athanasius
8a0a82fe43 monitor: Bail from get_entry() if self.thread is None
If there's no thread to have sent the message then we shouldn't care
about it as this means we're in shutdown.
2021-01-08 14:56:22 +00:00
Athanasius
95b87f5b7b monitor: Detect shutdown and bail in log reading loop
This should mean not even generating <<JournalEvent>> Tk events once
self.thread == None.
2021-01-08 14:56:22 +00:00
Athanasius
f3e87f9c24 Merge branch 'release-4.1.6-rc1' into main 2021-01-08 14:55:56 +00:00
Athanasius
bc7d6defed
Merge pull request #827 from EDCD/fix/main-push-checks
Replace python checks with jq in workflow
2021-01-05 15:22:29 +00:00
A_D
d58d831ebe
Replace python checks with jq in workflow
Also makes sure that pushes to main ARE checked
2021-01-05 17:20:21 +02:00
Athanasius
207bb9920f 4.1.6-rc1: version bump and changelog Release/4.1.6-rc1 2021-01-05 15:01:09 +00:00
A_D
525f0b05e7 Added doctest 2021-01-05 14:34:52 +00:00
A_D
416b73bc3b Modified location of state updates 2021-01-05 14:34:52 +00:00
A_D
13f7b62fe8 Added cargoJSON to state docs 2021-01-05 14:34:52 +00:00
A_D
1be723e249 Added additional doccumentation 2021-01-05 14:34:51 +00:00
A_D
b04b39fa8a Fix multiple missions with the same cargo type
A user can collect multiple missions with the same mission cargo, which
is added to the cargo.json as distinct entries. Previously we would take
the last number as the total, leading to invalid counts (and possibly
negative counts).

This adds a method to sum cargo entries based on the cargo name. It also
adds a field on status to access the original cargo JSON data.

Fixes #817
2021-01-05 14:34:51 +00:00
Athanasius
91e6583326
Merge pull request #812 from A-UNDERSCORE-D/fix/808-log-in-property-func
Added support for logging from properties
2021-01-05 14:27:59 +00:00
Athanasius
2b96004100 Merge branch 'stable' into main 2021-01-05 14:18:12 +00:00
Athanasius
c1dcd30280 PLUGINS.md: Be explicit about why plugin_prefs(...) -> Optional[tk.Frame] 2020-12-21 14:44:39 +00:00
A_D
1cb876c594
Added support for logging from properties
This is some best effort support for using logging in properties.

This works by using the (as suggested by reporter) inspect
`getattr_static` method, and failing that (as it can possibly fail),
wrapping a `getattr` in a try/catch for a RecursionError--don't want to
catch other things, probably best if that explodes on its own.

From there as the `property` object will not have location information,
we rebuild as best we can to an approximation of what the path would be.
With a healthy dash of defensive programming "Just in case".

I don't think that this will have any adverse effects to other logging
methods, as all the new code should only be touched if we hit a property
object.

Closes #808
2020-12-21 12:39:45 +02:00
Athanasius
a65d77a67e PLUGINS.md: Make the disctinction between "ShutDown" and "Shutdown" clear 2020-12-18 12:32:45 +00:00
Athanasius
4883c1606b Merge branch 'releases' into stable 2020-12-15 20:12:50 +00:00
Athanasius
819bb27997 4.1.5: appcast file update Release/4.1.5 2020-12-15 20:02:24 +00:00