github EDCD/EDMarketConnector Release/5.3.0-beta7
Pre-Release 5.3.0-beta7

pre-release2 years ago

Pre-Release 5.3.0-beta7

NB: Due to this issue with GitHub's Actions
we were unable to build this version on GitHub. THE INSTALLER FOR THIS
RELEASE WAS BUILT ON A DEVELOPER'S OWN MACHINE. THERE IS NO REASON TO BELIEVE
THAT THIS IN ANY WAY INCREASES THE RISK OF IT ACTUALLY CONTAINING MALWARE.

As has sadly become routine now, please read
our statement about malware false positives
affecting our installers and/or the files they contain. We are as confident
as we can be, without detailed auditing of python.org's releases and all of
the py2exe source and releases, that there is no malware in the files we make
available.

  • We now test and build using Python 3.10.2. We do not yet make use of any
    features specific to Python 3.10 (or 3.9). Let us restate that we
    absolutely reserve the right to commence doing so.

  • "File" -> "Status" will now show the new Odyssey ranks, both the new
    categories and the new 'prestige' ranks, e.g. 'Elite I'. Closes
    #1369.

  • Running EDMarketConnector.exe --reset-ui will now also reset any changes to
    the application "UI Scale" or geometry (position and size). Closes
    #1155.

  • We now use UTC-based timestamps in the application's log files. Prior to
    this change it was the "local time", but without any indication of the
    applied timezone. Each line's timestamp has UTC as a suffix now. We
    are assuming that your local clock is correct and the timezone is set
    correctly, such that Python's time.gmtime() yields UTC times.

    This should make it easier to correlate application logfiles with in-game
    time and/or third-party service timestamps.

  • All communication with remote web servers and APIs now uses the same custom
    "User-Agent" header to make attribution to this application clear.

  • The process used to build the Windows installers should now always pick up
    all the necessary files automatically. Prior to this we used a manual
    process to update the installer configuration which was prone to both user
    error and neglecting to update it as necessary.

  • If the application fails to load valid data from the NavRoute.json file
    when processing a Journal NavRoute event, it will attempt to retry this
    operation a number of times as it processes subsequent Journal events.

    This should hopefully work around a race condition where the game might
    not have yet updated NavRoute.json at all, or has truncated it to empty,
    when we first attempt this.

    We will also now NOT attempt to load NavRoute.json during the startup
    'Journal catch-up' mode, which only sets internal state.

    Closes #1348.

  • Inara: Use the <journal log>->Statistics->Bank_Account->Current_Wealth
    value when sending a setCommanderCredits message to Inara to set
    commanderAssets.

    This should cause Inara and EDMC to agree on the Commander's current total
    assets credits figure, and thus prevent it bouncing between two values.

    Closes #1401.

  • Inara: Send a setCommanderRankPilot message when the player logs in to the
    game on-foot. Previously you would HAVE to be in a ship at login time
    for this to be sent.

    Thus, you can now relog on-foot in order to update Inara with any Rank up
    or progress since the session started.

    Closes #1378.

  • Inara: We will now send the new idea of "credits in the Commander's wallet"
    when the delta from the last sent value is either 5% or at least
    10 million. It used to require a strict 5% difference, which meant needing
    very large deltas if you had a large credit balance.

    The intention of the 5% is so that newer/poorer commanders still get
    updates at an acceptable frequency, with the 10 million alternative trigger
    allowing richer commanders to also experience more frequent updates than
    was previously the case.

    Close #1255.

  • Inara: You should once more see updates for any materials used in
    Engineering. The bug was in our more general Journal event processing
    code pertaining to EngineerCraft events, such that the state passed to
    the Inara plugin hadn't been updated.

    Such updates should happen 'immediately', but take into account that there
    can be a delay of up to 35 seconds for any data sent to Inara, due to how
    we avoid breaking the "2 messages a minute" limit on the Inara API.

    Closes #1395.

  • EDDN: We now compress all outgoing messages. This might help get some
    particularly large navroute messages go through.

    If any message is now rejected as 'too large' we will drop it, and thus
    not retry it later. The application logs will reflect this.

    NB: The EDDN Gateway was updated to allow messages up to 1 MiB in size
    anyway. The old limit was 100 KiB.

    Closes #1390.

  • EDDN: In an attempt to diagnose some errors observed on the EDDN Gateway
    with respect to messages sent from this application some additional checks
    and logging have been added.

    NB: After some thorough investigation it was concluded that these EDDN
    errors were likely the result of long-delayed messages due to use of
    the "Delay sending until docked" option.

    There should be no functional changes for users. But if you see any of
    the following in this application's log files PLEASE OPEN
    AN ISSUE ON GITHUB
    with all the requested information
    , so that we can correct the relevant
    code:

    • No system name in entry, and system_name was not set either! entry: ...
    • BodyName was present but not a string! ...
    • post-processing entry contains entry ...
    • this.body_id was not set properly: ...
    • system is falsey, can't add StarSystem
    • this.coordinates is falsey, can't add StarPos
    • this.systemaddress is falsey, can't add SystemAddress
    • this.status_body_name was not set properly: ...

    You might also see any of the following in the application status text
    (bottom of the window):

    • passed-in system_name is empty, can't add System
    • CodexEntry had empty string, PLEASE ALERT THE EDMC DEVELOPERS
    • system is falsey, can't add StarSystem
    • this.coordinates is falsey, can't add StarPos
    • this.systemaddress is falsey, can't add SystemAddress

    Ref: #1403
    #1393.

Plugin Developers

  • We now have an .editorconfig file which will instruct your editor/IDE to
    change some settings pertaining to things like indentation and line wrap,
    assuming your editor/IDE supports the file.

    See Contributing.md->Text formatting.

  • As noted above, prior to this version we weren't properly monitoring
    EngineerCraft events. This caused the state passed to plugins to not
    contain the correct 'materials' (Raw, Manufactured, Encoded) counts.

  • config.py has been refactored into a sub-directory, with the per-OS code
    split into separate files. There shouldn't be any changes necessary to
    how you utilise this, e.g. to determine the application version.

    All forms of any import statement that worked before should have
    unchanged functionality.

  • We now include FDevIDS as a
    sub-repository, and use its files directly for keeping some game data up to
    date. This should hopefully mean we include, e.g. new ships and modules
    for loadout exports in a more timely manner.

    Developers of third-party plugins should never have been using these files
    anyway, so this shouldn't break anything for them.

  • We will now include in the Windows installer all of the files that py2exe
    places in the build directory. We still do not yet include all of the
    Python 'stdlib', so open an issue on GitHub if something you need is
    missing.

Don't miss a new EDMarketConnector release

NewReleases is sending notifications on new releases.