-
Notifications
You must be signed in to change notification settings - Fork 14
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
module :http_uri not available in OTP release #66
Comments
You're probably running different versions of Erlang between your dev and prod environments. I'm on Erlang/OTP 24 and it gives me a warning that |
Hm indeed, it looks like a difference in OTP versions. Thanks @aparod ❤️ |
What about |
hi @achedeuzot its' been quite some time and this issue still isn't resolved. I've also noticed you have quite a few dependabot PRs waiting to be updated. Did you need some help with this project? |
@allenwyma I'd be happy to have a hand on it indeed, I've been quite busy lately so I've struggled to find time to maintain this even tough I still use it in production. |
I'm more than happy to help out on this cause I'd hate to see such a useful package stalled out due to someone being busy. :) |
@achedeuzot as a workaround, erlang uses to use
|
They do look false though, don't they ? Well we can set them as truthy but it might provide a less strict validation which could have unintended consequences on end-users of the lib :/ This option would probably require a lib major version bump so users are aware of the breaking change. What about using |
URI.parse/1 will parse anything:
|
@achedeuzot let me know what you think of #88 I went back and looked at the code for http_uri and looks like they hard checked for certain ports if they are there or not, which is what i tried to emulate. |
#88 looks good :) I'm just a bit unsure of using |
replaced with URI.parse/1 and seems to work fine, at least for the tests. |
Looks good with |
@achedeuzot no idea how this stuff works, can you take a moment to try to fix that? |
Hi @achedeuzot (pinging also @allenwyma and @esacteksab) I'd be willing to sort out the URI stuff and the CI matrix, but I think it would be a good idea to clarify a couple of things first... URI ParsingFirstly, Secondly, it is not possible to specify a minimum OTP version in But, So, I think the best way forward with URI parsing is to switch to using Elixir's Build MatrixThe current CI configuration runs In comparison, Ecto runs 3. I propose reducing down to 3. I would keep the same minimum versions as now (Elixir 1.9.4 and OTP 20.3), plus the latest releases of both (currently Elixir 1.16.0 and OTP 26.2.1) plus one more in the middle (Elixir 1.13, OTP 23). |
Additional note: it would be necessary to implement the failure cases of |
Hi @joeyates 👋 I haven't had the time lately to give this lib the love it deserves. I'm happy to merge PRs that fix or improve the CI as well as the compatibility matrix and support :) |
I've made a PR (#90) with the introduction of |
All the pending pull requests have been merged and/or the corresponding issue fixed. Thank you all for your contributions ❤️🤗 |
I'm using the
URLValidator.validate_url
function and it works great in development. I created a phoenix production release and it is erroring at that function with** (UndefinedFunctionError) function :http_uri.parse/1 is undefined (module :http_uri is not available)
. I'm fairly new to elixir and I'm having a hard time figuring out why that erlang module wouldn't be available in the release.The text was updated successfully, but these errors were encountered: