Inutt f4e70dbe5b Add documentation for relative plugin imports
diff --git a/PLUGINS.md b/PLUGINS.md
index 6fd20ef9..71aaec7a 100644
--- a/PLUGINS.md
+++ b/PLUGINS.md
@@ -163,6 +163,19 @@ circular imports.
 For an example of how this is done, look at the code in `plugins/common_coreutils.py`
 and the usage of these functions in other core plugins.

+Plugins may import additional code modules from `load.py` in the usual way. Note
+that using an import statement like `import my_module` or `from my_module import
+foo` will only import one module with that name **across all plugins**. This can
+be used to create a shared library used by several plugins if used carefully,
+but may create a conflict if another plugin also has a module of the same name
+containing different code. For example if two plugins both contain a
+`widgets.py` file and both do `import widgets`, only one of the two modules will
+actually be imported.
+
+To avoid this issue, use a relative import statement such as `import .widgets`
+or `from .widgets import foo` to ensure that the module is loaded from the
+current plugin, even if the name conflicts with another plugin's code.
+
 ---

 ## Logging
2025-11-24 20:14:51 +00:00
2025-11-18 22:17:26 -05:00
2025-11-20 18:03:58 -05:00
2025-06-30 12:41:24 +00:00
2025-11-11 20:31:50 -05:00
2024-05-06 13:53:48 -04:00
2025-11-20 18:00:06 -05:00
2025-04-11 20:49:13 -04:00
2025-11-18 22:17:26 -05:00
2025-11-16 21:55:02 -05:00
2023-11-16 16:14:59 -05:00
2024-04-05 17:20:05 -04:00
2018-08-01 00:23:47 +01:00
2024-04-27 20:10:09 -04:00
2024-04-05 17:20:05 -04:00
2025-11-20 18:19:04 -05:00
2025-04-11 19:57:18 -04:00
2024-06-10 17:21:06 -04:00
2015-06-02 20:14:04 +01:00
2024-06-10 17:21:06 -04:00
2025-04-27 21:58:01 -04:00
2025-11-13 21:45:06 -05:00
2022-12-21 18:26:42 +00:00
2024-06-10 18:16:11 -04:00
2025-11-11 20:24:58 -05:00
2025-11-24 18:00:58 +00:00
2020-07-06 16:31:04 +01:00
2025-04-27 21:58:01 -04:00
2015-09-12 04:03:12 +01:00
2015-09-12 04:03:12 +01:00
2025-11-11 20:24:58 -05:00
2024-03-27 22:01:49 -04:00
2025-11-11 21:47:02 -05:00

Any questions or offers of help can be directed to the EDCD Discord #edmc channel:

Discord chat

Elite: Dangerous Market Connector (EDMC)

This application is only of use to PC players of the game Elite Dangerous (and its expansions). It won't work with PS4 or Xbox accounts.

It utilises the Journal files written by the game on the user's computer, together with data from the API Frontier Developments supplies in order to feed this data to various third party sites that the user may find useful.

See the Wiki documentation for more details.

Installation & Uninstall

Please see the Installation & Setup wiki page.

Running from source

Please see the Running from source wiki page.

Plugins

Plugins extend the behaviour of this app. See the Plugins wiki page for more information.

If you would like to write a plugin please see PLUGINS.md.

Troubleshooting

Please see the Troubleshooting wiki page.

Reporting a problem

Please report a problem as a new GitHub issue. See Reporting a problem for further guidance, including how to find the necessary log files to attach to the report.

Packaging for distribution

Please see docs/Releasing.md.

Disclaimer

This app uses the “Companion” web API that Frontier originally supplied for their Elite Dangerous iOS app and now support for third-party apps. If that API ceases to function in the future then much of this application's functionality will be curtailed (although it could still utilise Journal files).

Acknowledgements

Please see the Acknowledgements wiki page.

License

Copyright © 2015-2019 Jonathan Harris, 2020-2024 EDCD

Licensed under the GNU Public License (GPL) version 2 or later.

S
Description
Downloads commodity market and other station data from the game Elite: Dangerous for use with all popular online and offline trading tools.
Readme GPL-2.0
45 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 99.7%
Shell 0.3%