What's the plan for Sinatra 2.0?

Skip to first unread message

Patricio Mac Adden

Mar 26, 2013, 9:51:31 PM3/26/13
to sina...@googlegroups.com
Hi everybody!

What's the plan for Sinatra 2.0? I have a lot of ideas for Sinatra 2.0 (they have to be discussed, obviously) but I don't know how to transmit them (I've created 2 issues on github, but I don't want to create more issues for this purpose). So I was thinking about to create a thread to discuss this. What do you think?

Related to this: there will be a Sinatra 1.5 version? If so, please dismiss this thread (or not).



Mar 26, 2013, 10:16:05 PM3/26/13
to sina...@googlegroups.com
Sinatra is a flylight web framework that supports flylight web application or cloud app. 
I think that is enough to current function of sinatra, what do you want to it?

2013/3/27 Patricio Mac Adden <patricio...@gmail.com>

You received this message because you are subscribed to the Google Groups "sinatrarb" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sinatrarb+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Iain Barnett

Mar 26, 2013, 11:48:53 PM3/26/13
to sina...@googlegroups.com
I'm interested too, especially after reading Konstantin's blog post the other day



Iain Barnett

Mar 27, 2013, 5:42:21 AM3/27/13
to sina...@googlegroups.com

On 27 Mar 2013, at 02:16, coolesting wrote:

Sinatra is a flylight web framework that supports flylight web application or cloud app. 
I think that is enough to current function of sinatra, what do you want to it?

I think throwing around ideas is never a bad idea, if only to find out if they're bad ideas.


Konstantin Haase

Mar 27, 2013, 6:04:28 AM3/27/13
to sina...@googlegroups.com
As said in the blog post, I am not sure this will happen soon. Also, there might be a 1.5 release. I have been thinking of working on 2.0 for nearly two years now.

In any case, in my mind, Sinatra 2.0 would be a complete rewrite that should still be able to run a normal Sinatra app.

Here are a few things I'd like to tackle:

* Rework dispatch internals and routing (I have a couple of different prototypes for this)
* Move away from having all logic in one file
* Move away from having all documentation in one file
* Make it easier to write an app without using the routing logic (ie middleware, I have a couple of different prototypes for this)
* Turn pattern parsing into actual parsing rather than gsub'ing until it might be a valid regular expression (I have a working implementation of this)
* Make route parsing configurable (I have a working implementation of this)
* Turn settings into its own project
* Move towards a better event/hook system, so gems like NewRelic don't have to patch the hell out of Sinatra
* Have streaming rely solely on the Rack hijacking API
* Add better connection handling for dangling requests
* Separate templates into an extension (that might or might not be included in the sinatra gem)
* Improve content negotiation
* Better handing of encodings
* Drop support for all old Ruby versions. Since Sinatra is big about compatibility, such an opportunity to move forward would be hard to come by any time soon again.
* Redo the website?\
* ...

The main problem is: Whenever I speak about this, people get too excited or upset. This is esp true for publishing code of some of the prototype scripts I have/had that will most definitely not make it into Sinatra.

Any other ideas or comments are welcome any time.

If I have any code worth publishing, I will do so.

If you are eager to help, the Sinatra project that really needs work force is sinatra-contrib.


Tom Wardrop

May 3, 2013, 2:38:24 AM5/3/13
to sina...@googlegroups.com
Reading Konstantin's plans for 2.0, it seems a lot of it is outstanding refactoring work. I see no plans for extending Sinatra's capabilities per-se, but rather a desire to make the underlying code cleaner and more robust.

I post this here merely for others curiosity, but I started my own Sinatra-inspired framework which takes many of the concepts that made Sinatra popular, to their logical conclusion. For those interested, the project I started is Scorched. Those holding out for a Sinatra 2.0 will likely get something out of Scorched, if only ideas.


Tom Wardrop

May 5, 2013, 6:23:22 PM5/5/13
to sina...@googlegroups.com
Yeah I should probably devote a little more time to documentation and other educational material. I do intend to write a simple blog using Scorched to hopefully demonstrate most of the concepts.

Right now, Scorched assumes you've had prior experience with Rack applications, and to some extent, prior experience using Sinatra.

On Saturday, 4 May 2013 10:02:08 UTC+10, Clint Laskowski wrote:
I'm very interested in Scorched. However, I really need a step-by-step tutorial to understand how to use it. Could you take the MediaTypesExample and go through getting it up and running?
Reply all
Reply to author
0 new messages