Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(server): plugins can create islands #1472

Merged
merged 20 commits into from
Nov 22, 2023

Conversation

deer
Copy link
Contributor

@deer deer commented Jul 18, 2023

closes #1471

I'm not super excited about the implementation, but it seems to work. Perhaps we shouldn't rush this and let it go into 1.40; there would then be time to make sure it's really implemented how we want.

If anyone is really wanting this feature, they can be excited it's already up for review. 😄

@deer
Copy link
Contributor Author

deer commented Jul 18, 2023

Looks like the island tests are failing on windows. Of course this works on my machine 😅 I will look into this later.

Copy link
Contributor

@lino-levan lino-levan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add a section in the docs?

@cbinzer
Copy link
Contributor

cbinzer commented Jul 19, 2023

Hi, I tested the islands support and it works! Nice work!

src/server/types.ts Outdated Show resolved Hide resolved
@deer
Copy link
Contributor Author

deer commented Aug 1, 2023

error: Import 'https://deno.land/[email protected]/path/glob.ts' failed: 500 Internal Server Error
at https://deno.land/[email protected]/path/mod.ts:53:15

@cbinzer
Copy link
Contributor

cbinzer commented Aug 6, 2023

Hi, me again :-) I am wondering how to add static files like styles or images to a plugin? Is there a way to specify this in a plugin?

@deer
Copy link
Contributor Author

deer commented Aug 17, 2023

Should this be closed? The core code hasn't been changed in more than two weeks, but it didn't make it into 1.4. I guess the preferred approach is to do something different, e.g. #1602. Still a bit disappointing to have to wait at least another month until plugins can create islands.

@marvinhagemeister
Copy link
Collaborator

marvinhagemeister commented Aug 17, 2023

Oh looks like I misunderstood it. I wasn't sure if you wanted to see this merged since you opened #1602 and wrote this in your initial post "I'm not super excited about the implementation, but it seems to work."

I'm having the next week off and I'll take a look at this PR after that.

@deer
Copy link
Contributor Author

deer commented Aug 17, 2023

It's that tough balancing act of releasing functionality that will definitely be deprecated in the future. What maintenance burden does releasing this impose, if we know we're going to do something better in the future? But on the other hand, there's a need for this now, and no concrete implementation for the "grand refactor" of projects as plugins.

Fortunately I don't have to make this decision; I can just complain! 😂

That being said, I do volunteer to fix bugs with this, just like I did with the route/middleware plugin stuff.

Edit: my point about not being super excited is that it's not going to scale to all the other things plugins might want. But it at least seems to solve this one issue.

@mcgear
Copy link
Contributor

mcgear commented Aug 24, 2023

I could use this feature for sure, as i have a number of component libraries that need to register certain controls as islands... Are there plans to merge this as a temp solution while we wait for projects as plugins (#1602 )?

@deer
Copy link
Contributor Author

deer commented Aug 30, 2023

Hi @marvinhagemeister, I hope you had a relaxing vacation last week. Will you be able to look at this PR this week?

Additionally it looks like a change to deno canary is causing fmt to look at the format of code within markdown files. It seems like they're not properly formatted. I'll open a PR for this.

#1715 does fix the formatting issues, but fails for some unrelated flaky test issues.

Copy link
Collaborator

@marvinhagemeister marvinhagemeister left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice one! Sorry it took so long to review.

@marvinhagemeister marvinhagemeister merged commit 72edafd into denoland:main Nov 22, 2023
7 checks passed
@deer deer deleted the feat_plugin_islands branch November 22, 2023 10:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Plugins don't support islands
5 participants