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

Build(deps): bump three from 0.132.2 to 0.137.0 #111

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 27, 2022

Bumps three from 0.132.2 to 0.137.0.

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [three](https://github.com/mrdoob/three.js) from 0.132.2 to 0.137.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

---
updated-dependencies:
- dependency-name: three
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Jan 27, 2022
@MichaelLangbein
Copy link
Collaborator

MichaelLangbein commented Jan 31, 2022

Seems like this PR fails because the way dependabot creates PRs is not compatible with our naming-conventions:

  • Your PR title does not follow the naming convention "release-v[0-9]+.[0-9]+.[0-9]"
  • git tag:heads/dependabot/npm_and_yarn/three-0.137.0 !== repo:8.0.1

As far as the actual content of the PR goes:

  • Unit-tests: I do get one error: Chrome 97.0.4692.99 (Windows 10) MapOlService State should zoom in or out for one step FAILED Error: Expected 5 to be close to 6, 0. But I don't think that this error has anything to do with threejs.
  • node .\scripts\library\index.js -c errors out: ERR_PACKAGE_PATH_NOT_EXPORTED Package subpath './package.json' is not defined by "exports" in C:\Users\lang_m13\Desktop\code\js\ukis_projects\ukis-frontend-libraries\node_modules\three\package.json There seems to be a real issue here. Other repos have had similar problems: package.json is not defined by "exports" uuidjs/uuid#444
  • The application as such runs fine, just as before (npm run start).

@MichaelLangbein
Copy link
Collaborator

  • node .\scripts\library\index.js -c errors out: ERR_PACKAGE_PATH_NOT_EXPORTED Package subpath './package.json' is not defined by "exports" in C:\Users\lang_m13\Desktop\code\js\ukis_projects\ukis-frontend-libraries\node_modules\three\package.json There seems to be a real issue here. Other repos have had similar problems: package.json is not defined by "exports" uuidjs/uuid#444

This might be related to the version of node that I'm using locally. Changing that now, will report on results.

@MichaelLangbein
Copy link
Collaborator

MichaelLangbein commented Jan 31, 2022

This might be related to the version of node that I'm using locally. Changing that now, will report on results.

Problem no longer comes up when using node 14.18.3 and after removing package-lock-files in both project-root and scripts-directory.

@MichaelLangbein
Copy link
Collaborator

Documenting here what Mathias and I found out so far.

Threejs uses the new ESM export syntax. The export object in a modules package.json specifies which files may be imported by a user and which may not.

Unfortunately, threejs does not export package.json itself - meaning that we cannot load the package.json in scripts/library/utils.ts for further inspection. Other people have stumbled over this, too: https://stackoverflow.com/questions/10111163/in-node-js-how-can-i-get-the-path-of-a-module-i-have-loaded-via-require-that-is#comment112180323_49455609

This means that loading the package.json is hard.

  • require(<path-to-package.json>) doesn't work because threejs doesn't export the package.json file
  • readFileSync(require.resolve(<path-to-package.json>)) doesn't work either.

@MichaelLangbein
Copy link
Collaborator

MichaelLangbein commented Jan 31, 2022

Another way to go might be to parse the output of npm list (see here).

Also there seems to be the package resolve-package-path that works around this issue.

@boeckMt
Copy link
Member

boeckMt commented Feb 1, 2022

I our function checkTransitiveDependencies where the error occurs, we get a result of depcheck e.g. like this https://github.com/depcheck/depcheck#example. It is basically an object with dependency names and their paths where they are used or missing.

We then try to get all dependencies of this dependency names, by reading their package.json. For this we used a relative path require(${key}/package.json) but this is not working if a package uses exports but don't exports their package itself.


I now used browserify/resolve to get the path of the package and then read the package with FS.readFileSync.

@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 11, 2022

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/npm_and_yarn/three-0.137.0 branch March 11, 2022 07:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants