-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
AlpineLinux and musl-libc fixes #3986
AlpineLinux and musl-libc fixes #3986
Conversation
@@ -8,7 +8,7 @@ struct Iconv | |||
original_from, original_to = from, to | |||
|
|||
@skip_invalid = invalid == :skip | |||
{% unless flag?(:freebsd) %} | |||
{% unless flag?(:freebsd) || flag?(:musl) %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is out of the scope of the PR but is failing silently here a good idea?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not out of scope, but iconv in musl-libc doesn't provide any solution for ignoring invalid bytes —FreeBSD provides __iconv
to solve this.
I'm not sure what I can do. I could raise, but we couldn't compile anything then, because ignore_invalid
is the default. Or maybe I should let it choke on invalid bytes, check Errno for EILSEQ, and replace the invalid bytes manually? Something akin to http://git.alpinelinux.org/cgit/aports/tree/main/musl/iconv.c?h=3.5-stable#n76 I suppose.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah yes, I didn't see the __iconv usage for freebsd. I guess silently failing makes sense here.
macOS builds on Travis look to be dead :/ |
@ysbaddaden I think maybe removing libevent from this line would fix it: https://github.com/crystal-lang/crystal/blob/master/bin/ci#L152. |
After spending some time on the issue there is nothing to do, but avoid to set the libiconv |
4ebe161
to
185df82
Compare
Travis is happy and so am I. |
fixes #3974
fixes #3980