# \[new release\] beta 24

**URL:** <https://discourse.aurelia.io/t/new-release-beta-24/6415>\
**Category:** vNext\
**Created:** [April 29, 2025, 4:03am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415 "2025-04-29T04:03:04Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![bigopon](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/bigopon/32/18_2.png) [@bigopon](https://discourse.aurelia.io/u/bigopon)\
**Post date:** [April 29, 2025, 4:03am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/1 "2025-04-29T04:03:04Z")

</div>

Happy Tuesday folks!, it’s that time again for a new beta release: beta 24 is here 😃

Blog post: [What’s New in Aurelia 2 Beta 24? | Aurelia](https://aurelia.io/blog/2025/04/28/whats-new-in-aurelia-beta-24/)

If you are only interested in the changelog: [Release v2.0.0-beta.24 · aurelia/aurelia](https://github.com/aurelia/aurelia/releases/tag/v2.0.0-beta.24)  
This release further enhances our template type checking capabilities, together with other changes and improvements.

As usual, please help report any issues/unexpected behavior you run into either here, Github issue or here. If you wanna have a chat, come to our discord thread for beta 24 at ([Discord | #announcements | Aurelia](https://discord.com/channels/448698263508615178/1333210968049713233/threads/1366624021021720688))

Previous release announcements:

- beta 23: [[new release] beta 23 - vNext - The Aurelia Discourse](https://discourse.aurelia.io/t/new-release-beta-23/6335)

Finally, thanks to everyone who contributed to this release 🤗

---

<div class="post-metadata">

**Author:** ![ivan](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/ivan/32/2022_2.png) [@ivan](https://discourse.aurelia.io/u/ivan)\
**Post date:** [April 29, 2025, 10:38am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/2 "2025-04-29T10:38:54Z")

</div>

Great stuff. Thank you 😀

---

<div class="post-metadata">

**Author:** ![mroeling](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/mroeling/32/781_2.png) [@mroeling](https://discourse.aurelia.io/u/mroeling)\
**Post date:** [April 29, 2025, 5:50pm UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/3 "2025-04-29T17:50:49Z")

</div>

Yes! Good to see progress, after a rather quiet period (#hint).

So to throw the elephant in the porcelain closet (freely translated Dutch proverb 😃 ):  
what is left before the final release? 😇

---

<div class="post-metadata">

**Author:** ![bigopon](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/bigopon/32/18_2.png) [@bigopon](https://discourse.aurelia.io/u/bigopon)\
**Post date:** [April 30, 2025, 4:39am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/4 "2025-04-30T04:39:39Z")

</div>

sync → back to async binding work, and while we are at it, whatever else that is deemed appropriate 😃

---

<div class="post-metadata">

**Author:** ![mroeling](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/mroeling/32/781_2.png) [@mroeling](https://discourse.aurelia.io/u/mroeling)\
**Post date:** [April 30, 2025, 12:56pm UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/5 "2025-04-30T12:56:13Z")

</div>

Great! Looking forward to see those changes too!

Do you perhaps know if there are any updates scheduled for the Google chrome extension? In the web store there is still the outdated manifest v2 version.

---

<div class="post-metadata">

**Author:** ![dwaynecharrington](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/dwaynecharrington/32/11_2.png) [@dwaynecharrington](https://discourse.aurelia.io/u/dwaynecharrington)\
**Post date:** [May 4, 2025, 10:34pm UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/6 "2025-05-04T22:34:23Z")

</div>

I’m going to take a look at this, as I know it is very important to the community.

---

<div class="post-metadata">

**Author:** ![ghiscoding](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/ghiscoding/32/1199_2.png) [@ghiscoding](https://discourse.aurelia.io/u/ghiscoding)\
**Post date:** [May 10, 2025, 4:14am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/7 "2025-05-10T04:14:34Z")

</div>

So I updated to Beta 24 and I’m getting this error when enhancing multiple components (caused by this [PR - remove controller host](https://github.com/aurelia/aurelia/pull/2128)).

> Node already associated with a controller, remove the ref “au:resource:custom-element” first before associating with another controller

So I assumed that I had to make sure components are disposed before re-enhancing them but that doesn’t seem to make a difference. What am I doing wrong?

I have code like this

```ts
const slotIdx = this._slots.findIndex(obj => obj.id === dataContext.id);
const slotObj = this._slots[slotIdx];
if (slotObj?.controller) {
  await slotObj.controller.deactivate(slotObj.controller, slotObj?.controller.parent ?? null);
  this._slots.slice(slotIdx, 1);
}
const comp = await this.au.enhance({
    host: targetElement,
    component: { bindableData },
    container: this.au.container.createChild().register(AppTask.creating(() => { }))
});
if (!slotObj) {
  const viewInfo: CreatedView = {
    id: dataContext.id,
    root: comp,
    controller: comp.controller
  };
  this._slots.push(viewInfo);
}

```

So how can I fix my error? Also why was that decided that we can’t re-enhance a VM? I’m asking because my lib Aurelia-Slickgrid does something very similar in a bunch of other frameworks that I support like Angular, React, Vue and none of them ever throw such errors when re-enhancing or recreating the same component on the same DOM target, so why is Aurelia becoming so strict all of a sudden? This seems like a huge breaking change that I’m not sure how to go around it.

Here’s 2 examples of where I’m using enhancing in Aurelia-Slickgrid:

- [Example 19](https://ghiscoding.github.io/aurelia-slickgrid/#/example19) - opening Row Detail
- [Example 26](https://ghiscoding.github.io/aurelia-slickgrid/#/example26) - generating Aurelia component in data grid cell

---

<div class="post-metadata">

**Author:** ![bigopon](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/bigopon/32/18_2.png) [@bigopon](https://discourse.aurelia.io/u/bigopon)\
**Post date:** [May 13, 2025, 12:17am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/8 "2025-05-13T00:17:54Z")

</div>

> [@ghiscoding](#):
>
> throw such errors when re-enhancing or recreating the same component on the same DOM target

Thanks @ghiscoding , I missed your commment.  
For

> throw such errors when re-enhancing or recreating the same component on the same DOM target

Maybe we don’t have to be strict, but we need to be very clear about the behavior of the framework before we support such feture. We can start with a simple question: what should it do/not do when enhancing the same DOM element?

---

<div class="post-metadata">

**Author:** ![ghiscoding](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/ghiscoding/32/1199_2.png) [@ghiscoding](https://discourse.aurelia.io/u/ghiscoding)\
**Post date:** [May 14, 2025, 10:01pm UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/9 "2025-05-14T22:01:12Z")

</div>

The minimum would be to warn the user of which component got re-enhanced multiple times (“au:resource:custom-element” doesn’t tell me anything since I don’t have any custom element with that name). Because at the moment, I’m just stuck with this new major breaking change. I’m blocked without knowing what to do in order to fix all of these. Does the code I provided above make any sense or is it totally wrong?

Also like I said, any other frameworks are totally fine with recreating/re-rendering the same components (leaking DOM elements is the end user’s problem), loosing up this strictness and possibly send improved console warnings could certainly help to make this transition a bit smoother because re-enhancing components in a datagrid (like in Aurelia-Slickgrid) can happen a lot of times when associated to a row or a cell of thegrid, and trying to find how to fix them at the moment is a pain and I just don’t understand what I need to do… I could drop that feature from Aurelia-Slickgrid (Example 19 and 26 as linked in comment above) but that would mean less features for the end users.

Is 2025 going to be the year for Aurelia 2 official release?

---

<div class="post-metadata">

**Author:** ![bigopon](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/bigopon/32/18_2.png) [@bigopon](https://discourse.aurelia.io/u/bigopon)\
**Post date:** [May 16, 2025, 2:31am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/10 "2025-05-16T02:31:54Z")

</div>

thanks @ghiscoding , in the code above, I only see the part related to enhance + after. How do you prepare the content of the host element being enhanced?

---

<div class="post-metadata">

**Author:** ![ghiscoding](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/ghiscoding/32/1199_2.png) [@ghiscoding](https://discourse.aurelia.io/u/ghiscoding)\
**Post date:** [May 16, 2025, 5:23am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/11 "2025-05-16T05:23:45Z")

</div>

@bigopon the code is in Example 26

- [renderAureliaComponent](https://github.com/ghiscoding/aurelia-slickgrid/blob/9a17a3bff7384f9eca375c8e0747028eaae4948f/packages/demo/src/examples/slickgrid/example26.ts#L337C9-L360)
- [createAureliaViewModelAddToSlot](https://github.com/ghiscoding/aurelia-slickgrid/blob/9a17a3bff7384f9eca375c8e0747028eaae4948f/packages/aurelia-slickgrid/src/services/aureliaUtil.service.ts)

You can clone the project and checkout the open PR where I’m trying to upgrade to Beta 24

> <https://github.com/ghiscoding/aurelia-slickgrid/pull/1348>

It’s probably better to discuss directly in there.  
Thanks

---

<div class="post-metadata">

**Author:** ![bigopon](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/bigopon/32/18_2.png) [@bigopon](https://discourse.aurelia.io/u/bigopon)\
**Post date:** [May 16, 2025, 5:37am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/12 "2025-05-16T05:37:20Z")

</div>

thanks, so just to be clear for the topic we already have: the use case is to wash away existing content of an element with `.innerHTML = html` and call `.enhance` on that element again and again. I do think it’s a valid case, probably we should have some tweaks to make it support such scenario.

---

<div class="post-metadata">

**Author:** ![ghiscoding](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.aurelia.io/ghiscoding/32/1199_2.png) [@ghiscoding](https://discourse.aurelia.io/u/ghiscoding)\
**Post date:** [May 17, 2025, 2:16am UTC](https://discourse.aurelia.io/t/new-release-beta-24/6415/13 "2025-05-17T02:16:05Z")

</div>

Thanks to @bigopon a temp solution was provided and put in place, I was able to migrate to Beta 24. Cheers and thanks for the help. 🚀
