Commit Graph
1371 Commits
Author SHA1 Message Date
Laurens Valk 3aae28174e v4.0.0b9 v4.0.0b9 2026-05-30 11:26:02 +02:00
Laurens Valk 01137f65f6 !drop: delete otehr workflows 2026-05-30 11:25:34 +02:00
Laurens Valk 7c01d8dd16 npm/jedi: Fix build dependencies.
We can't use importlib since we are not running in that environment.
2026-05-30 11:25:06 +02:00
Laurens Valk f1ef421676 v4.0.0b8 v4.0.0b8 2026-05-30 11:02:40 +02:00
Laurens Valk 608c3f0d98 npm/jedi: Further trim down build logic.
We used to separately build jedi and then use another Python step to package it.

We can just do it from the same environment to avoid packaging issues.
2026-05-30 11:02:12 +02:00
Laurens Valk b65443f1ec v4.0.0b7 v4.0.0b7 2026-05-30 10:47:00 +02:00
Laurens Valk 88b901833c npm/jedi: Use pybricks-api from source. 2026-05-30 10:43:15 +02:00
Laurens Valk d61e452a04 v4.0.0b6 v4.0.0b6 2026-05-30 10:01:23 +02:00
Laurens Valk f880b821c0 CHANGELOG: Explain synchronization with firmware. 2026-05-30 10:00:18 +02:00
Laurens Valk acda5b21cb npm/jedi: Build pybricks-api from source.
Now that we use a single release pipeline, the API itself might not yet be on PyPI by the time we build jedi, so we build it locally.

We'll still keep the API docs on PyPI so users can have local autocomplete, but that path is no longer a dependency for building jedi.
2026-05-30 09:40:09 +02:00
Laurens Valk a780b8d69e v4.0.0b5 v4.0.0b5 2026-05-29 22:04:02 +02:00
Laurens Valk c1054edf02 .github/workflows: Use npm tag for beta versions. 2026-05-29 22:03:23 +02:00
Laurens Valk dcd4d3a45c v4.0.0b4 v4.0.0b4 2026-05-29 21:58:24 +02:00
Laurens Valk 48cd9db78a .github/workflows: Use node 24. 2026-05-29 21:57:20 +02:00
Laurens Valk 719e587517 v4.0.0b3 v4.0.0b3 2026-05-29 21:46:03 +02:00
Laurens Valk eab61dc6ac .github/workflows: Fix permissions. 2026-05-29 21:45:25 +02:00
Laurens Valk c78eb16660 v4.0.0b2 v4.0.0b2 2026-05-29 21:35:04 +02:00
Laurens Valk fa7a336fd1 .github/workflows: Use trusted publishing. 2026-05-29 21:34:14 +02:00
Laurens Valk d5f6a1ad00 v4.0.0b1 v4.0.0b1 2026-05-29 21:15:09 +02:00
Laurens Valk 5bef252078 .github/workflows: Build on v4 tags. 2026-05-29 21:15:03 +02:00
Laurens Valk f12a6a26ac .github/workflows: Convert python to npm semver style. 2026-05-29 21:06:31 +02:00
Laurens Valk 4e78de9d2a .github/workflows: Update actions. 2026-05-29 20:57:04 +02:00
Laurens Valk 95b168355e npm: Simplify release pipeline.
Releasing API updates is quite a long and error prone process, so the point that it was limiting our ability to push frequent updates in practice. There were 5 tag, commit, wait, and proceed steps and you'd have to start over or force push if a mistake was made.

This keeps all the npm packages as they were, but versions everything from a single source of truth, which is this project's main version. Everything builds on a tag on the main repo, much like we did for a regular IDE docs RTD release.

It also skips the PyPI for jedi as an intermediate step, which isn't really needed and required us to have this strict order of publication steps.
2026-05-29 20:38:37 +02:00
Laurens Valk a9be86238d pybricks.messaging.BLERadio: Fix example paths. 2026-05-29 20:28:36 +02:00
Laurens Valk 16d5ba64d2 pybricks.ev3devices: Update return types. 2026-05-29 20:09:06 +02:00
Laurens Valk d8802ace7d pybricks.common: Update system info. 2026-05-29 20:08:53 +02:00
Laurens Valk acb5206349 pybricks.robotics: Update DriveBase. 2026-05-29 20:06:56 +02:00
Laurens Valk 6686fce3c3 pybricks.pupdevices: Document MarioHub, TechnicMoveHub and DuploTrain. 2026-05-29 16:59:51 +02:00
Laurens Valk 7d27fbb5d8 pybricks.iodevices: Document DCMotor. 2026-05-29 15:39:24 +02:00
Laurens Valk a0e98ba75f pybricks.iodevices: Document pinout. 2026-05-29 15:34:58 +02:00
Laurens Valk 1b69e42b6b pybricks.iodevices: Update UARTDevice docstrings. 2026-05-29 14:57:53 +02:00
Laurens Valk 47a3d664c2 pybricks.iodevices: Include all classes in index.
Some were omitted once EV3 in Pybricks 2.0 was dropped, but they will be included again to prepare for EV3 in Pybricks 4.0.

Enable for Powered UP where relevant, as with UARTDevice.
2026-05-29 14:22:15 +02:00
Laurens Valk e6cb436c47 pybricks.iodevices: Update I2CDevice docstrings. 2026-05-29 13:41:10 +02:00
Laurens Valk a8d74720b6 pybricks.iodevices: Update AnalogSensor docstrings. 2026-05-29 12:38:49 +02:00
Laurens Valk 54b4e39360 pybricks.iodevices: Update XboxController docstrings. 2026-05-29 12:32:43 +02:00
Laurens Valk 1f8f0f777a pybricks.iodevices: Update PUPDevice and LUMPDevice.
Also remove Ev3devSensor, which is no longer used.
2026-05-29 12:30:58 +02:00
Laurens Valk 45b9b89d11 pybricks.messaging: Add tests. 2026-05-29 11:48:15 +02:00
Laurens Valk e0f48b178b pybricks.messaging: Document AppData. 2026-05-29 11:41:45 +02:00
Laurens Valk 8ed5a489b9 pybricks.messaging.BLERadio: Include raised errors. 2026-05-29 11:24:41 +02:00
Laurens Valk a2ba8e4dcd pybricks.hubs: Move .ble to BLERadio.
Follows upstream firmware change.

Update tests and examples too.
2026-05-29 11:12:50 +02:00
Frederik LeonhardtandLaurens Valk 7900f03574 jedi: Add tests for methods on hub.ble. 2026-05-28 11:20:54 +02:00
Frederik LeonhardtandLaurens Valk 7014f46441 pybricks.common.BLE: Improve typing for broadcast() and observe()
- Add overloads for broadcast(). It accepts either a single value, or a tuple,
  or a list.

- Adjust return type of observe(). It either returns a single value, or a tuple.
2026-05-28 11:12:17 +02:00
Frederik LeonhardtandLaurens Valk 7411a246c9 pybricks.common.BLE: Improve typing for hub constructor.
Update type hint for broadcast_channel to Optional, as None is allowed.
2026-05-28 11:12:17 +02:00
Lasse Deleuran 3bc2f35e3e pybricks.iodevices: Added missing functions and parameters.
* Added missing functions and parameters to documentation.

- AnalogSensor: Missing parameter "custom".
- I2CDevice: Missing parameters "port", "address", "custom", "powered", and "nxt_quirk" with attempted explanation of parameters.
- UARTDevice: Missing default parameter value.
- LWP3Device: Missing "connect" parameter.
- Added missing connect and disconnnect methods.
- XboxController: Missing documentation in constructor and missing methods.

* Minor changes to the documentation

Made it more clear and less verbose when to skip connect to bluetooth devices.
2026-05-28 10:47:04 +02:00
kai-morichandGitHub 61578b5547 pybricks.parameters: Add/fix operators for Color type.
* Implement `Color.__eq__`, fix `Color.__mul__`. This allows testing of color block sorting algorithms with CPython.
* implement `Color.__lshift__` and immutability for completeness.
2026-04-25 11:01:54 -05:00
JoBeandGitHub c615ccf986 pybricks._common: Fix parameter name in LightMatrix.orientation().
The parameter `up` was named `top` here, which does not reflect the state of the current code.

See https://github.com/pybricks/pybricks-micropython/blob/master/pybricks/common/pb_type_lightmatrix.c#L59C25 for usage in the code itself.
2026-03-29 17:41:34 -05:00
Gabriel CouchenourandGitHub 32f974e7e5 Robotics.py: Fix issue with the type stub for DriveBase.angle() (#165)
The type was changed from `int` to `float` in https://github.com/pybricks/pybricks-micropython/commit/4d457a17fc13d42d9b311df99e05dafaeed67862.

Technically, it is still `int` on BOOST Move hub (any system without floating point support). But most platforms use `float` so makes sense to have that in the type hints.
2025-09-19 21:53:37 -05:00
Laurens Valk 0efcfd4a36 pybricks.iodevices.LWP3Device: Document new parameters. 2025-06-16 11:05:13 +02:00
Laurens Valk 356f6ffdba v3.6.1 v3.6.1 2025-05-01 11:30:32 +02:00
Laurens Valk 4967b96ddd doc/main: Fix trailing whitespace.
For some reason this was not caught by CI.
2025-05-01 11:27:33 +02:00