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

chore(deps): September 2024 bump #2410

Merged
merged 6 commits into from
Sep 24, 2024
Merged

Conversation

jailln
Copy link
Contributor

@jailln jailln commented Sep 18, 2024

Description

Update all dependencies (when possible).

Previous major bump in #2342

Peer dependencies

  • three (0.165.0 to 0.168.0)

A bug appears in 0.167.1: Zooming in a view with a perspective camera does not work anymore. I've narrowed the problem down to the buffer computed in View.getPickingPositionFromDepth which is different with three 0.166.1 and 0.167.1.
I also found the responsible commit in threejs using yarn link and git bisect. It comes from the following PR (note that the commit hash is a38bbdd6fbe971049f2083d79bbca2cda7972a44 and not the one in the PR). I haven't found out the buug yet, it's quite low level 😅 cc @Desplandis if you have any ideas
=> Solved

  • proj4 (2.11.0 to 2.12.1): No breaking changes

Dependencies

Developer dependencies

  • @babel/cli, @babel/core and the following plug-ins: @babel/plugin-transform-runtime and @babel/preset-env.
  • babel-loader
  • chart.js
  • conventional-changelog-cli: same as chore(deps): June 2024 bump #2342 - Pure ESM package, issues with our CJS script.
  • core-js
  • eslint: same as chore(deps): June 2024 bump #2342 - cannot update to ESLint 9 because eslint-plugin-import requires ESLint8.
  • eslint-plugin-import
  • eslint-webpack-plugin
  • mocha
  • node-fetch: removed since node 18 natively supports the fetch API.
  • puppeteer
  • replace-in-file
  • sinon
  • typescript
  • webpack
  • webpack-dev-server
  • @xmldom/xmldom

I've also noticed that the Fetcher tests are not run by the CI and fail locally (same on master). I haven't look at why they don't run on the CI yet, if someone knows that would be greatly appreciated :) The local failure is quite weird: it only fails un run mode but succeeds in debug mode 😅 => Solved

@jailln jailln marked this pull request as draft September 18, 2024 15:13
@Desplandis
Copy link
Contributor

Desplandis commented Sep 19, 2024

I'm all (in a near future) for removing scripts that are maybe not necessary anymore. That includes:

  • The _BATCHID substitution script for GLTFLoader
  • The copying of three/examples/jsm scripts into the ThreeExtended directory. We could relax the linting rules on .js extension and let the bundle bundle all ESM modules together.

This could remove 3/4 dev dependencies in my opinion.

@Desplandis
Copy link
Contributor

For the three.js issue (thanks to your bisect), we can assume that since the packing in GPU from depth to RGBA has changed, our unpack in CPU (see the code below) is no longer valid...

const UnpackDownscale = 255 / 256; // 0..1 -> fraction (excluding 1)
const bitSh = new THREE.Vector4(
UnpackDownscale / (256.0 * 256.0 * 256.0),
UnpackDownscale / (256.0 * 256.0),
UnpackDownscale / 256.0,
UnpackDownscale);
export function unpack1K(color, factor) {
return factor ? bitSh.dot(color) * factor : bitSh.dot(color);
}

@Desplandis
Copy link
Contributor

Weird for the test/unit/fetcher.js test, it works locally for me.

@jailln
Copy link
Contributor Author

jailln commented Sep 19, 2024

I'm all (in a near future) for removing scripts that are maybe not necessary anymore. That includes:

  • The _BATCHID substitution script for GLTFLoader
  • The copying of three/examples/jsm scripts into the ThreeExtended directory. We could relax the linting rules on .js extension and let the bundle bundle all ESM modules together.

This could remove 3/4 dev dependencies in my opinion.

Totally agree with you!

For the three.js issue (thanks to your bisect), we can assume that since the packing in GPU from depth to RGBA has changed, our unpack in CPU (see the code below) is no longer valid...

Yes, that was it! Thanks to you and @AnthonyGlt for finding that

Weird for the test/unit/fetcher.js test, it works locally for me.

It was related to the node version. The test works locally for me when I switch to node 18. However it is still not run by the ci but this is not related to this PR.

@jailln jailln requested a review from Desplandis September 19, 2024 14:22
@jailln jailln marked this pull request as ready for review September 19, 2024 14:23
Copy link
Contributor

@Desplandis Desplandis left a comment

Choose a reason for hiding this comment

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

Thanks for the fixes =)

@jailln jailln merged commit 1d9ffe9 into iTowns:master Sep 24, 2024
9 checks passed
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.

2 participants