-
Notifications
You must be signed in to change notification settings - Fork 29.7k
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
Investigate non-ASCII build file path on Windows #17077
Comments
It's ironic that ICU doesn't support Unicode properly. The issue here is that
Who maintains this file? It contains a link to http://bugs.icu-project.org/, but its history consists only of Node.js-local changes. cc @srl295 |
Welcome to the irony of my life. You can workaround with |
@seishun I can't even get this far. I get:
… and then an editor is popped up to edit (running I ran this from in powershell and cmd.exe, in and out of the visual studio command tools for 2015 and 2017. |
@mmarchini what is the actual path of your node dir ? I see both:
and
|
Thx. Will retry when back at that box. |
@srl295 do you think you'll have to time to look into it any time soon? I could try fixing it myself, but I might not have enough knowledge about it. |
@seishun I'll have to see, I just reinstalled my windows env and have some things coming up. So not necessarily soon. |
The issue is in iculslocs. When run from a non-ASCII path, it generates a file with invalid UTF-8, which genrb chokes on. To reproduce, run:
@srl295 how would you suggest to proceed with this? It seems iculslocs is a third-party project. |
*edit* I wrote iculslocs for node, but thought that it might be used upstream in ICU. As things stand now, node is the only user and I have not maintained any changes upstream.
@seishun
how would you suggest to proceed with this
it can be fixed by a normal PR. Still did not get to investigate.
|
It looks like you posted an unfinished comment. |
@seishun can you attach the res_index.txt file here? There are multiple files under |
You mean the file iculslocs generates? Here you go: res_index.txt |
^ that would still be interesting, but I think I found the problem. iculslocs writes out:
… but the path given is based on
(package |
@seishun are you able to test the commit I made to https://github.com/srl295/node/tree/fix-iculslocs ? |
@seishun perfect, that confirms what I thought. I think the above fix will solve the issue. Thanks for your investigation. For the record, your file had broken utf-8 in the comment mentioned above.
|
That fixes the issue with iculslocs, but doesn't completely fix the build issue because there is another similar issue with "protocol_generated_sources" from V8. In addition, fixing both issues would allow builds from Latin-1 paths, but not for all Unicode paths. Fixing it generally probably requires moving to a different build system (#18560 (comment)). |
@seishun OK. this fix should at least make the ICU tooling subsystem not dependent on the path (whether latin1 or all unicode). I'll open a PR. |
- argv[0] was being emitted into a utf-8 stream, but argv[0] may not be legal utf-8 - fix by not emitting argv[0] (was only for a source comment) - partially resolves nodejs#17077 PR-URL: nodejs#19756 Fixes: nodejs#17077 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Nikolai Vavilov <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]>
- argv[0] was being emitted into a utf-8 stream, but argv[0] may not be legal utf-8 - fix by not emitting argv[0] (was only for a source comment) - partially resolves #17077 PR-URL: #19756 Fixes: #17077 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Nikolai Vavilov <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]>
- argv[0] was being emitted into a utf-8 stream, but argv[0] may not be legal utf-8 - fix by not emitting argv[0] (was only for a source comment) - partially resolves #17077 PR-URL: #19756 Fixes: #17077 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Nikolai Vavilov <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]>
If there's a non-ASCII character in the path to the node directory, the build will break. This issue is only happening on Windows as far as I'm aware (there's a similar bug on POSIX systems, but it was already fixed). See the discussion on #16735 and the errors below:
(https://gist.github.com/anonymous/875aac0ab3e4dfa219854b691f8d3431)
The text was updated successfully, but these errors were encountered: