[ANN] Mongrel 0.3.13.1 -- Quick Small Fixes

Hi Everyone,

This is a small release that fixes a little bug, some of the
documentation, and adds the new RedirectHandler code and a @redirect@
call for the mongrel.conf files. It’s fresh so don’t rely on it.
Everyone should upgrade with the usual gem update command (which tells
you it’s “Upgrading…”) and tell me how it works.

This release fixes:

  • The -C configure file option was busted because of an errant line
    move.
  • Adds RedirectHandler thanks to Jonas P. and a new redirect call
    to Configurator.
  • Fixes mongrel_servic documentation which was referring to -r instead
    of -c and -C instead of -u.

USING RedirectHandler

Redirects are pretty simple. You simply have either a new
RedirectHandler class you can use or you can put this in a mongrel.conf
and pass that to -S:

redirect “/from”, “/to”

It also accepts regex for the @from@ parameter and can take a block.
Play with it if you’re interested.

DEFLATE AND SAFARI

It looks like Safari does not honor the @Content-Encoding: deflate@
response, so avoid using DeflateFilter until I can find out why. This
is why you don’t hand code network protocol parsers.

RAILSCONF (-1 DAY)

I’m actually an idiot and scheduled my RailsConf trip a day early. I’ve
gotta work that day so I’m going to be at the Radisson near the
conference hotel if people want to meet me.

Here’s my face:

http://facebook.railsconf.org/users/122

Anyone interested in having a Mongrel get together either tomorrow or
during the conference should put their picture in the facebook, tag it
with mongrel, and I’ll work out something based on interest. Mike C.
is interested in doing a BOF too. Should be fun.


Zed A. Shaw

http://mongrel.rubyforge.org/

Zed S. wrote:

Hi Everyone,

This is a small release that fixes a little bug, some of the
documentation, and adds the new RedirectHandler code and a @redirect@
call for the mongrel.conf files. It’s fresh so don’t rely on it.
Everyone should upgrade with the usual gem update command (which tells
you it’s “Upgrading…”) and tell me how it works.

I tried ‘gem update’, and it said it was updating all of my installed
gems. So aborted that.

I then tried ‘gem update mongrel’

That was better, but the highest version offered was 0.3.13, there was
no 0.3.13.1 offered.


James B.

“In physics the truth is rarely perfectly clear, and that is certainly
universally the case in human affairs. Hence, what is not surrounded
by
uncertainty cannot be the truth.”

  • R. Feynman

On Wed, 2006-06-21 at 15:14 +0900, James B. wrote:

I tried ‘gem update’, and it said it was updating all of my installed
gems. So aborted that.

I then tried ‘gem update mongrel’

That was better, but the highest version offered was 0.3.13, there was
no 0.3.13.1 offered.

I just rebuilt the gem index, it’s in there now:

==================

gem list --remote mongrel | grep 0.3.13.1

mongrel (0.3.13.1, 0.3.13, 0.3.12.4, 0.3.12.3, 0.3.12.2, 0.3.12.1,
0.3.12, 0.3.11, 0.3.10.1, 0.3.10, 0.3.9, 0.3.8, 0.3.7.1, 0.3.7, 0.3.6,
0.3.5, 0.3.4, 0.3.3, 0.3.2, 0.3.1, 0.3, 0.2.2, 0.2.1, 0.2.0)

And it should be making its way out to the gem mirrors, although it
doesn’t seem to be there just yet:

http://rubyforge.rubyuser.de/gems/mongrel-0.3.13.1.gem

Yours,

Tom

On Wed, 2006-06-21 at 15:14 +0900, James B. wrote:

gems. So aborted that.

I then tried ‘gem update mongrel’

That was better, but the highest version offered was 0.3.13, there was
no 0.3.13.1 offered.

James, you seem like a non-newbie Ruby fellow, judging from:

http://www.jamesbritt.com/

So I’m curious why you mention the update command updating all your gems
every time I tell people to update. Are you indirectly saying I
shouldn’t tell people that, or are you asking a question? From your
blog it would seem that you understand RubyGems fairly well so I’m a
little baffled why your e-mail seems to imply that you’re baffled by the
update command.

Not being harsh, just curious why you mention this every time. Maybe
there’s something about gem update that I’m missing and you need to just
tell me about? Maybe a misunderstanding that the RubyGems manual
doesn’t clarify?

On Wed, 2006-06-21 at 02:39 -0400, Tom C. wrote:

And it should be making its way out to the gem mirrors, although it
doesn’t seem to be there just yet:

http://rubyforge.rubyuser.de/gems/mongrel-0.3.13.1.gem

My mistake, I had munged the rsync configuration. Fixed now and the gem
is out there.

Yours,

Tom

On Wed, 2006-06-21 at 16:27 +0900, Stoyan Z. wrote:

ERROR: While executing gem … (OpenURI::HTTPError)
300 Multiple Choices

It can take some time for gems to migrate to the mirrors. Just try
again in a while.


Zed A. Shaw

http://mongrel.rubyforge.org/

On 6/21/06, Zed S. [email protected] wrote:

Everyone should upgrade with the usual gem update command (which tells
you it’s “Upgrading…”) and tell me how it works.

Select which gem to install for your platform (i686-linux)

  1. mongrel 0.3.13.1 (ruby)
  2. mongrel 0.3.13.1 (mswin32)

1
ERROR: While executing gem … (OpenURI::HTTPError)
300 Multiple Choices

Zed S. wrote:

update command.
No, I don’t understand rubygems all that well. Like much software, the
available commands have evolved, and I tend to use only a small subset
with any regularity, so over time I lose tack of what the current
options are and how they may differ from past behavior.

As with much software, there can be unintended behavior or inconsistent
behavior with unpleasant side effects. At least at some point running
gem update would simply update all gems even if you gave a list of gems.
Now you can update selected gems, but the initial behavior is still
there if called with no other arguments, which is what you instructed.

Not being harsh, just curious why you mention this every time. Maybe
there’s something about gem update that I’m missing and you need to just
tell me about? Maybe a misunderstanding that the RubyGems manual
doesn’t clarify?

Because, they way your mail states it, (or at least the way I read it),
you are suggesting that people run this:

gem update

which will update all installed gems

And I’ve been bitten by that before; not all updates are good, and
undoing an update or locking code to specific gem versions can get
tedious.

But this command:

gem install mongrel

does what (I now gather) is intended, with no confusion.

This is different from telling people to use, say, ‘gem install’; it
become obvious quite fast, and with no unexpected side effects, that
another argument is needed. Unfortunately, there is no symmetry with
‘gem update’. I’d prefer if ‘gem update’ always required additional
arguments, perhaps -all to update all gems. And I half expected that
simply running ‘gem update’ would ask for the names of the gems to
update (things change). But it does not.

I’m also unclear if there is any difference between running ‘gem update
mongrel’ or ‘gem install mongrel’; my usage of rubygems tends towards
either uninstalling or (rarely) uninstalling. So perhaps running 'gem
install ’ is a better way to update; no accidental behavior. But
there may be other factors with that (such as fetching the index).

The ability to update selected gems is, think, a (fairly) recent
feature. Maybe motivated by past whining from me.

The ambiguity of your instructions, though, leave open the real chance
that people are going to get more than they asked for. And I want to
make that clear before someone starts complaining that after updating
Mongrel, other, unrelated code, stopped working.

I believe now that when you instruct people to run “gem update” you are
assuming that they know to add a third argument specifying a particular
gem to update. I think that is a mistaken assumption, and would prefer
that people not learn about it the hard way.

And I know that you are an experienced Rubyist, but I also considered
the real possibility that you in fact believed the best or right way for
people to update Mongrel was by updating all their gems. But if Zed
says “run ‘gem update’”, people will do exactly that.


James B.

“In Ruby, no one cares who your parents were, all they care
about is if you know what you are talking about.”

  • Logan C.

On Thu, 2006-06-22 at 02:50 +0900, James B. wrote:

blog it would seem that you understand RubyGems fairly well so I’m a
gem update would simply update all gems even if you gave a list of gems.
Now you can update selected gems, but the initial behavior is still
there if called with no other arguments, which is what you instructed.

You know, the guy who runs ruby-doc.org should be able to read
documentation.

which will update all installed gems

And I’ve been bitten by that before; not all updates are good, and
undoing an update or locking code to specific gem versions can get
tedious.

But this command:

gem install mongrel

Then just come out and say that. Don’t be a passive aggressive twerp
about it. Pony up some cajones and say, “Hey Zed, you should tell
people to use gem install mongrel.” I’ll then just adjust my
documentation for the folks like you who can’t keep up with their gems.

Now that you’ve gone and done a massive round-about 10 e-mail passive
aggressive indirection maneuver to get to where you can finally say what
you want to say, I’m just going to continue doing this so that you can
be properly annoyed from now on.

Even more bizarre is how you’re doing this to get the RubyGems team to
change their project. Talk about a Rube G. machine. “My e-mail
pretends to be a newbie to ask Zed why I should do a gem update to
mongrel so that RubyGems will add a prompt! It’s brilliant!”

Next time, be direct about what you want, and don’t waste my time.
There’s legit users with real problems who need my help. Guys like you
should know better.