Skip to content
This repository has been archived by the owner on Mar 12, 2023. It is now read-only.

Update dependencies #29

Merged
merged 1 commit into from
Dec 27, 2022
Merged

Update dependencies #29

merged 1 commit into from
Dec 27, 2022

Conversation

otoyo
Copy link
Owner

@otoyo otoyo commented Dec 27, 2022

T/O

@otoyo otoyo self-assigned this Dec 27, 2022
@otoyo otoyo merged commit 81232f8 into main Dec 27, 2022
@otoyo otoyo deleted the update-deps branch December 27, 2022 13:45
{:jason, ">= 1.0.0"}
{:espec, "~> 1.9", only: :test},
{:ex_doc, "~> 0.29.1", only: :dev, runtime: false},
{:poison, "~> 5.0"},
Copy link

@esambo esambo Feb 1, 2023

Choose a reason for hiding this comment

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

@otoyo Thank you for maintaining the dependencies.
But I'm curious if there was an explicit reason why zen_ex now requires poison v5 in particular, as I have other dependencies in my app that prevent me from upgrading poison. It is very hard for me to reason about poison versions, as it doesn't have a changelog.
If there is no specific poison 5 feature or behavior that zen_ex depends on (poison#107 seems nice, but not essential), it would be preferable for zen_ex to only enforces the minimum version requirements for it to work, and thereby not forcing me to upgrade my application.

BTW, if you just want to use the latest hex versions in CI, it is recommended to run CI twice, once with the minimum, and once with the latest versions.

How about something less strict like the following?

Suggested change
{:poison, "~> 5.0"},
{:poison, ">= 3.0.0"},

I currently explicitly override this poison version upgrade, with seems to work fine:

Mix.install([
  {:poison, "3.1.0", override: true}, # rather than: 5.0.0
  {:tesla,  "1.4.4", override: true}, # rather than: 1.5.0
  {:zen_ex, "0.8.0"}
])

import ZenEx.HTTPClient, only: [_build_entity: 2]
alias Tesla.Env
alias ZenEx.Entity.Ticket

decode_as = [ticket: Ticket]
status = 409
body = "Error"

{:error, %Env{body: ^body, status: ^status}} =
  %Env{body: body, status: status}
  |> _build_entity(decode_as)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants