Crowdhailer

Crowdhailer

Creator of Raxx

The latest release of Ace (0.10.0) includes serving content over HTTP/2.


I have started writing a webserver to teach my self more about webservers. Ace

The easiest thing is to probably summarize the plan here and if you want more details head on over to the README.

  1. To take this obviously deficient TCP echo server that I wrote as a beginner elixir developer and create a fully fledged HTTP server.
  2. Keep reasonable notes of progress so others can learn about how to build a web server in elixir.
  3. See what progress I have made in a year as an elixir developer.

Currently I have an issue which is confusing me (yes even at this beginner stage).
When I restart the server it often fails because the port is currently in use.
I call gen_tcp.close and am unsure why there is a delay in the port being properly closed?
Give the computer a few moments and the port does eventually become available again.

I know this is probably a help question but I didn’t want to post about my project twice and there are more things coming this way soon

Showing Posts 32 to 23

Crowdhailer

Crowdhailer OP

Creator of Raxx

0.18.10 released

  • added New option error_response, The response that Ace will send if a request handler crashes.
    Useful for setting custom headers, e.g. for CORS.
Crowdhailer

Crowdhailer OP

Creator of Raxx

0.18.9 released

  • Fixes: dialyzer warning about :elixir_errors.warn on Elixir >= 1.9.0
  • Added: specify socket options and opt out of HTTP/1.1 or HTTP2.
Crowdhailer

Crowdhailer OP

Creator of Raxx

0.18.5 released

This fixes parsing of te headers in HTTP/2 requests

Crowdhailer

Crowdhailer OP

Creator of Raxx

0.18.3 Fix HTTP/2 handling for application data sent as iolist

See CHANGELOG

Crowdhailer

Crowdhailer OP

Creator of Raxx

Erroneous warnings from use Raxx.SimpleServer fixed in 0.18.2

Small but helpful fix this one. Thanks ishikawa for providing the solution.

Crowdhailer

Crowdhailer OP

Creator of Raxx

0.18.0 release to separate streaming from simple interface.

Ace HTTP service must now explicitly implement Raxx.SimpleServer or Raxx.Server.

e.g.

defmodule MyApp.WWW do
  use Ace.HTTP.Service, port: 8080, cleartext: true
  use Raxx.SimpleServer

  @impl Raxx.SimpleServer
  def handle_request(_,_) do
    response(:ok)
  end
end

This changes are to facilitate adding middleware to Raxx.

Crowdhailer

Crowdhailer OP

Creator of Raxx

0.17.0 released

Updated to include the changes to the Raxx interface released in Raxx 0.16.0.
See this thread for release notes.

Crowdhailer

Crowdhailer OP

Creator of Raxx

0.16.8 released

Added

  • Formatter check to travis.
  • Dialyzer check to travis.
  • HTTP/1 request backpressure.

Changed

  • Internal updates to use serialization and parsing from Raxx project

Fixed

  • Exit with status :normal in case where set_active call is made on closed socket.
Crowdhailer

Crowdhailer OP

Creator of Raxx

Bug when receiving multiple headers fixed in 0.16.7

Crowdhailer

Crowdhailer OP

Creator of Raxx

Count active connections to a service added in 0.16.6

Thanks to @arturcygan for this contribution.

Where Next? Top

Trending in Announcing Top

woylie
Flop is an Elixir library that applies filtering, ordering and pagination parameters to your Ecto queries. offset-based pagination with...
New
MRdotB
I needed to reuse React components from my Chrome extension in my Phoenix/LiveView backend. I noticed that for Svelte/Vue, there are live...
New
woylie
I released Doggo, a collection of unstyled Phoenix components. https://github.com/woylie/doggo Features Unstyled Phoenix components....
New
GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
anuaralfetahe
Hello Published a new library - ProcessHub! ProcessHub is a library designed to manage process distribution within the Elixir cluster. ...
New

Other Trending Topics Top

mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
AstonJ
This showed up on my feed.. anyone heard of it? Just hype? Ox Alpha is a reasoning model designed for coding, sustained ag...
New
bartblast
Hey folks, I just published a post about Hologram’s funding and where the project goes next - the short version: Curiosum as Main Spons...
New
CodeSync
:microphone: ElixirConf 2026 - Call for Talks is open! We’re heading to Chicago :united_states: :round_pushpin: In person + virtual :d...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews