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

Housecleaning #176

Merged
merged 4 commits into from
Oct 18, 2024
Merged

Housecleaning #176

merged 4 commits into from
Oct 18, 2024

Conversation

mmmries
Copy link
Collaborator

@mmmries mmmries commented Oct 16, 2024

This PR handles some general housecleaning, making sure the project is up-to-date with the most recent versions of Elixir and Erlang and updating our testing matrix.

@mmmries
Copy link
Collaborator Author

mmmries commented Oct 16, 2024

@autodidaddict it looks like the latest nkeys library does not build cleanly on OTP 24. I'm thinking it's time to update our compatibility and testing matrix anyway. What would you think about supporting OTP 25+ and Elixir 1.14+? I'm going to try that in this PR

Screenshot 2024-10-16 at 1 28 38 PM

@autodidaddict
Copy link
Collaborator

I think that's a good idea. The mix file from nkeys.ex has a requirement for Elixir 1.17 (it comes that way with "mix new" now, apparently...), which is I think where the OTP dependency is coming from as well.

"libgraph": {:hex, :libgraph, "0.13.3", "20732b7bafb933dcf7351c479e03076ebd14a85fd3202c67a1c197f4f7c2466b", [:mix], [], "hexpm", "78f2576eef615440b46f10060b1de1c86640441422832052686df53dc3c148c6"},
"makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"},
"makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"},
"makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"},
"nimble_options": {:hex, :nimble_options, "1.0.2", "92098a74df0072ff37d0c12ace58574d26880e522c22801437151a159392270e", [:mix], [], "hexpm", "fd12a8db2021036ce12a309f26f564ec367373265b53e25403f0ee697380f1b8"},
"nimble_parsec": {:hex, :nimble_parsec, "1.4.0", "51f9b613ea62cfa97b25ccc2c1b4216e81df970acd8e16e8d1bdc58fef21370d", [:mix], [], "hexpm", "9c565862810fb383e9838c1dd2d7d2c437b3d13b267414ba6af33e50d2d1cf28"},
"nkeys": {:hex, :nkeys, "0.2.1", "c183105135de9d0c07d649f6a13e39792b095772cdbeaacf37dea4e35b647100", [:mix], [{:ed25519, "~> 1.3", [hex: :ed25519, repo: "hexpm", optional: false]}], "hexpm", "946551188bd103559e5129835f782f32ea26027d0ee7063eb6910ffd707fc1aa"},
"nkeys": {:hex, :nkeys, "0.3.0", "837add5261a3cdd8ff75b54e0475062313093929ab5e042fa48e010f33b10d16", [:mix], [{:ed25519, "~> 1.3", [hex: :ed25519, repo: "hexpm", optional: false]}, {:kcl, "~> 1.4", [hex: :kcl, repo: "hexpm", optional: false]}], "hexpm", "b5af773a296620ee8eeb1ec6dc5b68f716386f7e53f7bda8c4ac23515823dfe4"},
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@autodidaddict are there new functions in the nkeys library that you're wanting to use in the nats client? I'm wondering if we should bump our dependency to ~> 0.3 or if we should leave it at ~> 0.2 so it's an optional upgrade for people?

@mmmries
Copy link
Collaborator Author

mmmries commented Oct 18, 2024

I think that's a good idea. The mix file from nkeys.ex has a requirement for Elixir 1.17 (it comes that way with "mix new" now, apparently...), which is I think where the OTP dependency is coming from as well.

The test matrix now uses elixir 1.14, 1.16 and 1.17 (it's defined as main to keep up with whatever is latest at the time of the CI job). So that definition doesn't appear to break backward compatibility for this library. I think the previous failure was because the binary pattern match didn't previously support the - operator. So we could bump the nkeys library to elixir: "~> 1.14" if we wanted to, but it it doesn't seem to be a problem for users of this library if you want to leave it as-is.

@mmmries mmmries merged commit bdfbcb0 into main Oct 18, 2024
3 checks passed
@mmmries mmmries deleted the housecleaning branch October 18, 2024 08:43
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.

2 participants