Upgrade to release 0.3.100:
- python: Fix compatibility with older python versions
- Add configurable faults for position or velocity tracking error
- Work around a linker warning with newer gcc
- tview: Suppress warnings about importing Axes3D
- moteus_gui: Include registernoop.py in our generated wheel
- Replace setup.py with pyproject.toml for Python package builds
- Use ::isfinite for Arduino compatibility
- Implement support for the RLS Orbis encoder over SPI
Fixes:
WARNING: python3-moteus-0.3.100-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml with setuptools.build_meta,
use the correct class [pep517-backend]
License-Update: Use PKG-INFO
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.0.0:
- Add chord() (map -> reduce) and group() (map) primitives.
- Add timeout (using SIGALRM for process and gevent.Timeout for
greenlet) to control task running time. For threads, unfortunately,
there's no good mechanism so instead APIs for cooperatively
checking timeout are provided on the Task instance.
- Add simple fixed-window rate_limit() for tasks.
- Add Result.is_ready() method for checking result readiness.
- New option for low-latency result fetching, available for RedisHuey.
To use, pass notify_result=True when initializing your Huey instance.
- Add new incr(key, amount=1) to storage API for atomic increment
primitive. This is used by chord().
- Add new wait_result() method to storage APIs for efficiently waiting
for a result to become ready. The default implementation uses the
exponential backoff from the previous implementation of a blocking
Result.get() - so no changes are needed. However if you have a custom
storage implementation, this provides a mechanism for pub/sub or
other notification of result readiness.
- Remove Python 2.x compatibility.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.44.0:
- Implement websocket keepalive pings for websockets-sansio
From 0.43.0:
- Emit http.disconnect ASGI receive() event on server shutting down
for streaming responses
- Use native context parameter for create_task on Python 3.11+
- Drop cast in ASGI types
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Upgrade embedded pip/setuptools/wheel
- Enhance upgrade workflow: age check, dedup, issue tracking
- fix(create): use commonpath for correct path validation
- ci(workflows): add zizmor security auditing
- Add current and previous maintainers
- fix(ci): restore git credentials for release and upgrade jobs
- Fix broken Installation link in README
- fix: use terminal width for help formatting instead of hardcoded 240
- fix(nushell): surface actionable hint in deactivate error output
- ci: fix setup-uv warnings and drop brew@3.9
- fix(ci): fix pre-release push and release note generation
- fix(ci): check out repo in publish job for gh release notes
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Skip preamble before the first multipart boundary more efficiently
- Silently discard epilogue data after the closing multipart boundary
- Add MIME content type info to File
- Handle CTE values case-insensitively
- Remove custom FormParser classes
- Add UPLOAD_DELETE_TMP to FormParser config
- Emit field_end for trailing bare field names on finalize
- Handle multipart headers case-insensitively
- Apply Apache-2.0 properly
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
License-Update: Copyright year updated to 2026.
Fixed:
Document how to ignore query parameters while matching on URL.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- ~35% faster compared to v2
- breaking Changes
removed bitarray dependency. Replaced with a custom bit_vector
renamed AISSentence.bit_array to AISSentence.bv
renamed Payload.from_bitarray() to Payload.from_vector()
renamed Payload.to_bitarray() to Payload.to_bytes()
changed overflow encoding behavior
deprecated NonPrintableCharacterException
dropped support for Python 3.9
- removed bitarray as an external dependency
- improved performance through a custom bit vector implementation
- optimized single-fragment message assembly
- NOTE: If you are not ready to migrate, v2 continues to receive bugfixes on the legacy branch
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Fix:
- Pydantic models, attrs and dataclasses with NewType-typed fields now generate
correct snapshots that wrap the field value with the NewType constructor (e.g.
Something(some_id=SomeID(1)) instead of Something(some_id=1)). This could only
be fixed for Python >= 3.10.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
==========
- Publish binary wheels for RiscV 64.
- Fix multiple rare crash paths during interpreter shutdown.
- Note that this now relies on the atexit module, and introduces subtle API
changes during interpreter shutdown (for example, getcurrent is no longer
available once the atexit callback fires).
- Address the results of an automated code audit performed by Daniel Diniz.
This includes several minor correctness changes that theoretically could have
been crashing bugs, but typically only in very rare circumstances.
- Fix several race conditions that could arise in free-threaded builds when
using greenlet objects from multiple threads, some of which could lead to
assertion failures or interpreter crashes.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Make gevent.ssl stop reusing exception instances, as this could appear to
cause a memory leak if there are many short reads or writes.
- Fix Greenlet.dead returning true for an active greenlet during early
bootstrap.
- Fix some potential GIL-related crashes during interpreter shutdown by
avoiding acquiring the GIL in libev callbacks when the interpreter is
finalizing.
- Support for Python 3.9 has been removed.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The python3 setuptools 82 dropped pkg_resources module by now.
To avoid the failure "No module named 'pkg_resources'", replace the
functions from this module with other functions from modules
packaging and importlib.metadata.
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.4.7:
- Pre-built optimized version using mypy[c] v1.20.
- Relax setuptools constraint to setuptools>=68,<82.1.
- Correctly remove SIG remnant in utf-7 decoded string.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 25.1.0:
- Switch to uv + add Python v3.14 support.
- Add ruff formatter and linter.
- Drop Python 3.8 support. If you require it, use version 24.1.0.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Bug-fix release addressing a buffer overflow bug discovered during an
AI-augmented security audit as well as another minor issue with
unnecessarily duplicated code.
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Request.host and get_host return the empty string if the header is missing or has invalid characters.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
===========
- Use dashes instead of underscores for METADATA.toml field names
- Update most test/lint dependencies
- Update mypy to 1.20.0
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
=============
- Add pre_load and post_load parameters to marshmallow.fields.Field for field-level pre- and post-processing
- Typing: improvements to marshmallow.validate
- marshmallow.validate.URL and marshmallow.validate.Email accept Internationalized Domain Names (IDNs)
marshmallow.validate.Email also correctly rejects IDN domains with leading/trailing hyphens.
- Typing: Fix typing of nested in marshmallow.fields.Nested
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
============
- Improved: Fixes Japanese character encoding issues.
- Added: noColor option for configureOutput, which disables
colored output. It is set to False by default.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
============
* Switch to 3.14 for testing
* Drop 3.9 support
* More visible deprecation
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>