Prax.cr Versions Save

Rack proxy server for development (Crystal port)

v0.8.1

5 years ago

Fixes:

  • Prax hung forever when reaping child processes.
  • Crystal 0.27 compatibility.

v0.8.0

5 years ago

Enhancements:

  • Allow to port forward to specific host with host:port in host file —and[ipv6]:port for IPv6 addresses.

Breaking changes:

  • default to .test TLD by default instead of Google-owned .dev domain that requires HTTPS to be configured.

Fixes:

  • HTTP headers lookups are case-insensitive.
  • Crystal 0.24+ compatibility.
  • Debian 9 packaging issues.

v0.7.0

7 years ago

Enhancements:

  • Added --ssl-port configuration option.
  • Added --timeout (PRAX_TIMEOUT) configuration option to wait longer or shorter than 60 seconds for applications to start.
  • Detect real hardware devices to apply port redirection on (supports weird systemd predictable interface names).
  • Compatibility with the dotenv gem.

Breaking changes:

  • Setting environment variables via .env files has been removed. Use the .praxrc shell file in your project to set environment variables instead.

v0.6.1

7 years ago

Fixes:

  • Only redirect traffic from wlan/eth devices (i.e. don't break outgoing traffic from containers).

v0.6.0

7 years ago

Enhancements:

  • Source .praxrc shell files in projects (e,g, configure variables, version managers, ...)
  • Move iptables rules to prax iptables command
  • Upgraded to Crystal 0.18+

Fixes:

  • Forwarding of repeated headers (e,g, cookies)
  • Unescape filenames before searching in the public folder

v0.5.1

8 years ago

Enhancements:

  • Upgraded to Crystal 0.11.0 (syntax changes)

Fixes:

v0.5.0

8 years ago

Enhancements:

  • Upgraded to Crystal 0.8.0 (uses standard Process.new, dropped deprecations)
  • Generic SIGCHLD handler to reap zombie children (no more reap threads)

Fixes:

  • Proxy middleware was always run after public file middleware

Built with Crystal 0.8.0

v0.4.2

8 years ago

Features:

  • Prax now logs on ~/.prax/_logs.prax.log when daemonized

Fixes:

  • Prax crashed when starting as a daemon
  • Prax hanged forever with concurrent requests to an app while it spawned

v0.4.1

8 years ago

This is point release that introduces a clean Debian/Ubuntu package that only requires the libc6 and libssl1.0.0 packages.

Built with Crystal 0.7.3

v0.4.0

8 years ago
  • Handle requests in an event loop, see #3
  • Start an HTTPS server along the HTTP server, see #5
  • Sets proxy headers (X-Forwarded-For, ...), see #6
  • Resolve dev domains using dnsmasq instead of NSSwitch, see #9

Built with Crystal 0.7.1 (master)