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

Full-icu tries to install a version of icu4c-data (68l) that doesn't exist #61

Closed
lukeundtrug opened this issue Jun 11, 2021 · 12 comments · Fixed by #53
Closed

Full-icu tries to install a version of icu4c-data (68l) that doesn't exist #61

lukeundtrug opened this issue Jun 11, 2021 · 12 comments · Fixed by #53
Assignees

Comments

@lukeundtrug
Copy link

Hi there,

it seems I'm encountering a bug where in our CI pipeline full-icu tries to install a version of icu4c-data that does not exist. When trying to install this version locally I get the same error as shown in the screenshot. Does anybody encounter the same problem?

image

@lukeundtrug
Copy link
Author

lukeundtrug commented Jun 14, 2021

It seems that there just isn't a package up on npm for v.68.2/68l yet as can be seen here:
image

A rollback to Node v14.15.0 fixed the issue for us as the corresponding ICU version for that is 67l for which a tag does exist 👍

@marcwittke
Copy link

my Fedora with nodejs 14.17.0 already requires 69l

npm install icu4c-data@69l (Node 16.5.0 and small-icu 69.1) -> icudt69l.dat
Looks like you are using yarn…
full-icu$ /usr/bin/node /usr/lib/node_modules/yarn/bin/yarn.js add icu4c-data@69l --no-lockfile --ignore-scripts
yarn add v1.22.10
info No lockfile found.
[1/4] Resolving packages...
error Couldn't find any versions for "icu4c-data" that matches "69l"

solved it for now by downgrading to 14.16.0: dnf install nodejs-14.16.0

@santiago-perez-axa
Copy link

Same problem here with the latest Node LTS version 14.17.5.

12 verbose stack icu4c-data: No matching version found for icu4c-data@69l.

@LyraelRayne
Copy link

@srl295 any chance you could rescue us the way you did in #46 ?

@srl295
Copy link
Member

srl295 commented Sep 24, 2021

I'd really rather get help with #53, that would solve this permanently

@srl295
Copy link
Member

srl295 commented Sep 24, 2021

Try #53 it fixes this

@LyraelRayne
Copy link

@srl295 That looks great, although I don't have access to the systems which need it in order to test (maybe sometime I'll try and create one, but I don't normally use RedHat). Will this be something that "just works" if people update to the latest full-icu in package.json?

This issue would have affected anybody using RedHat's Universal Base Image because for some reason Node doesn't detect the files installed by nodejs-full-i18n-14.17.5-1.module+el8.4.0+12247+e2879e58.x86_64.rpm . RedHat's "Universal Base Image" https://cdn-ubi.redhat.com/content/public/ubi/dist/ubi8/8/x86_64/appstream/os/Packages/n/ doesn't give users the option to downgrade node versions (only one v14 version is available) and they recently upgraded to an affected version of the package.

@srl295
Copy link
Member

srl295 commented Sep 28, 2021

@srl295 That looks great, although I don't have access to the systems which need it in order to test (maybe sometime I'll try and create one, but I don't normally use RedHat). Will this be something that "just works" if people update to the latest full-icu in package.json?

This issue would have affected anybody using RedHat's Universal Base Image because for some reason Node doesn't detect the files installed by nodejs-full-i18n-14.17.5-1.module+el8.4.0+12247+e2879e58.x86_64.rpm . RedHat's "Universal Base Image" https://cdn-ubi.redhat.com/content/public/ubi/dist/ubi8/8/x86_64/appstream/os/Packages/n/ doesn't give users the option to downgrade node versions (only one v14 version is available) and they recently upgraded to an affected version of the package.

Yes it will "just work".

@srl295 srl295 self-assigned this Sep 28, 2021
@srl295 srl295 closed this as completed in #53 Oct 4, 2021
@marcwittke
Copy link

fwiw: node 16+ includes full-icu by default, so we removed it from our package.json and the error went away

https://nodejs.org/docs/latest-v16.x/api/intl.html#embed-the-entire-icu-full-icu

--with-intl=full-icu (default)

@srl295
Copy link
Member

srl295 commented Nov 22, 2021

@marcwittke yes, although removal should not be necessary:

  • if full icu data is built into node, then the full-icu module doesn't do anything (harmless)

  • if you upgrade to the latest full-icu without a later node, the download should succeed.

But of course it's fine to remove a module you will no longer need.

@johnnygreen
Copy link

hi ...
the env i'm in has node v18 with small-icu, completely locked down / using private npm reg.
its trying to download the file from gh, no go.
tried to use FULL_ICU_PREFER_NPM=1 ... results in npm download failing with icu4c-data@731 404

requesting team to change my env to full-icu ... but would be nice for the npm package to exist.

@srl295 srl295 reopened this May 3, 2024
@srl295 srl295 closed this as completed May 3, 2024
@srl295
Copy link
Member

srl295 commented May 3, 2024

@johnnygreen i assume gh is locked down somehow... sorry, i don't think i can add the packages.

perhaps you could follow https://github.com/nodejs/icu4c-data-npm and make your own package? you can use the API in full-icu to verify that you have the right datafile.

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 a pull request may close this issue.

6 participants