Update for Gleam 0.27
This commit is contained in:
parent
061f029bf7
commit
cf2d61a078
6 changed files with 38 additions and 27 deletions
|
@ -1,3 +1,3 @@
|
|||
gleam 0.26.2
|
||||
gleam 0.27.0
|
||||
erlang 25.2.2
|
||||
elixir 1.14.3-otp-25
|
||||
|
|
9
CHANGELOG.txt
Normal file
9
CHANGELOG.txt
Normal file
|
@ -0,0 +1,9 @@
|
|||
2.0.0
|
||||
-----
|
||||
|
||||
* Updated for Gleam 0.27.
|
||||
|
||||
1.0.0
|
||||
-----
|
||||
|
||||
Initial version.
|
|
@ -1,5 +1,5 @@
|
|||
name = "finch_gleam"
|
||||
version = "1.0.0"
|
||||
version = "2.0.0"
|
||||
target = "erlang"
|
||||
|
||||
# Fill out these fields if you intend to generate HTML documentation or publish
|
||||
|
@ -11,11 +11,11 @@ repository = { type = "gitlab", user = "Nicd", repo = "finch_gleam" }
|
|||
links = []
|
||||
|
||||
[dependencies]
|
||||
gleam_stdlib = "~> 0.26"
|
||||
gleam_erlang = "~> 0.17"
|
||||
gleam_stdlib = "~> 0.27.0"
|
||||
gleam_erlang = "~> 0.18"
|
||||
gleam_http = "~> 3.1"
|
||||
finch = "~> 0.14"
|
||||
|
||||
[dev-dependencies]
|
||||
gleeunit = "~> 0.7"
|
||||
gleeunit = "~> 0.10"
|
||||
mist = "~> 0.9"
|
||||
|
|
|
@ -3,17 +3,17 @@
|
|||
|
||||
packages = [
|
||||
{ name = "castore", version = "0.1.22", build_tools = ["mix"], requirements = [], otp_app = "castore", source = "hex", outer_checksum = "C17576DF47EB5AA1EE40CC4134316A99F5CAD3E215D5C77B8DD3CFEF12A22CAC" },
|
||||
{ name = "finch", version = "0.14.0", build_tools = ["mix"], requirements = ["mime", "mint", "castore", "nimble_options", "nimble_pool", "telemetry"], otp_app = "finch", source = "hex", outer_checksum = "5459ACAF18C4FDB47A8C22FB3BAFF5D8173106217C8E56C5BA0B93E66501A8DD" },
|
||||
{ name = "finch", version = "0.14.0", build_tools = ["mix"], requirements = ["nimble_options", "nimble_pool", "mime", "telemetry", "castore", "mint"], otp_app = "finch", source = "hex", outer_checksum = "5459ACAF18C4FDB47A8C22FB3BAFF5D8173106217C8E56C5BA0B93E66501A8DD" },
|
||||
{ name = "gleam_erlang", version = "0.18.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_erlang", source = "hex", outer_checksum = "14ABC93A7975369CCDDC0C4D9A34C0E0FE99CA3AD336BE6A17299EC0285B7107" },
|
||||
{ name = "gleam_http", version = "3.1.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleam_http", source = "hex", outer_checksum = "B66B7A1539CCB577119E4DC80DD3484C1A652CB032967954498EEDBAE3355763" },
|
||||
{ name = "gleam_otp", version = "0.5.2", build_tools = ["gleam"], requirements = ["gleam_stdlib", "gleam_erlang"], otp_app = "gleam_otp", source = "hex", outer_checksum = "24B88BF1D5B8DEC2525C00ECB65B96D2FD4DC66D8B2BB4D7AD4D12B2CE2A9988" },
|
||||
{ name = "gleam_stdlib", version = "0.26.1", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "B17BBE8A78F3909D93BCC6C24F531673A7E328A61F24222EB1E58D0A7552B1FE" },
|
||||
{ name = "gleam_otp", version = "0.5.2", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_stdlib"], otp_app = "gleam_otp", source = "hex", outer_checksum = "24B88BF1D5B8DEC2525C00ECB65B96D2FD4DC66D8B2BB4D7AD4D12B2CE2A9988" },
|
||||
{ name = "gleam_stdlib", version = "0.27.0", build_tools = ["gleam"], requirements = [], otp_app = "gleam_stdlib", source = "hex", outer_checksum = "9DBDD21B48C654182CDD8AA15ACF85E8E74A0438583C68BD7EF08BE89F999C6F" },
|
||||
{ name = "gleeunit", version = "0.10.1", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleeunit", source = "hex", outer_checksum = "ECEA2DE4BE6528D36AFE74F42A21CDF99966EC36D7F25DEB34D47DD0F7977BAF" },
|
||||
{ name = "glisten", version = "0.6.9", build_tools = ["gleam"], requirements = ["gleam_stdlib", "gleam_erlang", "gleam_otp"], otp_app = "glisten", source = "hex", outer_checksum = "83CDA9C9FCD316ECF65DBEFAF5690999DDC0FE8CB31696711E7D60FD995E03B7" },
|
||||
{ name = "hpax", version = "0.1.2", build_tools = ["mix"], requirements = [], otp_app = "hpax", source = "hex", outer_checksum = "2C87843D5A23F5F16748EBE77969880E29809580EFDACCD615CD3BED628A8C13" },
|
||||
{ name = "mime", version = "2.0.3", build_tools = ["mix"], requirements = [], otp_app = "mime", source = "hex", outer_checksum = "27A30BF0DB44D25EECBA73755ACF4068CBFE26A4372F9EB3E4EA3A45956BFF6B" },
|
||||
{ name = "mint", version = "1.4.2", build_tools = ["mix"], requirements = ["hpax", "castore"], otp_app = "mint", source = "hex", outer_checksum = "CE75A5BBCC59B4D7D8D70F8B2FC284B1751FFB35C7B6A6302B5192F8AB4DDD80" },
|
||||
{ name = "mist", version = "0.9.4", build_tools = ["gleam"], requirements = ["gleam_stdlib", "gleam_otp", "gleam_http", "glisten", "gleam_erlang"], otp_app = "mist", source = "hex", outer_checksum = "D327F690A717F588281E636D99E014A90D8EBC2F2B479AA799A1D6AA3899A1B2" },
|
||||
{ name = "mint", version = "1.5.0", build_tools = ["mix"], requirements = ["hpax", "castore"], otp_app = "mint", source = "hex", outer_checksum = "8A61C2D469C657F6CB76EA547D523C3A593D24901B1D97BF92BF4A83EAA2517B" },
|
||||
{ name = "mist", version = "0.9.4", build_tools = ["gleam"], requirements = ["gleam_stdlib", "glisten", "gleam_erlang", "gleam_http", "gleam_otp"], otp_app = "mist", source = "hex", outer_checksum = "D327F690A717F588281E636D99E014A90D8EBC2F2B479AA799A1D6AA3899A1B2" },
|
||||
{ name = "nimble_options", version = "0.5.2", build_tools = ["mix"], requirements = [], otp_app = "nimble_options", source = "hex", outer_checksum = "4DA7F904B915FD71DB549BCDC25F8D56F378EF7AE07DC1D372CBE72BA950DCE0" },
|
||||
{ name = "nimble_pool", version = "0.2.6", build_tools = ["mix"], requirements = [], otp_app = "nimble_pool", source = "hex", outer_checksum = "1C715055095D3F2705C4E236C18B618420A35490DA94149FF8B580A2144F653F" },
|
||||
{ name = "telemetry", version = "1.2.1", build_tools = ["rebar3"], requirements = [], otp_app = "telemetry", source = "hex", outer_checksum = "DAD9CE9D8EFFC621708F99EAC538EF1CBE05D6A874DD741DE2E689C47FEAFED5" },
|
||||
|
@ -21,8 +21,8 @@ packages = [
|
|||
|
||||
[requirements]
|
||||
finch = "~> 0.14"
|
||||
gleam_erlang = "~> 0.17"
|
||||
gleam_erlang = "~> 0.18"
|
||||
gleam_http = "~> 3.1"
|
||||
gleam_stdlib = "~> 0.26"
|
||||
gleeunit = "~> 0.7"
|
||||
gleam_stdlib = "~> 0.27.0"
|
||||
gleeunit = "~> 0.10"
|
||||
mist = "~> 0.9"
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
//// See the [Finch documentation](https://hexdocs.pm/finch) for additional
|
||||
//// information about the functions.
|
||||
|
||||
import gleam/result
|
||||
|
||||
import gleam
|
||||
import gleam/uri
|
||||
import gleam/erlang/atom.{Atom}
|
||||
|
@ -76,7 +78,7 @@ pub fn request(
|
|||
req: Request,
|
||||
name: Atom,
|
||||
) -> Result(gleam_response.Response(String), Exception) {
|
||||
try resp = do_request(req, name)
|
||||
use resp <- result.then(do_request(req, name))
|
||||
|
||||
gleam.Ok(gleam_response.Response(
|
||||
body: response_body(resp),
|
||||
|
|
|
@ -16,7 +16,7 @@ import finch/otp
|
|||
const base_url = "http://localhost:33100"
|
||||
|
||||
pub fn main() {
|
||||
assert Ok(_) =
|
||||
let assert Ok(_) =
|
||||
mist.run_service(
|
||||
33_100,
|
||||
fn(req) {
|
||||
|
@ -48,10 +48,10 @@ pub fn main() {
|
|||
pub fn ok_req_test() {
|
||||
use <- with_finch()
|
||||
|
||||
assert Ok(url) = uri.parse(ok_url())
|
||||
assert Ok(req) = request.from_uri(url)
|
||||
let assert Ok(url) = uri.parse(ok_url())
|
||||
let assert Ok(req) = request.from_uri(url)
|
||||
let finch_req = finch.build(req, [])
|
||||
assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
let assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
|
||||
should.equal(resp.status, 200)
|
||||
should.equal(resp.body, "OK")
|
||||
|
@ -62,11 +62,11 @@ pub fn post_data_test() {
|
|||
|
||||
use <- with_finch()
|
||||
|
||||
assert Ok(url) = uri.parse(post_url())
|
||||
assert Ok(req) = request.from_uri(url)
|
||||
let assert Ok(url) = uri.parse(post_url())
|
||||
let assert Ok(req) = request.from_uri(url)
|
||||
let req = request.Request(..req, method: http.Post, body: body)
|
||||
let finch_req = finch.build(req, [])
|
||||
assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
let assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
|
||||
should.equal(resp.status, 500)
|
||||
should.equal(resp.body, body)
|
||||
|
@ -75,8 +75,8 @@ pub fn post_data_test() {
|
|||
pub fn headers_test() {
|
||||
use <- with_finch()
|
||||
|
||||
assert Ok(url) = uri.parse(headers_url())
|
||||
assert Ok(req) = request.from_uri(url)
|
||||
let assert Ok(url) = uri.parse(headers_url())
|
||||
let assert Ok(req) = request.from_uri(url)
|
||||
let req =
|
||||
request.Request(
|
||||
..req,
|
||||
|
@ -87,7 +87,7 @@ pub fn headers_test() {
|
|||
],
|
||||
)
|
||||
let finch_req = finch.build(req, [])
|
||||
assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
let assert Ok(resp) = finch.request(finch_req, server_name())
|
||||
|
||||
should.equal(resp.status, 200)
|
||||
should.be_true(string.contains(
|
||||
|
@ -118,14 +118,14 @@ fn with_finch(test: fn() -> a) {
|
|||
|
||||
process.start(
|
||||
fn() {
|
||||
assert otp.Ok(child) = start_finch()
|
||||
let assert otp.Ok(child) = start_finch()
|
||||
process.send(subject, child)
|
||||
process.sleep_forever()
|
||||
},
|
||||
False,
|
||||
)
|
||||
|
||||
assert Ok(finch_pid) = process.receive(subject, 1000)
|
||||
let assert Ok(finch_pid) = process.receive(subject, 1000)
|
||||
|
||||
let monitor = process.monitor_process(finch_pid)
|
||||
let selector =
|
||||
|
@ -135,7 +135,7 @@ fn with_finch(test: fn() -> a) {
|
|||
test()
|
||||
|
||||
process.kill(finch_pid)
|
||||
assert Ok(_) = process.select(selector, 1000)
|
||||
let assert Ok(_) = process.select(selector, 1000)
|
||||
|
||||
// We need to wait for all the Finch processes to close, sadly didn't find a
|
||||
// better way to do this :/
|
||||
|
|
Loading…
Reference in a new issue