Classes necessary to write a Neucore plugin.
Documentation can be found in the Neucore repository at https://github.com/tkhamez/neucore/blob/main/doc/Plugins.md.
For a list of plugins see https://github.com/tkhamez/neucore#plugins-and-related-software.
docker build --tag neucore-plugin .
docker run -it --mount type=bind,source="$(pwd)",target=/app --workdir /app neucore-plugin /bin/sh
- PHP 8.4 compatibility.
- Dropped PHP 8.0 support, minimum required version is now 8.1.0 (same as Neucore >=2.5.0).
This version needs Neucore version 2.2.0 or higher.
- Raised minimum required PHP version to 8.0.2, from 8.0.0.
- Update symfony/yaml to version 6, from 5.
- Added optional
groups
andmanagerGroups
parameter toNavigationItem
constructor. - Added
PluginConfiguration::$name
.
Breaking changes:
- All properties of
Data\CoreAccount
can now be null except for the new$playerId
and$playerName
properties. - Removed
Data\CoreRole::$identifier
.
Other changes:
- Added
Data\CoreEsiToken
class - Added
Data\CoreMemberTracking
class - Added
Data\CoreMovedCharacter
class - Added
Data\CoreAccount::$playerId
- Added
Data\CoreAccount::$playerName
- Added
Data\CoreCharacter::$playerName
- Added
Core\AccountInterface
- Added
Core\DataInterface
- Added
Core\FactoryInterface::getAccount()
- Added
Core\FactoryInterface::getData()
- Menu entries are now also allowed in the "Services" menu.
- Breaking: Added
GeneralInterface::command()
. - Added
PluginConfiguration::$active
. - Added
NavigationItem::$roles
.
- Added
CoreAccount::$groupsDeactivated
. - Added
CoreAccount::getMemberGroups()
.
This release adds (among others) a new "general" plugin type.
Breaking changes:
- Changed
ServiceInterface::__construct
signature. - Changed
ServiceInterface::request
signature. - Renamed
ServiceConfiguration
class toPluginConfiguration
and moved toNeucore\Plugin\Data
namespace. - Added
ServiceInterface::search
method. - Removed
ObjectProvider
(replaced by newFactoryInterface
object provided inServiceConfiguration::__construct
). - Moved
CoreCharacter
,CoreGroup
andServiceAccountData
toNeucore\Plugin\Data
namespace.
Other changes:
- Added plugin type "general".
- Added
GeneralInterface
for general (not service) plugins. - Added
FactoryInterface
. - Added
CoreAccount
andCoreRole
classes. - Removed "type" from plugin.yml (it's determined by the implemented interfaces).
- Added plugin.yml.
- Added
ObjectProvider::createHttpRequest
method.
- Added
ServiceInterface::onConfigurationChange()
. - Added
ObjectProvider
class withgetHttpClient
andgetSymfonyYamlParser
methods. - Dropped PHP 7.4 support, minimum required version is now 8.0.
- Allow psr/log version 1.1, 2 or 3.
- Raised minimum PHP version to 7.4.
- Added
ServiceInterface::moveServiceAccount()
.
- If
ServiceAccountData::$name
cannot be json-encoded the class will return an error message instead.
- Added
$groups
parameter toServiceInterface::request
- Renamed
ServiceAccountData::displayName
toname
- Added
$playerId
property toCoreCharacter
. - Added
STATUS_NONMEMBER
toServiceAccountData
. - Added
ServiceConfiguration
class. - Replaced
$configurationData
withServiceConfiguration
object inServiceInterface
constructor. - Removed
$groups
parameter fromServiceInterface::getAccounts()
- Added
$mainCharacter
parameter toServiceInterface::updateAccount()
. - Added
ServiceInterface::updatePlayerAccount()
. - Added
ServiceInterface::getAllPlayerAccounts()
. - Added
ServiceInterface::request()
.
- Added
$displayName
toServiceAccountData
.
- Added
$configurationData
argument to theServiceInterface
constructor.
- Added
ServiceInterface::getAllAccounts
- Require json extension in composer.json
- Initial release