ElMassimo/iles

Issues with peer dependencies

Opened this issue ยท 11 comments

ouuan commented

Description ๐Ÿ“–

After bumping the dependencies, issues with peer dependencies are found by pnpm.

I think @islands/feed needs to update the peer dependency version and iles needs to bump its dependencies.

Reproduction ๐Ÿž

Run ncu, pnpm i and pnpm typecheck in https://github.com/ouuan/iles-blog.

pnpm i shows:

โ€‰WARNโ€‰ Issues with peer dependencies found
.
โ”œโ”€โ”ฌ @islands/feed 0.8.0
โ”‚ โ””โ”€โ”€ โœ• unmet peer iles@^0.8: found 0.9.0
โ””โ”€โ”ฌ iles 0.9.0
  โ””โ”€โ”ฌ unplugin-vue-components 0.21.2
    โ””โ”€โ”ฌ unplugin 0.7.2
      โ””โ”€โ”€ โœ• unmet peer vite@"^2.3.0 || ^3.0.0-0": found 4.0.3 in iles

pnpm typecheck shows: (see edit log) It turns out that the type check error was caused by https://github.com/doesdev/rollup-plugin-analyzer not specifying rollup version in package.json and using rollup 2, which is not related to iles, and the peer dependency warnings are harmless. But still love to see updated dependencies with the peer dependency warning resolved :)

Dependencies Info

Run npx iles info and pnpm list (or npm list) and provide the output:

iles v0.9.0 vite v4.0.3

dependencies:
@giscus/vue 2.2.6
@types/html-escaper 3.0.0
@unocss/reset 0.48.0
@vueuse/components 9.9.0
@vueuse/core 9.9.0
date-fns 2.29.3
filesize 10.0.6
fuse.js 6.6.2
hast-util-select 5.0.3
html-escaper 3.0.3
iles 0.9.0
isbot 3.6.5
katex 0.16.4
plausible-tracker 0.3.8
prism-themes 1.9.0
simple-git 3.15.1
ts-exhaustive-check 1.0.0
unified 10.1.2
unocss 0.48.0
vue 3.2.45

devDependencies:
@cloudflare/workers-types 4.20221111.1
@iconify-json/mdi 1.1.41
@islands/excerpt 0.9.0
@islands/feed 0.8.0
@islands/headings 0.8.1
@islands/images 0.8.1
@islands/prism 0.8.0
@types/hast 2.3.4
@types/node 18.11.18
@typescript-eslint/eslint-plugin 5.47.1
@typescript-eslint/parser 5.47.1
@unocss/transformer-directives 0.48.0
@vue/eslint-config-typescript 11.0.2
@vue/runtime-core 3.2.45
eslint 8.31.0
eslint-config-airbnb-base 15.0.0
eslint-plugin-import 2.26.0
eslint-plugin-vue 9.8.0
got 11.8.5
rehype-katex 6.0.2
remark-gfm 3.0.1
remark-math 5.1.1
rollup-plugin-analyzer 4.0.0
sass 1.57.1
tsup 6.3.0
typescript 4.9.4
vite 4.0.3
vite-plugin-compression 0.5.1
vue-tsc 1.0.19
ouuan commented

BTW, there seem to be a lot of outdated dependencies. Any reason not to bump them, or just have no time?

Hi, I was on vacation, planning to update dependencies later on.

There are some incompatibilities related with changes in the way Vite 4 handles ESM, but there should be a way to workaround those.

ouuan commented

Any chance that the dependencies could get updated? I'm fine even if iles itself stops gaining new features, but I hope that at least the dependencies can be up-to-date.

There has been too long since the last update, so I can understand the difficulty to do this. I'd like to help if needed, but I'm not sure how to detect compatibility problems and ensure that everything works fine after upgrading the dependencies.

Hi @ouuan!

Doing batch upgrades every now and then is more efficient for me, as otherwise updating dependencies becomes a very time consuming chore.

Primarily, there wasn't a compelling enough reason to update deps given that รฎles was working properly, but Vite 4.3 has some potential performance improvements that would benefit รฎles users, and that's a nice motivation.

Thanks for reaching out, and stay tuned ๐Ÿ˜ƒ

ouuan commented

I think when a batch upgrade contains breaking changes, it's harder to locate where it breaks, so it's easier to keep the dependencies up-to-date continuously ๐Ÿค”

I wrote the previous comment because I was not able to use the TypeScript 5 array extends syntax whose support was added in Vite 4.2. It's not very important though.

Agreed, but it's a balancing act.

In the case of Vite, which acts as a platform for this library, given รฎles is making use of most of its featuresโ€”some in very specific waysโ€”upgrading always has the risk of uncovering new bugs (both in Vite and รฎles).

Without enough time to test, these bugs will be caught by รฎles users instead.

Releasing less frequently allows me to spend more time testing manually in my sites when I do a release, resulting in รฎles users getting more stable experience, both when they upgrade or try it for the first time through create-iles.

Good day Max! With latest update to 0.9.5 & also create-iles package as well, any plans to update peer dependencies of @islands packages? I'm using feed and getting the peer dependencies error. Thanks.

image

ouuan commented

Hi, @ElMassimo! There has been a month since the release of Vite 4.3. Any plans to update the dependencies?

Sorry, big life changes. Preparing a release targeting Vite 4.4.

Awesome, can't wait ๐Ÿ˜€

ouuan commented

@ElMassimo What's the status of 86ea918? Could you please test the latest Vite 4.4 and make a new iles release?