feat: source init progress and RawMessages improvements (v1.8.0) - #49
Merged
Conversation
- Updated various package dependencies in package.json and package-lock.json to their latest versions, including @playwright/test, @radix-ui/react components, and others. - Enhanced error handling in renderables.ts by adding a check for Collada parsing failure, throwing an error if parsing fails.
…ility - Introduced `extractPrimaryTopicFromConfig` function to streamline topic extraction from panel configurations. - Updated `PanelTabHeader` to utilize the new topic extraction logic when adding panels. - Enhanced `RawMessagesPanel` and related utilities to support expandable arrays, including Float64Array handling. - Added tests for the new topic extraction function and updated existing tests to cover new functionality.
- Added support for tracking initialization progress in various worker sources, including Bag, Bvh, Db3, Hdf5, and Mcap workers. - Introduced `SourceInitProgress` type and `SourceInitProgressCallback` for reporting progress updates. - Enhanced `initialize` methods to accept a progress callback, allowing for real-time updates during source loading. - Implemented throttling for progress updates to prevent flooding the main thread with frequent callbacks. - Updated tests to verify the correct aggregation of progress from multiple sources.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Release v1.8.0 with backward-compatible player/UI improvements and a dependency refresh.
connecting/downloading/opening) with throttled updates. The loading overlay shows source name, transferred bytes, speed, and ETA.Float64Array). Adding a panel from a topic now usesextractPrimaryTopicFromConfigso tab titles pick the primary topic from Image/Audio/Raw/Plot/3D/Align configs.Motivation / related issue
Remote and large local files can sit on a spinner with no feedback while HTTP Range reads and format parsing run. Operators also need clearer Raw Messages inspection and more reliable topic names when adding panels.
Type of change
Checklist
npm run lintpasses with no errorsnpm testpasses (unit tests)npm run buildandnpm run build:libsucceedUnit coverage includes worker progress aggregation,
CachedFilelike/BrowserHttpReadertransfer reporting, loading overlay, ETA formatting, topic extraction, and Raw Messages typed-array expansion. SPA/lib builds are left to CI.API compatibility
PlayerState.progressgains optionalinitPhase,loadedBytes, andtransferredBytes. Existing consumers do not need to change.src/entrypoints/index.ts.Screenshots / recordings
N/A — overlay copy/progress bar is covered by
LoadingOverlay.test.tsx.