Când a lansat pentru prima data, Sinatra a fost de 1% dimensiunea concurentului principal:. Ruby pe șine
Aceasta a fost pentru că Sinatra a fost creat pentru a fi o soluție de super-ușoară pentru piața Ruby, care a fost și încă este inundată cu o mulțime de cadre cu codebases uriașe.
Sinatra urmează încă această filozofie astăzi, oferind un set de bază de caracteristici găsite în aproape toate cadrele din jurul, considerat a fi baza absolut necesare pentru orice proiect web.
Aceasta dedicare pentru codebase sale ușoare a făcut Sinatra foarte faimos in lumea de dezvoltare web, conceptele sale fiind adaptată pentru diverse alte limbaje de programare, de asemenea.
Ce este nou în această versiune:
- Eliminare duplicat necesită de sinatra / bază .
- Escape HTML 404 pagina de eroare.
- Refactor la apel în metoda `Stream # close` și` # callback`.
- Depind cea mai recentă versiune a Slim.
- Compatibilitate Fix cu înclinare versiunea 2.
- Fix problemă de compatibilitate cu Rack `pretty` metoda din ShowExceptions.
- Afișare dată în ora locală, în mesaje de excepție.
- logo-ul Fix pe paginile de eroare atunci când se utilizează Ruby 1.8.
- Upgrade suita de testare pentru a Minitest versiunea 5 și repara Ruby 2.2 de compatibilitate.
Ce este nou în versiunea 1.4.6:.
- Eliminare duplicat necesită de sinatra / bază
- Escape HTML 404 pagina de eroare.
- Refactor la apel în metoda `Stream # close` și` # callback`.
- Depind cea mai recentă versiune a Slim.
- Compatibilitate Fix cu înclinare versiunea 2.
- Fix problemă de compatibilitate cu Rack `pretty` metoda din ShowExceptions.
- Afișare dată în ora locală, în mesaje de excepție.
- logo-ul Fix pe paginile de eroare atunci când se utilizează Ruby 1.8.
- Upgrade suita de testare pentru a Minitest versiunea 5 și repara Ruby 2.2 de compatibilitate.
Ce este nou în versiunea 1.4.3:.
- Îmbunătățirea documentației
- Expune potrivire de model ca env [& quot; sinatra.route & quot;] .
- avertisment fix pe Ruby 2.0.
- îmbunătățită de funcționare subset de teste în izolare.
- Reordona metode publice / private.
- Desfaceți dependență versiunea pentru rack, astfel încât ruleaza cu Rails 3.2.
Ce este nou în versiunea 1.4.2:
- Lipsește antetul Acceptare este tratată ca * / *.
- Îmbunătățirea documentației.
Ce este nou în versiunea 1.4.0:.
- Adăugat suport pentru conectări și deconectări solicitări
- Adăugat suport pentru șabloane Yajl.
- Adăugat suport pentru șabloane Rabl.
- Adăugat suport pentru șabloane Wlang.
- Adăugat suport pentru șabloane Stylus.
Ce este nou în versiunea 1.3.3:.
- documentație îmbunătățită
- Nu mai modifica calea de încărcare.
- Când menținerea unui flux deschis, înființat apel invers / errback corect pentru a face față cu clienții închiderea conexiunii.
- bug fix în cazul în care are o param de interogare și un param URL-ul cu același nume ar înlănțui cele două valori.
- Se va preveni duplicat ieșire jurnal atunci când solicitarea este deja înfășurat într-un `Rack :: CommonLogger`.
- Problema fixe în cazul în care `Rack :: Link` lonjeroane împiedicau de streaming pe durată nedeterminată.
- Nu mai provoca avertismente atunci când rulează cu Ruby `-w`.
- cereri de cap de pe fișiere statice nu mai raportează un conținut de lungime de la 0, dar în schimb lungimea corectă.
- Când protejarea împotriva atacurilor CSRF, plasați sesiunea în loc de a refuza solicitarea.
Ce este nou în versiunea 1.3.2:
- Setarea `logging` pentru` nil` se va evita configurarea `Rack :: NullLogger`.
- params specifice de rută sunt acum disponibile în blocul trecut la #stream.
- bug fix în cazul în care redarea unui al doilea șablon în aceeași cerere, după primul a ridicat o excepție, omit aspectul implicit.
- bug fix în cazul în care parametrul a fost activat când șir escape dezactivați o protecție diferită.
- Fix regresie:. Filtrele fără un tipar poate acum din nou să manipuleze hash params
- Adăugat director exemple.
- documentație îmbunătățită.
- sprijin MagLev îmbunătățită.
Ce este nou în versiunea 1.3.1:
- Suport pentru adăugarea de mai mult de un apel invers la obiectul flux .
- Fix pentru buclă infinită atunci când streaming pe 1.9.2 cu Thin dintr-o aplicație modulară.
Ce este nou în versiunea 1.3.0.e:.
- Adăugat suport pentru cereri HTTP patch-ul
Ce este nou în versiunea 1.2.6:
- delegare rupt fix, teste de delegare backport de la Sinatra 1.3 .
Ce este nou în versiunea 1.2.2 / 1.3.0.a:
- `: prevede = & # x3e; : Stare js` se potrivește acum atât `application / javascript` și` text / javascript`. Anii `: oferă = & # x3e; : Stare xml` se potrivește acum atât `application / xml` și` text / xml`. Antetul Content-ul '-Type` este setat în mod corespunzător. În cazul în care clientul acceptă ambele, este de preferat versiunea `aplicație / *`, deoarece `/ *` versiunile text sunt depreciate.
- `starea provides` acum se ocupă de metacaractere în` Accept` antetele corect. Astfel, `: oferă = & # x3e; : Html` meciuri `text / html`,` text / * `si` * / * ` .
- Când parseaza `antete Accept`,` preferințele Content-Type` sunt onorate în conformitate cu RFC 2616 secțiunea 14.1.
- URIuri a trecut la `helper url` sau` redirect` pot folosi acum orice schemă care urmează să fie identificat ca fiind absolut URIs, nu numai `http` sau` https`.
- Manere `siruri de conținut Type` care conțin deja parametri corect în` content_type` (de exemplu: `content_type & quot; text / plain; charset = utf-16 & quot;`) .
- Dacă un traseu cu un model gol este definit ( `get (& quot; & quot;) {...} ') cere cu informații despre calea goală potrivi această rută în loc de & quot; / & quot;.
- În mediul de dezvoltare, atunci când rulează sub o cale cuibărit, URI-urile de imagini de pe paginile de eroare sunt setate corect.
Ce este nou în versiunea 1.2.1:
- Utilizați un secret sesiune generat atunci când se utilizează `activați: sessions`.
- Fixed un bug în cazul în care s-a utilizat tipul de conținut greșit în cazul în care nici un tip de conținut a fost stabilit și un motor șablon a fost utilizat cu un alt motor pentru layout-ul cu diferite tipuri de conținut implicit, să zicem mai puțin încorporate în Slim.
- traduceri README îmbunătățite.
Ce este nou în versiunea 1.2.0.c:
- Adăugat `slim` metoda de redare pentru redare șabloane subțire.
- `Metoda de randare markaby` permite acum trecerea unui bloc, ceea ce face utilizarea inline posibil. Necesită Tilt 1.2 sau mai nou.
- Toate metodele de randare iau acum un `: opțiunea layout_engine`, care permite de a utiliza un aspect într-un alt limbaj șablon. Chiar mai utilă decât folosirea acestui mod direct ( `ERB: index: layout_engine = & # x3e;: haml`) stabileste acest nivel global pentru un motor șablon pe care altfel nu acceptă aspecte, cum ar fi Markdown sau fibre textile (` set: markdown,: layout_engine = & # x3e;:. erb`)
- Înainte și după filtrele de sprijin acum condiții, ambele cu și fără modele ( `înainte de '/ api / *',: agent = & # x3e; / Songbird /`).
- A fost adăugată o metodă `ajutor url` care construiește adrese URL absolute. Cu proxy-uri COPES inversă și manipulare Rack corect. La `a` aliased, astfel încât să puteți scrie` redirecționa la ( '/ foo') `.
- Dacă rulează pe 1.9, a modelelor de rute și filtre de sprijin acum captures cu numele: `get (% r {? / Hi / (& # x3c; numele & # x3e; [^ / #?] +)}) {& Quot; Hi # {params [ 'name']} & quot; } `.
- Toate metodele de redare iau acum un `: opțiunea scope`, ceea ce le face într-un alt context. Rețineți că ajutoarele și variabilele de instanță va fi disponibilă dacă utilizați această caracteristică.
- Comportamentul `redirect` acum poate fi configurat cu` absolute_redirects` si `prefixed_redirects`.
- `send_file` acum permite suprascrierea Last-Modified antet, care implicit la mtime fișierului, prin care trece un`:. Opțiunea last_modified`
- Puteți utiliza propria metodă de căutare șablon prin definirea `find_template`. Acest lucru permite, printre altele, folosind dosar mai multe puncte de vedere.
- îmbunătățit în mare măsură de documentare.
- eroare de manipulare îmbunătățită.
- Salt lipsesc motoarele de șabloane în testele corect.
- Sinatra acum nave cu Gemfile pentru dependențe de dezvoltare, din moment ce ușurează susținerea platformelor diferite, cum ar fi JRuby.
Ce este nou în versiunea 1.0:
- Stivuitoare de rută, înainte de filtre, template-uri, mapările de eroare și middleware sunt acum rezolvate în mod dinamic în ierarhia de moștenire atunci când este necesar în loc să dubleze versiunea superclasa atunci când se creează o nouă subclasă Sinatra :: Base.
- Aplicațiile Sinatra pot fi acum rula cu un `& # x3c -o; Adr & # x3e;.` Argument pentru a specifica adresa de a se lega la
- New request.secure? metodă de verificare pentru o conexiune SSL.
- New "erubis" pentru randare șablon ERB cu Erubis.
- șabloane ERB, Erubis și Haml sunt compilate acum prima dată când acestea sunt redate în loc să fie șir eval'd pe fiecare invocare.
- Sinatra acum folosește Tilt pentru randare șabloane.
Metoda de ajutor
Comentariile nu a fost găsit