beam-community / stripity-stripe

An Elixir Library for Stripe
Other
965 stars 344 forks source link

Elixir 1.17 / OTP 27 - Warning when using Customer.create #847

Open lolo-frank opened 1 month ago

lolo-frank commented 1 month ago

Existing Issue or Pull Request Verification

Package Version

3.2.0

Are you using the latest version?

Steps to Reproduce

On Elixir 1.17.2 and OTP 27.0.1, install stripity-stripe (3.2.0). When a customer is created, a warning is output.

Stripe.Customer.create(%{email: "frank@example.com"})

Expected Result

{:ok,
 %Stripe.Customer{
   address: nil,
   balance: 0,
   cash_balance: nil,
   created: 1721076742,
   currency: nil,
   default_source: nil,
   delinquent: false,
   description: nil,
   discount: nil,
   email: "frank@example.com",
   id: "xxx",
   invoice_credit_balance: nil,
   invoice_prefix: "xxx",
   invoice_settings: %{
     custom_fields: nil,
     default_payment_method: nil,
     footer: nil,
     rendering_options: nil
   },
   livemode: false,
   metadata: %{},
   name: nil,
   next_invoice_sequence: 1,
   object: "customer",
   phone: nil,
   preferred_locales: [],
   shipping: nil,
   sources: nil,
   subscriptions: nil,
   tax: nil,
   tax_exempt: "none",
   tax_ids: nil,
   test_clock: nil
 }}

Actual Result

iex(1)> Stripe.Customer.create(%{email: "frank@example.com"})
warning: using map.field notation (without parentheses) to invoke function Stripe.Customer.__struct__() is deprecated, you must add parentheses instead: remote.function()
  (stripity_stripe 3.2.0) lib/stripe/converter.ex:41: Stripe.Converter.convert_stripe_object/1
  (stripity_stripe 3.2.0) lib/stripe/request.ex:204: Stripe.Request.make_request/1
  (elixir 1.17.2) src/elixir.erl:386: :elixir.eval_external_handler/3
  (stdlib 6.0.1) erl_eval.erl:904: :erl_eval.do_apply/7
  (elixir 1.17.2) src/elixir.erl:364: :elixir.eval_forms/4
  (elixir 1.17.2) lib/module/parallel_checker.ex:112: Module.ParallelChecker.verify/1
  (iex 1.17.2) lib/iex/evaluator.ex:332: IEx.Evaluator.eval_and_inspect/3
  (iex 1.17.2) lib/iex/evaluator.ex:306: IEx.Evaluator.eval_and_inspect_parsed/3
  (iex 1.17.2) lib/iex/evaluator.ex:295: IEx.Evaluator.parse_eval_inspect/4
  (iex 1.17.2) lib/iex/evaluator.ex:187: IEx.Evaluator.loop/1
  (iex 1.17.2) lib/iex/evaluator.ex:32: IEx.Evaluator.init/5
  (stdlib 6.0.1) proc_lib.erl:329: :proc_lib.init_p_do_apply/3

{:ok,
 %Stripe.Customer{
   address: nil,
   balance: 0,
   cash_balance: nil,
   created: 1721076742,
   currency: nil,
   default_source: nil,
   delinquent: false,
   description: nil,
   discount: nil,
   email: "frank@example.com",
   id: "xxx",
   invoice_credit_balance: nil,
   invoice_prefix: "xxx",
   invoice_settings: %{
     custom_fields: nil,
     default_payment_method: nil,
     footer: nil,
     rendering_options: nil
   },
   livemode: false,
   metadata: %{},
   name: nil,
   next_invoice_sequence: 1,
   object: "customer",
   phone: nil,
   preferred_locales: [],
   shipping: nil,
   sources: nil,
   subscriptions: nil,
   tax: nil,
   tax_exempt: "none",
   tax_ids: nil,
   test_clock: nil
 }}
aj-foster commented 1 month ago

Note: Fixed in #840, just need a new release.

yordis commented 1 month ago

Which, I will have to merge https://github.com/beam-community/stripity-stripe/pull/843 after getting confirmation from @doomspork

github-actions[bot] commented 1 week ago

This issue has been automatically marked as "stale:discard". If this issue still relevant, please leave any comment (for example, "bump"), and we'll keep it open. We are sorry that we haven't been able to prioritize it yet. If you have any new additional information, please include it with your comment.