Skip to content

Bug/fwd 802 fix fetch all#6

Merged
ilang-flytrex merged 13 commits into
masterfrom
bug/FWD-802-FixFetchAll
Feb 24, 2026
Merged

Bug/fwd 802 fix fetch all#6
ilang-flytrex merged 13 commits into
masterfrom
bug/FWD-802-FixFetchAll

Conversation

@ilang-flytrex

Copy link
Copy Markdown

No description provided.

   -  Type
   - Frame Type
   - Data Type ID
   - Priority
   - Mode
   - Anonymous
   - First/last tail
   - Computed CRC
   - CRC match
   - Payload data
2. Point pydronecan to branch 'Flytrex_1_0_26'
3. Increment flytrex version to 0.0.2
2. Fix a bug that caused the parameters to get scrambled when 'fetch all' button was pressed during previous parameters fetch. In addition, a 'stop' caption was added during the parameters fetch

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the GUI “Fetch All” configuration-parameter workflow to support toggling the operation (Fetch ↔ Stop) and to better isolate in-flight callbacks using a fetch session concept.

Changes:

  • Add fetch session state (_fetch_in_progress, _fetch_session_id) and a stop-capable fetch button flow.
  • Route all parameter index requests through a helper (_request_param_index) and gate callback handling by session id.
  • Bump __flytrex_version__ from 0.0.1 to 0.0.2.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
dronecan_gui_tool/widgets/node_properties.py Implements stop-capable “Fetch All” with session tracking and refactors request/callback handling.
dronecan_gui_tool/version.py Increments __flytrex_version__.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread dronecan_gui_tool/widgets/node_properties.py
2. bus_monitor: consolidate frame tail-byte validation in transfer decoder:
Introduce shared helpers for tail-byte presence and payload extraction without tail byte.
Use the shared validation path in tail diagnostics, payload reconstruction, and CRC reporting.
Fail fast with DecodingFailedException when a recovered transfer contains a frame without a tail byte.
2. Rename local variable

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread dronecan_gui_tool/widgets/node_properties.py Outdated
Comment on lines +171 to +173
for i, frame in enumerate(frames):
if not _frame_has_tail_byte(frame):
raise DecodingFailedException('Frame at index {} is missing tail byte'.format(i))

Copilot AI Feb 18, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This validation loop should occur before calling tr.from_frames() to fail fast. Currently, if validation fails after tr = Transfer() is created, the Transfer object is unnecessarily allocated.

Copilot uses AI. Check for mistakes.
Comment thread dronecan_gui_tool/widgets/bus_monitor/transfer_decoder.py Outdated
@ilang-flytrex ilang-flytrex merged commit 667b08d into master Feb 24, 2026
0 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants