Releases: EDCD/EDMarketConnector
Release/5.2.2
We now test against, and package with, Python 3.9.8.
As a consequence of this we no longer support Windows 7.
This is due to Python 3.9.x itself not supporting Windows 7.
The application (both EDMarketConnector.exe and EDMC.exe) will crash on startup due to a missing DLL.
This should have no other impact on users or plugin developers, other than the latter now being free to use features that were introduced since the Python 3.7 series.
Developers can check the contents of the .python-version
file in the source (it's not distributed with the Windows installer) for the currently used version in a given branch.
This release adds one new feature and addresses some bugs. We've also updated to using Python 3.9.8.
-
Windows now has "minimize to system tray" support.
- The system tray icon will always be present. - There is a new option on the Settings > Appearance tab -
Minimize to system tray
. - When this new option is active, minimizing the application will also
hide the taskbar icon. - When the new option is not active, the application will minimize to the
taskbar as normal.
- The system tray icon will always be present. - There is a new option on the Settings > Appearance tab -
Bug Fixes
-
If a CAPI query failed in such a way that no
requests.Response
object
was made available we attempted to blindly dump the non-existent object. We now check that it actually exists, and log the specifics of the exception. -
A user experienced the game writing a NavRoute.json file without a
Route
array, which caused the application to attempt sending a badly formednavroute
message to EDDN. That message was then remembered and constantly retried.-
We now sanity check the NavRoute.json contents to be sure there is a
Route
array, even if it is empty. If it's not present no attempt to send the EDDN message will be made.If this scenario occurs the user will see a status line message
No 'Route' array in NavRoute.json contents
. -
For any EDDN message that receives a 400 status back we will drop it
from the replay log.
-
Release/5.2.1
Release 5.2.1
This release primarily addresses the issue of the program asking for Frontier authorization much too often.
- Actually utilise the Frontier Refresh Token when the CAPI response is "Unauthorized". The re-factoring of this code to make CAPI queries threaded inadvertently prevented this.
Thanks to all that reported this problem, helped track it down, and tested the release candidates.
Release/5.2.1-rc2
This fixes a code error that prevented caused some new debug code to cause CAPI queries to fail.
Release/5.2.1-rc1
DO NOT USE THIS PRE-RELEASE, IT HAS A BUG PREVENTING CAPI QUERIES FROM WORKING. Use https://github.com/EDCD/EDMarketConnector/releases/edit/Release%2F5.2.1-rc2 instead!
This release primarily addresses the issue of the program asking for Frontier authorization much too often.
- Actually utilise the Frontier Refresh Token when the CAPI response is "Unauthorized". The re-factoring of this code to make CAPI queries threaded inadvertently prevented this.
Release/5.2.0
-
We now test against, and package with, Python 3.9.7.
As a consequence of this we no longer support Windows 7.
This is due to Python 3.9.x itself not supporting Windows 7.
The application (both EDMarketConnector.exe and EDMC.exe) will crash on startup due to a missing DLL.This should have no other impact on users or plugin developers, other than the latter now being free to use features that were introduced since the Python 3.7 series.
Developers can check the contents of the
.python-version
file in the source (it's not distributed with the Windows installer) for the currently used version in a given branch.
Release 5.2.0
-
The 'Update' button is disabled if CQC/Arena is detected.
-
Frontier CAPI queries now run in their own thread. There should be no change in functionality for users. This affects both EDMarketConnector (GUI) and EDMC (command-line).
-
File
>Status
will now use cached CAPI data, rather than causing a fresh query. Currently if data has not yet been cached nothing will happen when trying to use this. -
Trying to use
File
>Status
when the current commander is unknown, or there is has been no CAPI data retrieval yet, will now result in the 'bad' sound being played and an appropriate status line message. -
File
>Save Raw Data
also now uses the cached CAPI data, rather than causing a fresh query. This will write an empty JSON{}
if no data is yet available. -
New docs/Licenses/ directory containing all relevant third-party licenses for the software this application uses.
-
Settings
>Output
>File Location
'Browse' button will now always be available, even if no output options are active. -
The 'no git installed' logging when running from source is now at INFO level, not ERROR. This will look less scary.
-
EDMarketConnetor command-line arguments have been re-ordered into logical groups for
--help
output. -
Support added for several new EDDN schemas relating to specific Journal events. The live EDDN server has been updated to support these.
Schema support added for:
codexentry/1
fssdiscoveryscan/1
navbeaconscan/1
navroute/1
scanbarycentre/1
-
If a message to EDDN gets an 'unknown schema' response it will NOT be saved in the replaylog for later retries, instead being discarded.
Bug Fixes
-
Pressing the 'Update' button when in space (not docked, not on a body surface) will no longer cause a spurious "Docked but unknown station: EDO Settlement?" message.
-
A bug preventing
--force-localserver-auth
from working has been fixed. -
horizons
andodyssey
flags should now always be set properly on all EDDN messages. Thehorizons
flag was missing from some.
Developers
-
Now built using Python 3.9.7.
-
New
journal_entry_cqc()
function for plugins to receive journal events specifically and only when the player is in CQC/Arena. This allows for tracking things that happen in CQC/Arena without pollutingjournal_entry()
. See PLUGINS.md for details. -
Command-line argument
--trace-all
to force all possible--trace-on
to be active. -
Contributing.md has been updated for how to properly use
trace_on()
. -
EDMC.(py,exe) now also makes use of
--trace-on
. -
EDMarketConnector now has
--capi-pretend-down
to act as if the CAPI server is down. -
Killswitches now have support for removing key/values entirely, or forcing the value. See docs/Killswitches.md for details.
-
state['Odyssey']
added, set fromLoadGame
journal event. -
You can now test against a different EDDN server using
--eddn-url
command-line argument. This needs to be the full 'upload' URL, i.e. for the live instance this ishttps://eddn.edcd.io:4430/upload/
. -
New command-line argument
--eddn-tracking-ui
to track the EDDN plugin's idea of the current BodyName and BodyID, from both the Journal and Status.json.
Release/5.2.0-beta3
-
Trying to use
File
>Status
when the current commander is unknown, or
there is has been no CAPI data retrieval yet, will now result in the 'bad'
sound being played and an appropriate status line message. -
Pressing the 'Update' button when in space (not docked, not on a body
surface) will no longer cause a spurious "Docked but unknown station: EDO
Settlement?" message.
Release/5.2.0-beta2
Pre-Release 5.2.0 beta2
- Don't save, for later retry, any EDDN messages that are met with 'unknown
schema' from the server. This should alleviate any "laggy UI" problems that
their accumulation can cause.
Release/5.2.0-beta1
Copyrights
Please see the docs/Licenses directory for copies of any
licenses for software we use with EDMarketConnector, either at runtime, or to
produce the Windows executables and installer.
-
We now test against, and package with, Python 3.9.7.
As a consequence of this we no longer support Windows 7.
This is due to
Python 3.9.x itself not supporting Windows 7.
The application (both EDMarketConnector.exe and EDMC.exe) will crash on
startup due to a missing DLL.This should have no other impact on users or plugin developers, other
than the latter now being free to use features that were introduced since the
Python 3.7 series.Developers can check the contents of the
.python-version
file
in the source (it's not distributed with the Windows installer) for the
currently used version in a given branch.
Pre-Release 5.2.0 beta1
-
Now built using Python 3.9.7.
-
Update
button is disabled if CQC/Arena is detected. -
Frontier CAPI queries now run in their own thread. There should be no
change in functionality for users. This affects both EDMarketConnector
(GUI) and EDMC (command-line). -
File
>Status
will now use cached CAPI data, rather than causing a fresh
query. Currently if data has not yet been cached nothing will happen when
trying to use this. -
File
>Save Raw Data
also now uses the cached CAPI data, rather than
causing a fresh query. This will write an empty JSON{}
if no data is
yet available. -
New docs/Licenses/ directory containing all relevant
third-party licenses for the software this application uses. -
Settings
>Output
>File Location
'Browse' button will now always be
available, even if no output options are active. -
The 'no git installed' logging when running from source is now at INFO
level, not ERROR. This will look less scary. -
EDMarketConnetor command-line arguments have been re-ordered into
logical groups for--help
output. -
Support added for several new EDDN schemas relating to specific Journal
events. Until the live EDDN server is updated (planned for 2021-10-21) you
will see minor error logging when this fails due to 'unknown schema'.Schema support added for:
codexentry/1
fssdiscoveryscan/1
navbeaconscan/1
navroute/1
scanbarycentre/1
Bug Fixes
-
A bug preventing
--force-localserver-auth
from working has been fixed. -
horizons
andodyssey
flags should now always be set properly on all
EDDN messages. Thehorizons
flag was missing from some.
Developers
-
New
journal_entry_cqc()
function for plugins to receive journal events
specifically and only when the player is in CQC/Arena. This allows
for tracking things that happen in CQC/Arena without polluting
journal_entry()
. See PLUGINS.md for details. -
Command-line argument
--trace-all
to force all possible--trace-on
to be
active. -
Contributing.md has been updated for how to properly use
trace_on()
. -
EDMC.(py,exe) now also makes use of
--trace-on
. -
EDMarketConnector now has
--capi-pretend-down
to act as if the CAPI
server is down. -
Killswitches now have support for removing key/values entirely, or forcing
the value. See docs/Killswitches.md for details. -
state['Odyssey']
added, set fromLoadGame
journal event. -
You can now test against a different EDDN server using
--eddn-url
command-line argument. This needs to be the full 'upload' URL, i.e. for
the live instance this ishttps://eddn.edcd.io:4430/upload/
. -
New command-line argument
--eddn-tracking-ui
to track the EDDN handling
code's idea of the current Journal and Status.json Body(Name|ID).
Release/5.1.3
-
We now test against, and package with, Python 3.9.6.
As a consequence of this we no longer support Windows 7.
This is due to Python 3.9.x itself not supporting Windows 7.
The application (both EDMarketConnector.exe and EDMC.exe) will crash on startup due to a missing DLL.This should have no other impact on users or plugin developers, other than the latter now being free to use features that were introduced since the Python 3.7 series.
Developers can check the contents of the
.python-version
file in the source (it's not distributed with the Windows installer) for the currently used version in a given branch.
Release 5.1.3
-
Attempt to flush any pending EDSM API data when a Journal
Shutdown
orFileheader
event is seen. After this, the data is dropped. This ensures that, if the user next logs in to a different commander, the data isn't then sent to the wrong EDSM account. -
Ensure a previous Journal file is fully read/drained before starting processing of a new one. In particular, this ensures properly seeing the end of a continued Journal file when opening the continuation file.
-
New config options, in a new
Privacy
tab, to hide the current Private Group, or captain of a ship you're multi-crewing on. These usually appear on theCommander
line of the main UI, appended after your commander name, with a/
between. -
EDO dockable settlement names with
+
characters appended will no longer cause 'server lagging' reports. -
Don't force DEBUG level logging to the plain log file if
--trace
isn't used to force TRACE level logging. This means logging to the plain log file will once more respect the user-set Log Level, as in the Configuration tab of Settings.As its name implies, the debug log file will always contain at least DEBUG level logging, or TRACE if forced.
(Plugin) Developers
-
New EDMarketConnector option
--trace-on ...
to control if certain TRACE level logging is used or not. This helps keep the noise down whilst being able to have users activate choice bits of logging to help track down bugs.See Contributing.md for details.
-
Loading of
ShipLocker.json
content is now tried up to 5 times, 10ms apart, if there is a file loading, or JSON decoding, failure. This should hopefully result in the data being loaded correctly if a race condition with the game client actually writing to and closing the file is encountered. -
config.get_bool('some_str', default=SomeDefault)
will now actually honour that specified default.
Pre-Release 5.1.3-beta1
-
We now test against, and package with, Python 3.9.6.
As a consequence of this we no longer support Windows 7.
This is due to Python 3.9.x itself not supporting Windows 7.
The application (both EDMarketConnector.exe and EDMC.exe) will crash on startup due to a missing DLL.This should have no other impact on users or plugin developers, other than the latter now being free to use features that were introduced since the Python 3.7 series.
Developers can check the contents of the
.python-version
file in the source (it's not distributed with the Windows installer) for the currently used version in a given branch.
Pre-Release 5.1.3-beta1
-
Attempt to flush any pending EDSM API data when a Journal
Shutdown
orFileheader
event is seen. After this the data is dropped. This ensures that, if the user next logs in to a different commander, the data isn't then sent to the wrong EDSM account. -
Ensure a previous Journal file is fully read/drained before starting processing of a new one. In particular this ensures properly seeing the end of a continued Journal file when opening the continuation file.
-
Don't force DEBUG level logging to the plain log file if
--trace
isn't used to force TRACE level logging. This means logging to the plain log file will once more respect the user-set Log Level, as in the Configuration tab of Settings.As its name implies, the debug log file will always contain at least DEBUG level logging, or TRACE if forced.
(Plugin) Developers
-
New EDMarketConnector option
--trace-on ...
to control if certain TRACE level logging is used or not. This helps keep the noise down whilst being able to have users activate choice bits of logging to help track down bugs.See Contributing.md for details.