Skip to content

protobufs: master 4c80682 - #1005

Open
jamesarich wants to merge 1 commit into
masterfrom
protobufs-master-4c80682
Open

jamesarich wants to merge 1 commit into
masterfrom
protobufs-master-4c80682

Conversation

@jamesarich

@jamesarich jamesarich commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Brings the protos to protobufs master 4c80682 ahead of the next tag, so a consumer can use what landed after v2.8.2: ClientNotification.type, DeviceMetadata.ble_address and bootloader_version, and the field metadata tags. meshtastic-mcp takes it until a release carries them.

Regenerated with bin/regen-protobufs.sh's steps (nanopb 0.4.8 protoc, mypy-protobuf 3.6.0 from the lock). pytest -m unit passes (386 passed, 2 skipped), and mypy reports the same 14 errors as master, all outside the generated code.

Summary by CodeRabbit

  • New Features

    • Added display-frame requests, display mirroring controls, and support for receiving display frames and palettes, along with display details in device metadata.
    • Added configuration options and protocol fields for transparent LoRa mode, event timestamps, and additional device and notification information.
    • Added support for new hardware models, Modbus serial mode, and SPI transactions.
  • Documentation

    • Clarified configuration behavior and security guidance for channel keys, passphrases, and encrypted traffic.

Ahead of the next protobufs tag, for consumers that need what landed after
v2.8.2: ClientNotification.type, DeviceMetadata.ble_address and
bootloader_version, and the field metadata tags. Regenerated with
bin/regen-protobufs.sh's steps (nanopb 0.4.8 protoc, mypy-protobuf 3.6.0).
@coderabbitai

coderabbitai Bot commented Nov 10, 2026 •

Copy link
Copy Markdown

Explain Change →

Walkthrough

The pull request updates generated protobuf descriptors and stubs. It adds fields, enum values, and message types, revises field metadata and documentation, and changes the protobufs subproject reference.

Changes: Protobuf schema and metadata

Layer / File(s) Summary
Field metadata and annotated fields
meshtastic/protobuf/field_metadata_pb2.py, meshtastic/protobuf/field_metadata_pb2.pyi, meshtastic/protobuf/admin_pb2.py, meshtastic/protobuf/channel_pb2.py, meshtastic/protobuf/clientonly_pb2.py, meshtastic/protobuf/connection_status_pb2.py, meshtastic/protobuf/device_ui_pb2.py
FieldMetadata adds oem_fixed_gps and sensitive. Generated descriptors add metadata for selected fields, including passphrases, PSKs, channel URLs, Bluetooth PINs, and device UI PIN codes.
Display, notification, and device metadata types
meshtastic/protobuf/mesh_pb2.pyi, meshtastic/protobuf/admin_pb2.pyi
Stubs add display frame and palette types, display controls, notification types, display metadata, BLE and bootloader fields, and two hardware model values.
Device configuration schema and descriptions
meshtastic/protobuf/config_pb2.py, meshtastic/protobuf/config_pb2.pyi, meshtastic/protobuf/channel_pb2.pyi
LoRaConfig adds transparent_mode. Configuration descriptions and documented defaults are revised, including packet-signature policies and AEAD behavior.
Module configuration metadata and serial mode
meshtastic/protobuf/module_config_pb2.py, meshtastic/protobuf/module_config_pb2.pyi
Module configuration metadata and descriptions are revised. The serial-mode stub adds MODBUS.
TAK and serial HAL protocol declarations
meshtastic/protobuf/atak_pb2.py, meshtastic/protobuf/atak_pb2.pyi, meshtastic/protobuf/serial_hal_pb2.py, meshtastic/protobuf/serial_hal_pb2.pyi, protobufs
TAKPacketV2 adds optional start_epoch_lo14, and SerialHalCommand adds SPI_TRANSACTION. The protobufs subproject reference changes.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Feature

Suggested reviewers: ianmcorvidae

Pre-merge checks: Passed 5

Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title identifies the protobufs update and the target revision, which matches the pull request’s main change.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 19 files. (1 skipped: 1 unsupported.)

Finishing Touches

Generate docstrings

  • Commit to this branch
  • Create a new PR
Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Review coverage is incomplete: 1 file could not be fully reviewed. Findings from completed review steps are included; see review info for details.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 0a18357 and 2fb0f4e.

Files selected for processing: 21

  • meshtastic/protobuf/admin_pb2.py
  • meshtastic/protobuf/admin_pb2.pyi
  • meshtastic/protobuf/atak_pb2.py
  • meshtastic/protobuf/atak_pb2.pyi
  • meshtastic/protobuf/channel_pb2.py
  • meshtastic/protobuf/channel_pb2.pyi
  • meshtastic/protobuf/clientonly_pb2.py
  • meshtastic/protobuf/clientonly_pb2.pyi
  • meshtastic/protobuf/config_pb2.py
  • meshtastic/protobuf/config_pb2.pyi
  • meshtastic/protobuf/connection_status_pb2.py
  • meshtastic/protobuf/device_ui_pb2.py
  • meshtastic/protobuf/field_metadata_pb2.py
  • meshtastic/protobuf/field_metadata_pb2.pyi
  • meshtastic/protobuf/mesh_pb2.py
  • meshtastic/protobuf/mesh_pb2.pyi
  • meshtastic/protobuf/module_config_pb2.py
  • meshtastic/protobuf/module_config_pb2.pyi
  • meshtastic/protobuf/serial_hal_pb2.py
  • meshtastic/protobuf/serial_hal_pb2.pyi
  • protobufs
Files not fully reviewed because their changes were unavailable: 1

  • meshtastic/protobuf/mesh_pb2.py

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.

jamesarich added a commit to meshtastic/meshtastic-mcp that referenced this pull request Nov 10, 2026
python master stops at protobufs v2.8.1, before ClientNotification.type and
DeviceMetadata.ble_address. meshtastic/python#1005 regenerates the protos
from protobufs master 4c80682; take its commit until a release carries them.

Signed-off-by: James Rich <james.a.rich@gmail.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant