iles icon indicating copy to clipboard operation
iles copied to clipboard

Issues with peer dependencies

Open ouuan opened this issue 1 year ago • 11 comments

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 avatar Jan 01 '23 07:01 ouuan

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

ouuan avatar Jan 14 '23 03:01 ouuan

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.

ElMassimo avatar Jan 16 '23 16:01 ElMassimo

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.

ouuan avatar Mar 27 '23 08:03 ouuan

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 😃

ElMassimo avatar Mar 27 '23 11:03 ElMassimo

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.

ouuan avatar Mar 27 '23 11:03 ouuan

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.

ElMassimo avatar Mar 27 '23 11:03 ElMassimo

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

TechAkayy avatar May 02 '23 12:05 TechAkayy

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

ouuan avatar May 21 '23 08:05 ouuan

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

ElMassimo avatar Jun 26 '23 19:06 ElMassimo

Awesome, can't wait 😀

TechAkayy avatar Jul 08 '23 09:07 TechAkayy

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

ouuan avatar Oct 07 '23 05:10 ouuan