web-ifc-viewer: Peer dep ‹three› "^0.135.0" conflicts with latest ‹web-ifc-three› (v0.0.122) own peer dep requirement "^0.149.0"
Problem
Since web-ifc-three
upgraded its three
peer dependency from v0.135 to v0.149 in its latest version 0.0.122, I believe there is currently a mismatch with web-ifc-viewer
’s own three
peer dependency to v0.135.
web-ifc-viewer/viewer/package.json
(L61–63):
…,
"peerDependencies": {
"three": "^0.135.0"
}
web-ifc-three/web-ifc-three/package.json
(L65–67):
…,
"peerDependencies": {
"three": "^0.149.0"
}
Possible solution
I guess web-ifc-viewer
’s three
peer dep should be upgraded to v0.149 as well:
web-ifc-viewer/viewer/package.json
(L61–63):
…,
"peerDependencies": {
"three": "^0.149.0"
}
Steps to reproduce
I ran in this problem, while executing npm install
in a project where I am trying to import latest versions of both web-ifc-three
(v0.0.122) and web-ifc-viewer
(v1.0.213):
"dependencies": {
[…],
"web-ifc-three": "^0.0.122",
"web-ifc-viewer": "^1.0.213"
},
Error report from NPM:
% npm install
code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: […]
npm ERR! Found: three@0.149.0
npm ERR! node_modules/three
npm ERR! peer three@"^0.149.0" from web-ifc-three@0.0.122
npm ERR! node_modules/web-ifc-three
npm ERR! web-ifc-three@"^0.0.122" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! web-ifc-viewer@"^1.0.213" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: three@0.135.0
npm ERR! node_modules/three
npm ERR! peer three@"^0.135.0" from web-ifc-viewer@1.0.213
npm ERR! node_modules/web-ifc-viewer
npm ERR! web-ifc-viewer@"^1.0.213" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
[…]
About this issue
- Original URL
- State: open
- Created a year ago
- Reactions: 1
- Comments: 16 (1 by maintainers)
Hey! Right now we are focusing all our resources in this repository, which uses the latest versions of all the libraries, is much more powerful (e.g. 200mb IFC in 2 seconds), more maintainable, documented and tested. Once we make an official release (at some point this summer), it is very likely that web-ifc-viewer will be no longer maintained. Many of the APIs are similar, so the transition should be quite easy.
Upgrading web-ifc-viewer to the latest three.js requires time that we can’t allocate right now, so we will wait until that release.
Got it. We will update all the versions and dependencies asap!
Thank you, great to hear. You are moving in a space, where catenda, revit forge and xbim also move. “heavy” support for IFC takes a great amount of resources, and adoption of your library by major players/commercial players, I believe, is part of what can bring in such necessary resources. I hope it will continue to grow, as it looks very promising on first impressions, relatively to my experience setting up those other libraries.
On Thu, 31 Aug 2023 at 14:48, Antonio González Viegas < @.***> wrote:
Hey @pylgrym,
We will officially deprecate web-ifc-three and web-ifc-viewer in less than a month. We Will keep both libraries up, but they won’t be maintained in the future. Instead, everyone should use the components library.
IFC.js is a young project, and what we are trying to solve here is not a known problem. We don’t think this situation will happen again in the future, but this is the only way we can make all the improvements and discoveried of the last month a reality.
I think it’s important to note that today neither you nor the rest of the users of the library are clients, as the code is free and open and has been maintained by a bunch of great devs in their free time.
That being said, the project is now scaling and becoming a company to become sustainable, and it is likely that the speed of development, stability and support will improve a lot. We have a big launch scheduled for September 20 (including a brand new documentation with tutorials). After that date, there might be “clients”, but the code will remain free and open.
Companies like Bosch, Enel and Ferrovial are already using components. If you think our code fits your company, you are free to use it. If not, you can propose improvements, help to improve, choose another alternative or create your own library.
Cheers!
Hey @RyugaRyuzaki can you please open an issue in the components repo? thanks!
Thanks for your swift feedback. I just discovered IFCjs/web-ifc-three#149, I guess both issues are intermingled.