1
0
mirror of https://github.com/EDCD/EDMarketConnector.git synced 2025-04-13 15:57:14 +03:00

2522 Commits

Author SHA1 Message Date
Athanasius
07566dbfec Translations: Add Korean to installer
* Added L10n/ko.strings file.
* Added Korean (ko, decimal 12) to installer languages.
2021-03-18 10:22:29 +00:00
Athanasius
9bcba49416 docs/Translations.md: Fix typo of .string(s) 2021-03-18 10:17:38 +00:00
Athanasius
2ddea7d4f1 Log when we detect edmc:// arg and attempt ShellExecute()
This is the code path for when something ignores the ddeexec registry
key and instead invokes EDMarketConnector.exe with the edmc://...
argument directly.

Our response is to try ShellExecute() to invoke the DDE path instead.
If the DDE path isn't set up (registry key
`Computer\HKEY_CLASSES_ROOT\edmc\shell\open\ddeexec` not present and
correct), then this will cause a loop of repeatedly invoking
EDMarketConnector.exe.

That key is inserted by the installer.  The only reasons for it to not
be there would be something blocking the installer from creating it or
something removing it after install.
2021-03-18 10:13:15 +00:00
Athanasius
d6e7cbce16 Suppress already_running_popup() if we have args.edmc 2021-03-18 09:54:24 +00:00
Athanasius
6ba01c7bc2 Translations: Add Korean 2021-03-18 09:42:54 +00:00
Athanasius
d9734a759d Specify 'edmc' argument to argparse
Else it complains that the Frontier Auth callback argument is an error.
2021-03-18 09:39:53 +00:00
Athanasius
a532f38e2e Extend EDCD copyright into 2021. 2021-03-17 17:34:06 +00:00
Athanasius
aff1cfa6c8 Release 4.2.2: appversion and changelog Release/4.2.2 2021-03-17 12:08:50 +00:00
Athanasius
e4a5b4a4f2
Merge pull request #919 from EDCD/fix/list-has-no-values-attr
Extend is_horizons() paranoia to type of ships['shipyard_list']
2021-03-17 12:03:17 +00:00
Athanasius
6bde36ad31 Extend is_horizons() paranoia to type of ships['shipyard_list']
The .values() is on this, so it also needs to be a dict.

I also made the logging of "FC or Damaged Station?" consistent
throughout this file.

Yes, we'll keep these as logger.debug() for now.
2021-03-17 11:26:34 +00:00
Athanasius
301e7e583f ChangeLog: Remembered to update translations Release/4.2.1 2021-03-15 19:27:26 +00:00
Athanasius
1eef5b86f3 Update translations 2021-03-15 19:25:40 +00:00
Athanasius
740d1bd38a Correct order of arguments to isinstance() 2021-03-15 19:21:17 +00:00
Athanasius
d13ebafcba ChangeLog: Point macOS people to the updated docs. 2021-03-15 19:15:46 +00:00
Athanasius
977fec25b0 Release 4.2.1: appversion and changelog 2021-03-15 19:11:27 +00:00
Athanasius
868cb97ffc
Merge pull request #916 from EDCD/fix/907/damaged-station-modules-is-list
plugins/eddn: Add paranoia about data in is_horizons()
2021-03-15 17:27:24 +00:00
Athanasius
2da5e0a666
Merge pull request #915 from A-UNDERSCORE-D/fix/908/capidata-not-dict
Ensured that CAPIData objects are JSON Serialisable
2021-03-15 17:14:08 +00:00
Athanasius
173cffdcfc Add extra logging to is_horizons() if things not as expected.
* Log the type(s) if not dict.
* Log if ships['shipyard_list'] isn't present, despite ships being a
  dict.
2021-03-15 17:06:26 +00:00
Athanasius
98be182922 plugins/eddn: Add paranoia about data in is_horizons()
A damaged station has `"modules": []`, so trips over modules.values().
2021-03-15 17:03:39 +00:00
A_D
fbe3e7a6e5
Ensured that CAPIData objects are JSON Serialisable
While it isnt directly an issue in main (right now), the fix applies
here forward, so we may as well do it here and not deal with a headache
later.
2021-03-15 18:53:20 +02:00
Athanasius
ec7e19b7c1 Merge branch 'release-4.2.1' 2021-03-15 16:47:55 +00:00
Athanasius
d39d052e13
Merge pull request #914 from EDCD/enhancement/909/extra-frontier-auth-logging
Add extra logging for Frontier Auth, especially via edmc://
2021-03-15 16:47:30 +00:00
Athanasius
09e93068ab Merge branch 'release-4.2.1' 2021-03-15 16:17:51 +00:00
Athanasius
7707a811cb Merge branch 'release-4.2.1' 2021-03-15 16:09:21 +00:00
Athanasius
fbcdf05e2b
Merge pull request #913 from EDCD/fix/910/journallock-when-dir-none
JournalLock: Check for journal_dir of None
2021-03-15 16:09:05 +00:00
Athanasius
f1c50faafa logger.exception() doesn't need exc_info 2021-03-15 15:58:18 +00:00
Athanasius
cc2395ca04 Add similar extra logging for localhost handler
* This also adjusts the logging in Session.auth_callback() because it
  can be called from either protocol.  Saying 'edmc://' there is
  misleading.
2021-03-15 12:13:28 +00:00
Athanasius
4f524a0a35 Add extra logging for Frontier Auth, especially via edmc:// 2021-03-15 12:07:39 +00:00
Athanasius
fa49159de5 JournalLock: Catch when journal_dir is None
* If it's None then set journal_dir_path to None as well.  Setting '' or
  nothing results in '.' (CWD), which could cause other issues.
* As we do this in three places, it's in a helper function.
* New JournalLockResult.JOURNALDIR_IS_NONE to signal this.
* Fix checking of return from obtain_lock() to specifically reference
  JournalLockResult.ALREADY_LOCKED.
2021-03-15 11:20:46 +00:00
Athanasius
2b18b9d859 Merge branch 'release-4.2.0' 2021-03-15 09:21:58 +00:00
Athanasius
1cd0392527 Record if JournalLock.obtain_lock() succeeded, use in release_lock()
In the scenario of the default Journals location not even existing the
user needs might update it to a network mount.  When they do so we
attempt, and fail, to unlock the old location, despite it not being
locked.

So now we have this boolean so we know if we should even attempt
unlocking.
2021-03-13 22:32:40 +00:00
Athanasius
60c67723ca Change JournalLock.obtain_lock() return to an Enum.
This way we can tell the difference between:

1. This process obtained the lock.
2. Another process has the lock.
3. We couldn't get the lock due to not being able to open the lock file
   read-write.

Case 3 is currently also returned if the configured journal directory
doesn't exist.  This will be the case on any MacOS system that never had
the game running.  Likely given the OS hasn't been supported for the
game in years now.
2021-03-13 22:32:33 +00:00
Athanasius
e76e76bbe4 Add MacOS pyobjc to requirements.txt 2021-03-13 22:30:24 +00:00
Athanasius
84590720ef journal_lock: Revert to deprecated config.get() method
Those changes are only in `develop` at this stage.
Release/4.2.0
2021-03-12 12:52:15 +00:00
Athanasius
c565422b54 Actually add journal_lock.py into this branch
I'd `git show develop:journal_lock.py > journal_lock.py` a copy in
before, but forgot to commit it, and then removed it when checking out
another branch complained.  D'oh!
2021-03-12 12:49:17 +00:00
Athanasius
c14dc1fb1d 4.2.0: Additional changelog entry about "CAPI: No commander data returned" 2021-03-12 12:44:39 +00:00
Athanasius
5b1bd01c56 Release 4.2.0: appversion and changelog 2021-03-12 12:39:42 +00:00
Athanasius
734ef96def Merge branch 'release-4.2.0-beta3' 2021-03-09 12:45:37 +00:00
Athanasius
773629afbe Pre-Release 4.2.0-beta3: version and changelog Release/4.2.0-beta3 2021-03-09 12:43:48 +00:00
Athanasius
a6939c77d9 Backport of fix/891/force-localserver-for-auth_fix-journallock-import
* Move JournalLock into its own file.
2021-03-09 12:37:59 +00:00
Athanasius
4658b267fb PLUGINS: Document that CargoJSON isn't initially populated.
Blame Frontier for deciding to put this in-Journal on the first event at
login, but in the separate file after that.
2021-03-09 12:27:00 +00:00
Athanasius
038d16671c Correct URL format Release/4.2.0-beta2 2021-03-06 19:16:56 +00:00
Athanasius
875ccd08f5 Document that GitHub renders runas command correctly 2021-03-06 19:12:12 +00:00
Athanasius
9d816eaa79 un-double the blackslashes in changelog 2021-03-06 19:09:41 +00:00
Athanasius
c461f5d45b 4.2.0-beta2: changelog: Attempt to cite actually tested runas command 2021-03-06 19:07:04 +00:00
Athanasius
8052998658 Pre-Release 4.2.0-beta2: version and changelog 2021-03-06 18:55:35 +00:00
Athanasius
71858357eb CAPI: Log if no commander in profile() data 2021-03-06 18:54:24 +00:00
Athanasius
67a91cf7d1 CAPI: Handle when we get no 'commander' in returned data.
I was testing the new Steam or Epic CAPI auth.  My EGS account hasn't
yet been used, so has no commander attached.  EDMC thinks the auth has
succeeded in this case, but hitting 'Update' causes it to error because
the returned data is empty.

So, add some checks for lack of 'commander' key and a specific message
"CAPI: No commander data returned" for status line.

Without this there's a KeyError exception thrown, causing the status
line to just get 'commander' in it, which isn't helpful.
2021-03-06 18:54:18 +00:00
Athanasius
5f3bd9be71 Add Steam and EGS to Frontier Auth audiences. 2021-03-06 18:54:12 +00:00
Athanasius
79ad7a596a Pre-Release 4.2.0-beta1: version and changelog Release/4.2.0-beta1 2021-03-06 11:09:05 +00:00