Commit log

25ed7c5 WIP

Conrad Irwin created

d0dd44f Merge branch 'main' into callback-handles

Conrad Irwin created

6e84f74 Set -e in bump-nightly script

Click to expand commit body
Co-authored-by: Mikayla <mikayla@zed.dev>

Max Brunsfeld and Mikayla created

c571273 Allow bundling in debug mode with both architectures

Click to expand commit body
Co-authored-by: Mikayla <mikayla@zed.dev>

Max Brunsfeld and Mikayla created

babd419 Remove gpui (1) dependencies from zed2

Click to expand commit body
Co-authored-by: Mikayla <mikayla@zed.dev>

Max Brunsfeld and Mikayla created

acbad4c WIP

Mikayla created

fe0a8b4 Fix warnings in tests

Piotr Osiewicz created

d60855b Merge branch 'main' into search2

Piotr Osiewicz created

99ef8cc fixup dismissing of search bar

Piotr Osiewicz created

6f0cdc3 Refine element and component traits (#3367)

Click to expand commit body
This PR changes `Element::paint` to move self and introduces a new
`RenderOnce` trait, which renders into an element by moving self.
Elements are required to be `RenderOnce`, and `element_id` is now on
`RenderOnce` so we can get the id without moving self. The `child` and
`children` methods now expect `impl RenderOnce`.

```rust
pub trait Element<V: 'static>: 'static + RenderOnce<V> {
    type State: 'static;

    fn layout(
        &mut self,
        view_state: &mut V,
        element_state: Option<Self::State>,
        cx: &mut ViewContext<V>,
    ) -> (LayoutId, Self::State);

    fn paint(
        self,
        bounds: Bounds<Pixels>,
        view_state: &mut V,
        element_state: &mut Self::State,
        cx: &mut ViewContext<V>,
    );

    fn into_any(self) -> AnyElement<V> {
        AnyElement::new(self)
    }
}

pub trait RenderOnce<V: 'static>: Sized {
    type Element: Element<V> + 'static;

    fn element_id(&self) -> Option<ElementId>;

    fn render_once(self) -> Self::Element;

   // default helpers ...
}
```

To make a type a component, you can add `#[derive(RenderOnce)]`, which
will require your type to implement the `Component` trait:

```rust
pub trait Component<V: 'static>: 'static {
    type Rendered: RenderOnce<V>;

    fn render(self, view: &mut V, cx: &mut ViewContext<V>) -> Self::Rendered;
}
```

I'm satisfied with this being what we open source for elements, aside
from maybe adding a `StatefulComponent` trait that uses element state.
Things finally feel like they slot into a coherent and simple narrative.

Release Notes:

- N/A

Conrad Irwin created

3ddfc7f Remove unused import

Piotr Osiewicz created

fa8cd84 fixup! Merge branch 'main' into search2

Piotr Osiewicz created

07cc590 Merge branch 'main' into search2

Piotr Osiewicz created

3d28495 fixup! Remove dbg statements

Piotr Osiewicz created

ad38708 Remove dbg statements

Piotr Osiewicz created

c1f0ac3 Fix up tests once and for good

Piotr Osiewicz created

b19a6c0 Fix storybook2

Conrad Irwin created

5d16f76 fmt

Conrad Irwin created

8599ba5 Fix more import errors

Conrad Irwin created

f08426c shhhh

Conrad Irwin created

f86480b Merge followup mess

Conrad Irwin created

0798cfd Merge branch 'main' into derive-element-redux

Conrad Irwin created

35e0b53 Merge branch 'main' into refine-keybindings

Nate Butler created

176a68f kb

Nate Butler created

3850288 Add timestamp delta to telemetry events (#3365)

Click to expand commit body
- [X] assistant_events
- [X] call_events
- [X] copilot_events
- [X] cpu_events
- [X] download_events
- [X] editor_events
- [X] memory_events
- [X] page_events
- [X] panic_events
---
- [X] For each of the previous tables:
    - [X] backup events to comp
    - [X] make new table (changing any time fields to be datetime64)
    - [X] copy data
    - [X] rename old table
    - [X] rename new table
---
- [ ] Delete all old tables once (going to hold off on this for some
time - want to make sure things are working correctly)
    - [X] we see new data coming in on new tables
    - [X] old times truncate correctly
    - [X] new times show millisecond values
---
- [X] check dashboards to make sure queries didn't get broken from
changing time data type
    - [X] Fix broken charts
- [X] monitor vercel for runtime errors

---

- [X] zed.dev changes
- [X] chrono changes to panicked_on
    - [X] Make sure new panics are good
- [X] remove commented out code and dbg code
- [X] triple check that both crate versions have the changes
- [X] make sure all event function calls use the same original arguments
- [X] Finish testing version 2

Release Notes:

- N/A

Joseph T. Lyons created

966bf56 Activate telemetry in zed2

Joseph T. Lyons created

8d4828a Circumvent part of the tests

Piotr Osiewicz created

f3eb1d4 Add button port example

Mikayla created

5dc3369 Remove unused imports

Joseph T. Lyons created

722ad5a Fix data types

Joseph T. Lyons created

8e612e4 Restore commented-out code

Joseph T. Lyons created

e0f8615 Remoe `dbg!()`s

Joseph T. Lyons created

3abd376 Add timestamp delta to telemetry events

Joseph T. Lyons created

4537158 Focus workspace on launch (#3364)

Click to expand commit body
Fixes action dispatch when no focus is there.

Release Notes:

- N/A

Conrad Irwin created

88024ca Remove V parameter on elements

Mikayla created

c0d85dc Fix text wrapping when a child of a v_stack() (#3362)

Click to expand commit body
Previously text that was rendered in a flex-column would reserve the
correct
amount of space during layout, and then paint itself incorrectly.

Release Notes:

- N/A

Conrad Irwin created

b67193e ui2: Do not enable 'stories' feature by default. (#3363)

Click to expand commit body
This cuts down LLVM IR size from 3 million lines to 700k in debug build.
This then leads to ~3s compile time in debug build (without incremental
on ui itself), as opposed to 10.5s on main.

Release Notes:

- N/A

Piotr Osiewicz created

e83a297 Move binding function back into keybinding module

Piotr Osiewicz created

31336b0 ui2: Do not enable 'stories' feature by default.

Click to expand commit body
This cuts down LLVM IR size from 3 million lines to 700k in debug build.
This then leads to ~3s compile time in debug build (without incremental on ui itself), as opposed to 10.5s on main.

Piotr Osiewicz created

c5738a5 delint

Conrad Irwin created

0711121 Add some test cases

Conrad Irwin created

33cd6f5 Clean compile with redesigned element traits

Nathan Sobo created

cf47ed2 Fix wrapping when parent has a max_width

Click to expand commit body
(Also avoid re-wrapping text we already wrapped)

Conrad Irwin created

242a0b8 Update Taffy to latest main

Conrad Irwin created

7172ce3 Fix text wrapping when a child of a v_stack()

Conrad Irwin created

0673606 WIP

Nathan Sobo created

adc355a Element refinement passing on ui2

Nathan Sobo created

0734050 Revert changes

Mikayla Maki created

b758d1b Update bundle

Mikayla Maki created

fd8ebb4 Update bundle

Mikayla Maki created