Skip to content

Releases: CoolCat467/Neuro-API

Version 3.1.1

19 Dec 19:47
d7c578c

Choose a tag to compare

In this release, we fix the handling of typing.Literal in neuro_api.command.check_typed_dict and fix the type of neuro_api.server.ForceActionsData

Full Changelog: v3.0.0...v3.1.1

Version 3.0.0

19 Dec 12:15
a3f082c

Choose a tag to compare

Since the last release, breaking changes, depreciated AbstractNeuroAPIClient.read_raw_message has now been removed, depreciated neuro_api.command.convert_paramaterized_generic_union_items has now been removed, neuro_api.server.AbstractNeuroServerClient.handle_actions_force now takes the new priority argument, and basically anywhere that handles action forces has the priority argument, like neuro_api.command.actions_force_command.

What's Changed

  • Implement force action priority by @CoolCat467 in #18
  • Replace ValueError with warnings.warn for discouraged schema keys by @KTrain5169 in #19

Full Changelog: v2.3.0...v3.0.0

Version 2.3.0

12 Dec 06:29
dc1e416

Choose a tag to compare

Since the last release, updated dependencies and pre-commit hooks, biggest thing is bumping the Trio dependency to Trio v0.32.0, which lead to us dropping support for Python 3.9. Added Python 3.14 to the continuous integration testing matrix, and added missing pypi classifiers for Python 3.13 and 3.14, as we claim to officially support them.

Renamed neuro_api.command.convert_paramaterized_generic_union_items to neuro_api.command.convert_parameterized_generic_union_items and deprecated the original name, as it has a spelling error, please use the new name.

Introduced the new neuro_api.json_schema_types module courtesy of @KTrain5169 for type checking and apparently smarter text editors than IDLE will be able to help give people schema suggestions.

Typing change, neuro_api.command.Action objects now use neuro_api.json_schema_types.SchemaObject as their schema parameter, and since there is partial runtime type checking this may introduce new runtime errors if you are currently passing invalid schemas. Same for neuro_api.server.ActionSchema

What's Changed

  • Bump dependencies from commit 3f7972 by @github-actions[bot] in #11
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #12
  • Bump dependencies from commit 22f269 by @github-actions[bot] in #13
  • Bump dependencies from commit fd289e by @github-actions[bot] in #14
  • Add python 3.14 to CI and drop support for python 3.9 by @CoolCat467 in #17
  • Add converted JSON Schema TypedDict and use to typecheck actions by @KTrain5169 in #16

New Contributors

Full Changelog: v2.2.1...v2.3.0

Version 2.2.1

23 Sep 07:42
3f79725

Choose a tag to compare

Since the last release, updated dependencies and made server-class copies of deserialize_actions and check_action_names_type functions to make it possible for downstream implementations to override functionality.

Full Changelog: v2.2.0...v2.2.1

Version 2.2.0

20 Sep 03:43
1c5a642

Choose a tag to compare

If I were properly following the rules this should really be a major version change, but I don't want to do a major version bump so hope this will be fine. Breaking change, send_immediate_shutdown_command no longer has a bogus argument because that was a bad copy-paste. Argument didn't actually do anything anyways.

Full Changelog: v2.1.0...v2.2.0

Version 2.1.0

08 Sep 03:24
f3dcb2f

Choose a tag to compare

In this pull request, we implement the server side of the Neuro-API, intended for testing Neuro-API client functionality.
Updated documentation, added non-component based example, deprecated AbstractNeuroAPIClient.read_raw_message, use the new AbstractNeuroAPIClient.read_raw_server_message instead, added new client module that implements AbstractNeuroAPIClient that api.AbstractNeuroAPI now inherits from (hence read_raw_server_message change), updated CI system lockfile and pre-commit hooks.

Other than aforementioned depreciation, no breaking changes in this release as far as I am aware.

What's Changed

Full Changelog: v2.0.0...v2.1.0

Version 2.0.0

03 Sep 00:42
e99fad9

Choose a tag to compare

In this release, we make BREAKING CHANGES:

from neuro_api.event import NeuroAPIComponent
from neuro_api.api import AbstractNeuroAPI

needs to change to

from neuro_api.trio_ws import TrioNeuroAPIComponent
from neuro_api.trio_ws import TrioNeuroAPI

because we changed neuro_api.api.AbstractNeuroAPI to actually be decent for making subclasses by having abstract methods for write_to_websocket and read_from_websocket. This is intended for usecases where people want to use a different websocket library than trio-websocket, such as websockets or aiohttp. All trio-websocket specific code is in the new trio_ws module.

Other non-breaking changes:
Setup readthedocs documentation website

What's Changed

  • Bump dependencies from commit d2c502 by @github-actions[bot] in #9

Full Changelog: v1.1.0...v2.0.0

Version 1.1.0

19 Aug 03:45
a480feb

Choose a tag to compare

Since the last release, Relicensed the project under the GNU Lesser General Public License v3.0, fixed type issues, fixed packaging data, upgraded dependencies, relicenced examples under MIT licence, upgraded CI system, and other small improvements.

Would have been a patch release honestly if not for relicencing.
Considered making this a major release, but API standpoint-wise should have no functionality differences, so minor release it is.

What's Changed

  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #1
  • Dependency updates by @CoolCat467 in #2
  • Bump dependencies from commit 7b633d by @github-actions[bot] in #3
  • Bump dependencies from commit ec55cd by @github-actions[bot] in #4
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #5
  • Bump dependencies from commit ab6a00 by @github-actions[bot] in #6
  • Relicense under the GNU Lesser General Public License v3.0 by @CoolCat467 in #8

New Contributors

  • @pre-commit-ci[bot] made their first contribution in #1
  • @CoolCat467 made their first contribution in #2
  • @github-actions[bot] made their first contribution in #3

Full Changelog: v1.0.0...v1.1.0

Version 1.0.0

10 Feb 17:58
80177fd

Choose a tag to compare

Since the last release, added Tic Tac Toe game example, add get_registered method to AbstractNeuroAPI to allow public way to get currently registered actions, added documentation about what exceptions can be raised by several methods, fix crash when actions/reregister_all command sent and there are no actions currently registered, update typing on actions_unregister_command and actions_force_command to accept Sequence, breaking change, made register_neuro_actions callback function accept the full NeuroAction object instead of just the data field from said NeuroAction, allowing you have one handler that does different things depending on which action is calling it. Added register_temporary_actions_group, which allows you to easily create a group of temporary actions, where if even one of the group actions fire all of them will be unregistered, which is ideal for games with one of many actions per turn sort of deals. Made websocket_connect_failed synchronous, fixed HandshakeError handing in handle_connect, and updated dependencies.

Full Changelog: v0.0.0...v1.0.0

Version 0.0.0

03 Feb 23:21
f1af7eb

Choose a tag to compare