När det först lanserades, Sinatra var 1% storleken på dess främsta konkurrent. Ruby on Rails
Detta berodde på att Sinatra skapades för att vara en superlättviktslösning för Ruby marknaden som var och fortfarande är översvämmas med massor av ramar med stora kodbaser.
Sinatra fortfarande följer denna filosofi i dag, vilket ger en grundläggande uppsättning funktioner finns nästan i alla ramar runt, anses vara den absolut nödvändiga basen för alla webbprojektet.
Detta engagemang för sitt ljus codebase har gjort Sinatra mycket känd i webbutveckling världen, är dess koncept portas till flera andra programmeringsspråk också.
Vad är nytt i den här versionen:
- Ta bort dubbletter kräva att Sinatra / bas .
- Escape HTML i 404 felsida.
- Refactor metod samtal `Stream # close` och` # callback`.
- Beror på senaste versionen av Slim.
- Fix kompatibilitet med Tilt version 2.
- Fix kompatibilitetsproblem med Rack 'pretty` metod från ShowExceptions.
- Visa datum i lokal tid i undantagsmeddelanden.
- Fix logo på felsidor när Ruby 1,8.
- Uppgradera testsvit till MINITEST version 5 och fixa Ruby 2,2 kompatibilitet.
Vad är nytt i version 1.4.6.
- Ta bort dubbletter kräva att Sinatra / bas
- Escape HTML i 404 felsida.
- Refactor metod samtal `Stream # close` och` # callback`.
- Beror på senaste versionen av Slim.
- Fix kompatibilitet med Tilt version 2.
- Fix kompatibilitetsproblem med Rack 'pretty` metod från ShowExceptions.
- Visa datum i lokal tid i undantagsmeddelanden.
- Fix logo på felsidor när Ruby 1,8.
- Uppgradera testsvit till MINITEST version 5 och fixa Ruby 2,2 kompatibilitet.
Vad är nytt i version 1.4.3.
- Förbättra dokumentation
- Exponera matchas mönster som ENV [& quot; sinatra.route & quot;] .
- Fast varning om Ruby 2.0.
- Förbättrad kör delmängd av prov i isolering.
- Ordna privata / publika metoder.
- Lossa version beroendet för rack, så det går med Rails 3.2.
Vad är nytt i version 1.4.2:
- Missing Accept-huvudet behandlas som * / *.
- förbättra dokumentationen.
Vad är nytt i version 1.4.0.
- Stöd för LINK och ta bort länken förfrågningar
- Stöd för Yajl mallar.
- Stöd för Rabl mallar.
- Stöd för Wlang mallar.
- Stöd för Stylus mallar.
Vad är nytt i version 1.3.3.
- Förbättrad dokumentation
- Inte längre ändra lastvägen.
- När hålla en ström öppen, inrätta callback / errback korrekt att hantera klienter stänger anslutningen.
- Fixat fel där har en fråga param och en URL param med samma namn skulle sammanfoga de två värdena.
- Förhindra duplicerade loggutdata när ansökan redan insvept i en `Rack :: CommonLogger`.
- Fixat problem där `Rack :: Link` och Rails hindrade obestämd streaming.
- Inte längre orsaka varningar när du kör Ruby med `-w`.
- HEAD förfrågningar om statiska filer inte längre rapportera ett Content-Length 0, utan rätt längd.
- När skydd mot CSRF attacker, släpp sessionen i stället för att vägra begäran.
Vad är nytt i version 1.3.2:
- Ställa `logging` till` inga ansökningar lämnats in kommer att undvika inrätta `Rack :: NullLogger`.
- Route specifika params finns nu tillgängliga i blocket skickas till #stream.
- Fix bug där som gör en andra mall i samma begäran, efter den första höjde ett undantag, hoppade standardlayouten.
- Fix fel där parameter flyr fick aktiveras när avaktivera en annan skydd.
- Fix regression. Filter utan mönster kan nu åter manipulera params hash
- Inkom exempel katalogen.
- Förbättrad dokumentation.
- Förbättrad MagLev stöd.
Vad är nytt i version 1.3.1:
- Stöd lägga mer än en återuppringning till strömmen objektet .
- Fix för oändlig loop när streaming på 1.9.2 med Thin från en modulär tillämpning.
Vad är nytt i version 1.3.0.e.
- Stöd för HTTP PATCH förfrågningar
Vad är nytt i version 1.2.6:
- Fast bruten delegation, tester backport delegering från Sinatra 1,3 .
Vad är nytt i version 1.2.2 / 1.3.0.a:
- ': ger = & # x3e; : Js` tillstånd matchar nu både `application / javascript` och` text / javascript`. Det så kallade: tillhandahåller = & # x3e; : Xml` tillstånd matchar nu både `application / xml` och` text / xml`. Det så kallade Content-Type` header är inställd på motsvarande sätt. Om kunden accepterar båda är det så kallade application / * `version föredra, eftersom det så kallade text / versioner *` är föråldrat.
- 'provides` tillstånd hanterar nu jokertecken i `Accept` rubriker korrekt. Således `: tillhandahåller = & # x3e; : Html` matchar `text / html`,` text / * `och` * / * ` .
- När tolkning `Accept` rubriker, 'Content-Type` preferenser är hedrade enligt RFC 2616 avsnitt 14.1.
- URI skickas till det så kallade url` hjälpare eller `redirect` kan nu använda schemat identifieras som absolut URI, inte bara` http` eller `https`.
- Handtag `innehålls Type` strängar som redan innehåller parametrar korrekt i` content_type` (exempel: `content_type & quot; text / plain; charset = utf-16 & quot;`) .
- Om en väg med en tom mönster definieras ( 'få (& quot; & quot;) {...} `) begär med en tom bana info matcha denna väg i stället för & quot; / & quot;.
- I utvecklingsmiljö, när man kör i en kapslad väg, bild URI på felsidor är korrekt inställda.
Vad är nytt i version 1.2.1:
- Använd en genererad sessions hemlighet när `möjliggöra: sessions`.
- Fixade en bugg där fel innehållstypen användes om ingen typ innehåll sattes och en mall motor användes med en annan motor för layout med olika standardinnehåll, säger Mindre inbäddad i Slim.
- README översättningar förbättras.
Vad är nytt i version 1.2.0.c:
- Added `slim` rendering metod för rendering slim mallar.
- 'markaby` rendering metoden tillåter nu passerar ett block, vilket gör inline användning möjlig. Kräver Tilt 1,2 eller senare.
- Alla gör metoder tar nu en `: layout_engine` alternativ, gör det möjligt att använda en layout i en annan mall språk. Ännu mer användbar än att använda detta direkt ( `erb: index: layout_engine = & # x3e;: haml`) sätter detta globalt för en mall motor som annars inte stöder layouter, som Wiki eller textil (` set: markdown,: layout_engine = & # x3e,. erb`)
- Före och efter filter nu stödja förhållanden, både med och utan mönster ( `före" / api / * ": agent = & # x3e; / Songbird /`).
- Lade till en `url` hjälpare metod som konstruerar absoluta URL: er. Klarar omvända proxyservrar och rack hanterare korrekt. Alias till `till`, så att du kan skriva` dirigera till ( '/ foo ")`.
- Om körs på 1,9, mönster för vägar och filter stöder nu namngivna fångar: 'få (% r {? / Hi / (& # x3c, namn & # x3e, [^ / #?] +)}) {& Quot; Hej # {params [ 'namn']} & quot; } `.
- Alla rendering metoder tar nu en `: scope` alternativ, vilket gör dem i ett annat sammanhang. Observera att hjälpare och instansvariabler kommer att vara otillgänglig om du använder den här funktionen.
- beteende 'redirect` kan nu konfigureras med `absolute_redirects` och` prefixed_redirects`.
- 'send_file` tillåter nu att åsidosätta Sista-Modified huvudet, som standard filens mtime, genom att en `. Last_modified` alternativ
- Du kan använda din egen mall lookup metod genom att definiera `find_template`. Detta tillåter, bland annat, att använda mer än en visningar mapp.
- I hög grad förbättrad dokumentation.
- Förbättrad felhantering.
- Hoppa saknas mall motorer i tester på rätt sätt.
- Sinatra nu levereras med en Gemfile för utvecklings beroenden, eftersom det underlättar att stödja olika plattformar, som JRuby.
Vad är nytt i version 1.0:
- hanterare Route, före filter, mallar, fel avbildningar, och middleware är nu löst dynamiskt upp arvshierarkin när istället behövs för att duplicera super version när en ny Sinatra :: Base underklass skapas.
- Sinatra appar kan nu köras med en `-o & # x3c, adr & # x3e,. 'Argument för att ange adressen för att binda till
- Ny request.secure? metod för att kontrollera om en SSL-anslutning.
- Ny 'erubis "hjälpare metod för att göra ERB mall med Erubis.
- ERB, Erubis och HAML mallar nu sammanställt första gången de är utförda i stället för att sträng eval'd på varje anrop.
- Sinatra använder nu Tilt för rendering mallar.
Kommentarer hittades inte