Fix multi-line first sentences in member docstrings#6137
Merged
FeodorFitsner merged 7 commits intomainfrom Feb 6, 2026
Merged
Conversation
Rename .codex/skills/prepare_flet_release.md to .codex/skills/prepare-flet-release/SKILL.md and convert the content to a front-matter style (name/description) for the prepare-flet-release skill. Also adjust the AutofillGroup docstring in autofill_group.py to add a line-continuation backslash and keep the sentence formatting.
Add .codex/skills/fix-members-short-description/SKILL.md which defines a skill to fix Python member docstrings so the first sentence (used as Flet short description) is concatenated across lines with a trailing backslash when broken. Includes input spec, examples, and instructions to process all types and members in a file or directory to ensure multi-line short descriptions use '\' properly.
Clarify the 'description' fields in two SKILL.md files to read 'Use when asked to...'. In .codex/skills/fix-members-short-description/SKILL.md, add explicit guidance to only adjust the first sentence of member docstrings (leave later sentences/paragraphs untouched) and apply the fix whether the first sentence starts on the same line as the opening triple quotes or on the following line.
Wrap the first sentence of many Python docstrings across the SDK using trailing backslashes to enforce line breaks and readability. Also update the .codex skill to require docstring lines be at most 88 characters and to add `# noqa: E501` on the closing `"""` when an unbreakable token prevents wrapping. Changes are purely formatting-only (first sentence scoped) and do not alter runtime behavior.
Contributor
There was a problem hiding this comment.
Sorry @FeodorFitsner, your pull request is larger than the review limit of 150000 diff characters
Deploying flet-docs with
|
| Latest commit: |
d34abe8
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://861a4195.flet-docs.pages.dev |
| Branch Preview URL: | https://doc-first-line-fix.flet-docs.pages.dev |
Contributor
There was a problem hiding this comment.
Pull request overview
Fixes #6130 by reformatting Python docstrings so the generated API reference no longer truncates “short descriptions” when the first sentence is wrapped across multiple lines.
Changes:
- Reflowed many member docstrings to keep the first sentence “single-line” for doc generation (often via
\line continuation). - Adjusted some imports/formatting while touching docstrings.
- Added/updated Codex skill docs to describe the docstring short-description rule.
Reviewed changes
Copilot reviewed 147 out of 148 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/python/packages/flet/src/flet/utils/vector.py | Docstring formatting and operator method definitions. |
| sdk/python/packages/flet/src/flet/utils/slugify.py | Docstring first-sentence line continuation. |
| sdk/python/packages/flet/src/flet/testing/tester.py | Import order + docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/testing/flet_test_app.py | Import order + docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/messaging/protocol.py | Docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/text_style.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/user_accelerometer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/url_launcher.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/storage_paths.py | Docstring reflow (wrapped lines). |
| sdk/python/packages/flet/src/flet/controls/services/semantics_service.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/magnetometer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/haptic_feedback.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/gyroscope.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/file_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/barometer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/services/accelerometer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/scrollable_control.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/query_string.py | Docstring reflow to avoid truncated short descriptions. |
| sdk/python/packages/flet/src/flet/controls/painting.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/page.py | Member/method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/padding.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/object_patch.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/vertical_divider.py | Docstring example indentation + member docstring formatting. |
| sdk/python/packages/flet/src/flet/controls/material/tooltip.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/time_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/textfield.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/text_button.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/tabs.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/switch.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/submenu_button.py | Docstring example formatting + member docstring formatting. |
| sdk/python/packages/flet/src/flet/controls/material/snack_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/slider.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/selection_area.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/segmented_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/search_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/reorderable_list_view.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/range_slider.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/radio.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/progress_ring.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/progress_bar.py | Docstring example + member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/popup_menu_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/outlined_button.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/navigation_rail.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/navigation_drawer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/navigation_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/menu_item_button.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/list_tile.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/icon_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/form_field_control.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/floating_action_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/filled_tonal_button.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/filled_button.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/expansion_tile.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/expansion_panel.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/dropdownm2.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/dropdown.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/divider.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/date_range_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/date_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/datatable.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/context_menu.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/container.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/circle_avatar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/chip.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/checkbox.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/card.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/bottom_sheet.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/bottom_app_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/banner.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/badge.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/auto_complete.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/app_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/material/alert_dialog.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/margin.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/layout_control.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/icon_data.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/gradients.py | Docstring reflow to avoid truncated short descriptions. |
| sdk/python/packages/flet/src/flet/controls/geometry.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/events.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/duration.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/device_info.py | Docstring reflow for long examples/fields. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_textfield.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_switch.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_sliding_segmented_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_segmented_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_radio.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_navigation_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_list_tile.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_date_picker.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_context_menu.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_colors.py | Docstring lint suppression adjustment. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_checkbox.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_button.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_bottom_sheet.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_app_bar.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_alert_dialog.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/cupertino/cupertino_action_sheet.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/window_drag_area.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/window.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/view.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/transparent_pointer.py | Docstring link reflow. |
| sdk/python/packages/flet/src/flet/controls/core/text_span.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/text.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/stack.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/shader_mask.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/semantics.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/safe_area.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/row.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/responsive_row.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/reorderable_drag_handle.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/pagelet.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/markdown.py | Docstring lint suppression adjustment. |
| sdk/python/packages/flet/src/flet/controls/core/list_view.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/keyboard_listener.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/interactive_viewer.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/image.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/icon.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/grid_view.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/gesture_detector.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/draggable.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/drag_target.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/dismissible.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/column.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/text.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/shadow.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/points.py | Docstring formatting + __all__ order change. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/path.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/oval.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/color.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/canvas.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/core/canvas/arc.py | Docstring reflow to avoid truncation. |
| sdk/python/packages/flet/src/flet/controls/core/autofill_group.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/control.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/context.py | Class docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/buttons.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/box.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/border_radius.py | Method docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/border.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/base_page.py | Member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/base_control.py | Decorator docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/controls/alignment.py | Docstring lint suppression adjustment. |
| sdk/python/packages/flet/src/flet/controls/adaptive_control.py | Class/member docstring first-sentence formatting. |
| sdk/python/packages/flet/src/flet/components/hooks/use_ref.py | Hook docstring first-sentence formatting. |
| .codex/skills/prepare-flet-release/SKILL.md | Converted skill header to YAML front matter. |
| .codex/skills/fix-members-short-description/SKILL.md | Added new skill documentation describing the docstring rule. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
sdk/python/packages/flet/src/flet/controls/core/transparent_pointer.py
Outdated
Show resolved
Hide resolved
Add two .codex skill files to document how to run Python tests for the Flet project: .codex/skills/run-unit-tests/SKILL.md and .codex/skills/run-integration-tests/SKILL.md. The unit-test skill provides the pytest command for packages/flet/tests. The integration-test skill includes commands to run all tests, suites, single files or single tests (with verbose logging), guidance for running on iOS/Android simulators, creating golden images, and a list of environment variables that affect test behavior (FLET_TEST_PLATFORM, FLET_TEST_DEVICE, FLET_TEST_GOLDEN, pixel ratio, similarity threshold, FLET_TEST_USE_HTTP, FLET_TEST_DISABLE_FVM).
Deploying flet-examples with
|
| Latest commit: |
d34abe8
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://6d3b6533.flet-examples.pages.dev |
| Branch Preview URL: | https://doc-first-line-fix.flet-examples.pages.dev |
Replace the detailed integration test instructions in .codex/skills/run-integration-tests/SKILL.md with a single pointer to sdk/python/packages/flet/integration_tests/README.md. Removes example pytest commands and environment variable documentation to centralize guidance in the project's integration_tests README.
Clean up docstrings and examples across several modules to improve documentation generation and linting: - .codex/skills/.../SKILL.md: fix typo "sentense" -> "sentence". - transparent_pointer.py: join a broken multi-line docstring link into a single line and add noqa for line length. - device_info.py: collapse long example lines and add noqa to silence line-length warnings for the kernel version examples. - progress_bar.py: fix example snippet (remove extraneous tuple wrapper). - barometer.py: join wrapped NSMotionUsageDescription string into a single line. - vector.py: join wrapped comment about float tolerance into one line. These changes are purely documentation/formatting fixes to ensure short descriptions and examples are generated correctly and to satisfy linting constraints.
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.
Fix #6130