mirror of
https://github.com/zed-industries/zed.git
synced 2026-07-09 16:00:35 +00:00
Adds a dylint library under tooling/lints that flags Zed-specific anti-patterns: * shared_string_from_str_literal, * async_block_without_await, * entity_update_in_render, * notify_in_render, * owned_string_into_shared, * len_in_loop_condition, and * blocking_io_on_foreground. Includes UI tests, a single-lint helper, and workspace.metadata.dylint registration so cargo dylint --all discovers it. The library pins its own nightly toolchain (kept out of the main workspace) and tracks dylint 6. Release Notes: - N/A Self-Review Checklist: - [ ] I've reviewed my own diff for quality, security, and reliability - [ ] Unsafe blocks (if any) have justifying comments - [ ] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [ ] Tests cover the new/changed behavior - [ ] Performance impact has been considered and is acceptable Closes #ISSUE Release Notes: - N/A or Added/Fixed/Improved ...
30 lines
1,006 B
Text
30 lines
1,006 B
Text
error: entity `.update()` called during render mutates state in the render pass
|
|
--> $DIR/entity_update_in_render.rs:23:9
|
|
|
|
|
LL | / self.counter.update(cx, |counter, _cx| {
|
|
LL | | counter.value += 1;
|
|
LL | | });
|
|
| |__________^
|
|
|
|
|
= note: `-D entity-update-in-render` implied by `-D warnings`
|
|
= help: to override `-D warnings` add `#[allow(entity_update_in_render)]`
|
|
|
|
error: entity `.update()` called during render mutates state in the render pass
|
|
--> $DIR/entity_update_in_render.rs:37:17
|
|
|
|
|
LL | let _ = self.counter.update(cx, |counter, _cx| {
|
|
| _________________^
|
|
LL | | counter.value += 1;
|
|
LL | | });
|
|
| |__________^
|
|
|
|
error: entity `.update()` called during render mutates state in the render pass
|
|
--> $DIR/entity_update_in_render.rs:51:9
|
|
|
|
|
LL | / self.counter.update(cx, |counter, _cx| {
|
|
LL | | counter.value += 1;
|
|
LL | | });
|
|
| |__________^
|
|
|
|
error: aborting due to 3 previous errors
|
|
|