diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4dde7577..ddd4125c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,8 +13,8 @@ jobs: - name: Set up Elixir uses: erlef/setup-beam@v1 with: - elixir-version: '1.13' - otp-version: '24.3' + version-file: .tool-versions + version-type: strict - name: Restore dependencies cache uses: actions/cache@v4 with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fede8547..6582ff82 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -9,11 +9,11 @@ jobs: strategy: matrix: elixir: - - 1.14 - - 1.13 + - 1.16 + - 1.15 otp: + - 26.2 - 25.3 - - 24.3 steps: - uses: actions/checkout@v4 - name: Set up Elixir @@ -83,8 +83,8 @@ jobs: - name: Set up Elixir uses: erlef/setup-beam@v1 with: - elixir-version: '1.13' - otp-version: '24.3' + elixir-version: '1.15' + otp-version: '26.1' version-type: strict - name: Restore dependencies cache uses: actions/cache@v4 diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 00000000..fae1b1a2 --- /dev/null +++ b/.tool-versions @@ -0,0 +1,2 @@ +elixir 1.16.2 +erlang 26.2.3 diff --git a/lib/tesla/adapter/hackney.ex b/lib/tesla/adapter/hackney.ex index e5965857..3d080787 100644 --- a/lib/tesla/adapter/hackney.ex +++ b/lib/tesla/adapter/hackney.ex @@ -72,7 +72,7 @@ if Code.ensure_loaded?(:hackney) do end defp request(method, url, headers, body, opts) do - handle(:hackney.request(method, url, headers, body || '', opts), opts) + handle(:hackney.request(method, url, headers, body || ~c"", opts), opts) end defp request_stream(method, url, headers, body, opts) do diff --git a/lib/tesla/adapter/httpc.ex b/lib/tesla/adapter/httpc.ex index 5d79a6e1..ebaff440 100644 --- a/lib/tesla/adapter/httpc.ex +++ b/lib/tesla/adapter/httpc.ex @@ -80,8 +80,8 @@ defmodule Tesla.Adapter.Httpc do headers = for {key, value} <- headers, do: {to_charlist(key), to_charlist(value)} {content_type, headers} = - case List.keytake(headers, 'content-type', 0) do - nil -> {'text/plain', headers} + case List.keytake(headers, ~c"content-type", 0) do + nil -> {~c"text/plain", headers} {{_, ct}, headers} -> {ct, headers} end diff --git a/test/tesla/middleware/timeout_test.exs b/test/tesla/middleware/timeout_test.exs index 760ff573..3a51a76e 100644 --- a/test/tesla/middleware/timeout_test.exs +++ b/test/tesla/middleware/timeout_test.exs @@ -115,7 +115,7 @@ defmodule Tesla.Middleware.TimeoutTest do [{last_module, _, _, file_info} | _] = __STACKTRACE__ assert Tesla.Middleware.TimeoutTest.Client == last_module - assert file_info[:file] == 'lib/tesla/builder.ex' + assert file_info[:file] == ~c"lib/tesla/builder.ex" assert file_info[:line] == 23 else _ -> @@ -131,7 +131,7 @@ defmodule Tesla.Middleware.TimeoutTest do [_, {timeout_module, _, _, module_file_info} | _] = __STACKTRACE__ assert Tesla.Middleware.Timeout == timeout_module - assert module_file_info == [file: 'lib/tesla/middleware/timeout.ex', line: 59] + assert module_file_info == [file: ~c"lib/tesla/middleware/timeout.ex", line: 59] else _ -> flunk("Expected exception to be thrown")