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

Erl26 - fix for erlang 26 #258

Merged
merged 10 commits into from
Jul 31, 2024
Merged

Erl26 - fix for erlang 26 #258

merged 10 commits into from
Jul 31, 2024

Conversation

sedinin
Copy link
Collaborator

@sedinin sedinin commented Apr 24, 2024

Due to this change in SSL:
Change the client default verify option to verify_peer.

need to set option 'verify' to 'verify_none' for connection type 'token'.

@dsrosario
Copy link
Collaborator

Hi @elbrujohalcon, I understand that you are not the maintainer or admin of this repo anymore but is there anything you can do in other for this PR (and others PR that are stuck) to be merge and do a release?

@elbrujohalcon
Copy link
Member

Yeah, @dsrosario … There is one thing I can do. I'll add you as an maintainer to this repo and to the associated hex.pm package so you can start managing it directly, since you're clearly more interested in maintaing this project than @ferigis and anybody else for that matter. :)

@elbrujohalcon
Copy link
Member

elbrujohalcon commented Jul 20, 2024

Done! You're invited to be a maintainer of this repo and you also have access to publish packages for this on Hex.pm. Enjoy! But remember… with great power comes great electricity bill 🤷🏻

Copy link
Collaborator

@dsrosario dsrosario left a comment

Choose a reason for hiding this comment

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

rebar3 dialyzer gives the following errors:

src/apns_connection.erl
Line 99 Column 38: Unknown type gun:headers/0
Line 290 Column 1: Function proxy_connect_to_origin/3 has no local return
Line 309 Column 36: The call gun:connect(GunPid::any(), Destination::#{'host':=string() | {byte(),byte(),byte(),byte()} | {char(),char(),char(),char(),char(),char(),char(),char()}, 'http2_opts':=#{'notify_settings_changed':='true'}, 'port':=char(), 'protocol':='http2', 'tls_opts':=[{'cert',binary()} | {'certfile',string()} | {'key',{'DSAPrivateKey',binary()} | {'ECPrivateKey',binary()} | {'PrivateKeyInfo',binary()} | {'RSAPrivateKey',binary()}} | {'keyfile',string()} | {'verify','verify_none' | 'verify_peer'},...], 'transport':='tls', 'password'=>binary() | maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []), 'username'=>binary() | maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | [])}) will never return since the success typing is (pid(), #{'host':=atom() | string() | {byte(),byte(),byte(),byte()} | {char(),char(),char(),char(),char(),char(),char(),char()}, 'port':=char(), 'password'=>binary() | maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []), 'protocols'=>['http' | 'http2' | 'raw' | 'socks' | {'http',map()} | {'http2',map()} | {'raw',map()} | {'socks',map()}], 'tls_handshake_timeout'=>'infinity' | non_neg_integer(), 'tls_opts'=>[any()], 'transport'=>'tcp' | 'tls', 'username'=>binary() | maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | [])}) -> reference() | [reference(),...] and the contract is (pid(), connect_destination()) -> stream_ref()
Line 638 Column 48: Unknown type apnd:token/0
/Users/dinis.rosario/projects/apns4erl/src/apns_connection.erl:662:2: Invalid type specification for function apns_connection:reply_errors_and_cancel_timers/2.
 The success typing is apns_connection:reply_errors_and_cancel_timers
          (map(), _) -> 'ok'
 But the spec is apns_connection:reply_errors_and_cancel_timers
          ([stream_data()], term()) -> 'ok'
 They do not overlap in the 1st argument


src/apns_feedback.erl
Line 46 Column 7: Unknown function ssl:close/1
Line 58 Column 3: Unknown function ssl:connect/4
===> Warnings written to _build/default/26.2.5.dialyzer_warnings
===> Warnings occurred running dialyzer: 7

rebar.lock Outdated Show resolved Hide resolved
@sedinin sedinin requested a review from dsrosario July 29, 2024 17:47
Copy link
Collaborator

@dsrosario dsrosario left a comment

Choose a reason for hiding this comment

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

@sedinin I have push some changes to fix all the dialyzer warnings but I'm unsure if it's ok (currently I don't have any mean to test it). Can you double check this?
@elbrujohalcon, CI is broken and I don't have any experience regarding Github CI. Can you fix it? :)

@sedinin
Copy link
Collaborator Author

sedinin commented Jul 31, 2024

Thank you @dsrosario, works for me!
I think now we can merge it

Test are broken for a couple of years. Until we fix it we should avoid running it at CI.
@dsrosario dsrosario merged commit 28f5bea into inaka:master Jul 31, 2024
3 checks passed
@dsrosario
Copy link
Collaborator

Thanks @sedinin !

@dsrosario dsrosario mentioned this pull request Jul 31, 2024
@Neustradamus
Copy link

Thanks @sedinin and @dsrosario!

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.

4 participants