unicorn Ruby/Rack server user+dev discussion/patches/pulls/bugs/help
 help / color / mirror / code / Atom feed
* internal API changes in Unicorn 2.x
@ 2010-10-08 21:37 Eric Wong
  0 siblings, 0 replies; only message in thread
From: Eric Wong @ 2010-10-08 21:37 UTC (permalink / raw)
  To: mongrel-unicorn

Here's a non-exhaustive list of internal API changes for Unicorn 2.x.

This will NOT affect most users, only those who use/rely on the
undocumented API which we've never recommended people to use.

This mainly affects Rainbows!  development.  Nearly all of these changes
are to make life easier for Rainbows! which Unicorn 2.x is intended to

* Util.tmpio -> TmpIO.new

* HttpParser and HttpRequest become the same class
  - not finalized, yet, one name will go away, probably in 3.x
  - the Rack "env" hash and "buf" String buffer belong
    to the C struct since they're always used together
  - the outward API should be mostly compatible with 1.1.x
  - PARSER, BUF, REQ constants removed from HttpRequest,
    the new HttpParser holds all these on a per-socket basis
  - HttpParser#parse method added to work on the env/buf

* TeeInput.new takes only two parameters, socket and the
  parser/request object

* HttpRequest::LOCALHOST constant removed, use Kgio::LOCALHOST

* RACK_INPUT and REMOTE_ADDR constants moved from Const to HttpRequest
  since they're unused outside of HttpRequest

If there are other apps/libraries who depend on some things we changed
and you really can't have it any other way, we _may_ try to accomodate
you if it's not too much effort.

Eric Wong
Unicorn mailing list - mongrel-unicorn@rubyforge.org
Do not quote signatures (like this one) or top post when replying

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-10-08 21:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-08 21:37 internal API changes in Unicorn 2.x Eric Wong

Code repositories for project(s) associated with this public inbox


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).