kopia lustrzana https://github.com/Yakifo/amqtt
prepare for 0.11.3 release (#292)
* updating docs, version # and changelog for release 0.11.3pull/293/head^2
rodzic
0d678dfa7c
commit
b4d58c9130
2
Makefile
2
Makefile
|
@ -1,7 +1,7 @@
|
|||
# Image name and tag
|
||||
IMAGE_NAME := amqtt
|
||||
IMAGE_TAG := latest
|
||||
VERSION_TAG := 0.11.3-rc.1
|
||||
VERSION_TAG := 0.11.3
|
||||
REGISTRY := amqtt/$(IMAGE_NAME)
|
||||
|
||||
# Platforms to build for
|
||||
|
|
15
README.md
15
README.md
|
@ -14,10 +14,21 @@
|
|||
## Features
|
||||
|
||||
- Full set of [MQTT 3.1.1](http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html) protocol specifications
|
||||
- Communication over TCP and/or websocket, including support for SSL/TLS
|
||||
- Communication over multiple TCP and/or websocket ports, including support for SSL/TLS
|
||||
- Support QoS 0, QoS 1 and QoS 2 messages flow
|
||||
- Client auto-reconnection on network lost
|
||||
- Custom functionality expansion; plugins included: authentication, `$SYS` topic publishing, session persistence
|
||||
|
||||
- Plugin framework for functionality expansion; included plugins:
|
||||
- `$SYS` topic publishing
|
||||
- AWS IOT-style shadow states
|
||||
- x509 certificate authentication (including cli cert creation)
|
||||
- Secure file-based password authentication
|
||||
- Configuration-based topic authorization
|
||||
- MySQL, Postgres & SQLite user and/or topic auth (including cli manager)
|
||||
- External server (HTTP) user and/or topic auth
|
||||
- LDAP user and/or topic auth
|
||||
- JWT user and/or topic auth
|
||||
- Fail over session persistence
|
||||
|
||||
## Installation
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
"""INIT."""
|
||||
|
||||
__version__ = "0.11.3-rc.1"
|
||||
__version__ = "0.11.3"
|
||||
|
|
|
@ -217,6 +217,9 @@ class BufferWriter(WriterAdapter):
|
|||
This adapter simply adapts writing to a byte buffer.
|
||||
"""
|
||||
|
||||
def get_ssl_info(self) -> ssl.SSLObject | None:
|
||||
return None
|
||||
|
||||
def __init__(self, buffer: bytes = b"") -> None:
|
||||
self._stream = io.BytesIO(buffer)
|
||||
|
||||
|
|
|
@ -1,5 +1,29 @@
|
|||
# Changelog
|
||||
|
||||
## 0.11.3
|
||||
|
||||
* Structural elements for the 0.11.3 release https://github.com/Yakifo/amqtt/pull/265
|
||||
* Release Candidate Branch for 0.11.3 https://github.com/Yakifo/amqtt/pull/272
|
||||
* update the configuration for the broker running at test.amqtt.io https://github.com/Yakifo/amqtt/pull/271
|
||||
* Improved broker script logging https://github.com/Yakifo/amqtt/pull/277
|
||||
* test.amqtt.io dashboard cleanup https://github.com/Yakifo/amqtt/pull/278
|
||||
* Structured broker and client configurations https://github.com/Yakifo/amqtt/pull/269
|
||||
* Determine auth & topic access via external http server https://github.com/Yakifo/amqtt/pull/262
|
||||
* Plugin: authentication against a relational database https://github.com/Yakifo/amqtt/pull/280
|
||||
* Fixes #247 : expire disconnected sessions https://github.com/Yakifo/amqtt/pull/279
|
||||
* Expanded structure for plugin documentation https://github.com/Yakifo/amqtt/pull/281
|
||||
* Yakifo/amqtt#120 confirms : validate example is functioning https://github.com/Yakifo/amqtt/pull/284
|
||||
* Yakifo/amqtt#39 : adding W0718 'broad exception caught' https://github.com/Yakifo/amqtt/pull/285
|
||||
* Documentation improvement for 0.11.3 https://github.com/Yakifo/amqtt/pull/286
|
||||
* Plugin naming convention https://github.com/Yakifo/amqtt/pull/288
|
||||
* embed amqtt into an existing server https://github.com/Yakifo/amqtt/pull/283
|
||||
* Plugin: rebuild of session persistence https://github.com/Yakifo/amqtt/pull/256
|
||||
* Plugin: determine authentication based on X509 certificates https://github.com/Yakifo/amqtt/pull/264
|
||||
* Plugin: device 'shadows' to bridge device online/offline states https://github.com/Yakifo/amqtt/pull/282
|
||||
* Plugin: authenticate against LDAP server https://github.com/Yakifo/amqtt/pull/287
|
||||
* Sample: broker and client communicating with mqtt over unix socket https://github.com/Yakifo/amqtt/pull/291
|
||||
* Plugin: jwt authentication and authorization https://github.com/Yakifo/amqtt/pull/289
|
||||
|
||||
## 0.11.2
|
||||
|
||||
- config-file based plugin loading [PR #240](https://github.com/Yakifo/amqtt/pull/240)
|
||||
|
|
|
@ -7,10 +7,20 @@
|
|||
## Features
|
||||
|
||||
- Full set of [MQTT 3.1.1](http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html) protocol specifications
|
||||
- Communication over TCP and/or websocket, including support for SSL/TLS
|
||||
- Communication over multiple TCP and/or websocket ports, including support for SSL/TLS
|
||||
- Support QoS 0, QoS 1 and QoS 2 messages flow
|
||||
- Client auto-reconnection on network lost
|
||||
- Custom functionality expansion; plugins included: authentication, `$SYS` topic publishing, session persistence
|
||||
- Plugin framework for functionality expansion; included plugins:
|
||||
- `$SYS` topic publishing
|
||||
- AWS IOT-style shadow states
|
||||
- x509 certificate authentication (including cli cert creation)
|
||||
- Secure file-based password authentication
|
||||
- Configuration-based topic authorization
|
||||
- MySQL, Postgres & SQLite user and/or topic auth (including cli manager)
|
||||
- External server (HTTP) user and/or topic auth
|
||||
- LDAP user and/or topic auth
|
||||
- JWT user and/or topic auth
|
||||
- Fail over session persistence
|
||||
|
||||
## Installation
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ classifiers = [
|
|||
"Programming Language :: Python :: 3.13"
|
||||
]
|
||||
|
||||
version = "0.11.3-rc.1"
|
||||
version = "0.11.3"
|
||||
requires-python = ">=3.10.0"
|
||||
readme = "README.md"
|
||||
license = { text = "MIT" }
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import contextlib
|
||||
import logging
|
||||
import asyncio
|
||||
import ssl
|
||||
from asyncio import StreamWriter, StreamReader, Event
|
||||
from functools import partial
|
||||
from pathlib import Path
|
||||
|
@ -76,6 +77,9 @@ class UnixStreamWriterAdapter(WriterAdapter):
|
|||
with contextlib.suppress(AttributeError):
|
||||
await self._writer.wait_closed()
|
||||
|
||||
def get_ssl_info(self) -> ssl.SSLObject | None:
|
||||
pass
|
||||
|
||||
|
||||
async def run_broker(socket_file: Path):
|
||||
|
||||
|
|
2
uv.lock
2
uv.lock
|
@ -129,7 +129,7 @@ wheels = [
|
|||
|
||||
[[package]]
|
||||
name = "amqtt"
|
||||
version = "0.11.3rc1"
|
||||
version = "0.11.3"
|
||||
source = { editable = "." }
|
||||
dependencies = [
|
||||
{ name = "aiohttp" },
|
||||
|
|
Ładowanie…
Reference in New Issue