๐Ÿ‘ a fluffy Gleam web server
23

Configure Feed

Select the types of activity you want to include in your feed.

release v3.0.7

vshakitskiy (Apr 1, 2026, 5:47 PM +0300) 18deab50 9f26359b

+11 -7
+4
CHANGELOG.md
··· 1 1 # Changelog 2 2 3 + ## v3.0.7 - 01.04.2026 4 + 5 + - Bump `websocks` to next major. 6 + 3 7 ## v3.0.6 - 30.03.2026 4 8 5 9 - Sanitize CRLF sequences in outgoing HTTP response headers.
+2 -2
gleam.toml
··· 1 1 name = "ewe" 2 - version = "3.0.6" 2 + version = "3.0.7" 3 3 4 4 description = "๐Ÿ‘ a fluffy Gleam web server" 5 5 target = "erlang" ··· 17 17 logging = ">= 1.3.0 and < 2.0.0" 18 18 gleam_erlang = ">= 1.3.0 and < 2.0.0" 19 19 compresso = "0.1.0" 20 - websocks = ">= 2.0.0 and < 3.0.0" 20 + websocks = ">= 3.0.0 and < 4.0.0" 21 21 exception = ">= 2.1.0 and < 3.0.0" 22 22 23 23 [dev-dependencies]
+2 -2
manifest.toml
··· 15 15 { name = "gleeunit", version = "1.9.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "gleeunit", source = "hex", outer_checksum = "DA9553CE58B67924B3C631F96FE3370C49EB6D6DC6B384EC4862CC4AAA718F3C" }, 16 16 { name = "glisten", version = "9.0.0", build_tools = ["gleam"], requirements = ["gleam_erlang", "gleam_otp", "gleam_stdlib", "logging"], otp_app = "glisten", source = "hex", outer_checksum = "D92808C66F7D3F22F2289CD04CBA8151757AAE9CB3D86992F0C6DE32A41205E1" }, 17 17 { name = "logging", version = "1.3.0", build_tools = ["gleam"], requirements = ["gleam_stdlib"], otp_app = "logging", source = "hex", outer_checksum = "1098FBF10B54B44C2C7FDF0B01C1253CAFACDACABEFB4B0D027803246753E06D" }, 18 - { name = "websocks", version = "2.0.0", build_tools = ["gleam"], requirements = ["gleam_crypto", "gleam_erlang", "gleam_stdlib"], otp_app = "websocks", source = "hex", outer_checksum = "A13BF89A8AC63C478C0E9FE502C81A6CBB0513F427FA5C1DFD96383BF46D501D" }, 18 + { name = "websocks", version = "3.0.0", build_tools = ["gleam"], requirements = ["gleam_crypto", "gleam_erlang", "gleam_stdlib"], otp_app = "websocks", source = "hex", outer_checksum = "A7D8FBA720909BB50C402F97552EF67E6508F94645548F0C54E63D0B11B32051" }, 19 19 ] 20 20 21 21 [requirements] ··· 31 31 gleeunit = { version = ">= 1.0.0 and < 2.0.0" } 32 32 glisten = { version = ">= 9.0.0 and < 10.0.0" } 33 33 logging = { version = ">= 1.3.0 and < 2.0.0" } 34 - websocks = { version = ">= 2.0.0 and < 3.0.0" } 34 + websocks = { version = ">= 3.0.0 and < 4.0.0" }
+3 -3
src/ewe/internal/stream/websocket.gleam
··· 112 112 ActiveMode(Count(socket_active_count)), 113 113 ]) 114 114 115 - let context_takeovers = websocks.get_context_takeovers(extensions) 116 115 let compression = case permessage_deflate { 117 - True -> Some(context_takeovers) 116 + True -> Some(websocks.get_compression_extensions(extensions)) 118 117 False -> None 119 118 } 120 - let context = websocks.create_context(compression) 119 + 120 + let context = websocks.create_context(compression, websocks.Server) 121 121 122 122 let #(user_state, user_selector) = 123 123 WebsocketConnection(transport, socket, context)