sinatra 2.2.0 → 3.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d2fb7e9fa622d8e1a7b82842d5ac454fd4c1d7b9a52c229ddf64b7dc12433b15
4
- data.tar.gz: 6f7d140ece387704a0f18b2d7a810829b06881e4759bd48474271664ad62abf2
3
+ metadata.gz: 7596f4ab9a68b8aeebf1a916c1cd752a3e7dd2714dd7fa09b8def139f5b2b8f9
4
+ data.tar.gz: 38ee8094ab7b9bf06a30c4bbefa2b915af6a8c1d1c4c2ec4b97918e07e8dce25
5
5
  SHA512:
6
- metadata.gz: a0b7bd428c8efde08d481f3fbe8c845f526f4ab4ed58ede99bbe215c42488195c7d70ea36746d04a041d39cd771f4da9cd30afe64063ab455e14f7c525066efb
7
- data.tar.gz: d4e3b63eaf8b9bce3cf748934404b06b8e0cfeb96da0796e925895ce84d96743d058f09781053051931b67c8ceb56f1bd6b46c8f945f255c4fc24626a9db7571
6
+ metadata.gz: 1f2f27088c9dfb616693cbac0bfc80a2c831e8c4126c3fc86d9b9888e0b5a20bab767d0120a1ef1045466e7d4228d265503b91cb23e2c4502d5dea494017cbda
7
+ data.tar.gz: 1e941fdfd3658202725a247ca4d363fb2d2026a9aa1176f61ca170620317e75dccca16b702ca377f65169a8633e43e9c724076581777e46a13e053b717b8212e
data/CHANGELOG.md CHANGED
@@ -1,28 +1,96 @@
1
- ## 2.2.0 / Unrealased
1
+ ## Unreleased
2
2
 
3
- * Handle EOFError raised by Rack and return Bad Request 400 status. [#1743](https://github.com/sinatra/sinatra/pull/1743) by tamazon
3
+ * _Your new feature here._
4
4
 
5
- * Update README.es.md with removal of Thin. [#1630](https://github.com/sinatra/sinatra/pull/1630) by Espartaco Palma
5
+ ## 3.0.4 / 2022-11-25
6
6
 
7
- * Minor refactors in `base.rb`. [#1640](https://github.com/sinatra/sinatra/pull/1640) by ceclinux
7
+ * Fix: Escape filename in the Content-Disposition header. [#1841](https://github.com/sinatra/sinatra/pull/1841) by Kunpei Sakai
8
8
 
9
- * Fixed typos in german README.md. [#1648](https://github.com/sinatra/sinatra/pull/1648) by Juri
9
+ ## 3.0.3 / 2022-11-11
10
10
 
11
- * Add escaping to the static 404 page. [#1645](https://github.com/sinatra/sinatra/pull/1645) by Chris Gavin
11
+ * Fix: fixed ReDoS for Rack::Protection::IPSpoofing. [#1823](https://github.com/sinatra/sinatra/pull/1823) by @ooooooo-q
12
12
 
13
- * Remove `detect_rack_handler` method. [#1652](https://github.com/sinatra/sinatra/pull/1652) by ceclinux
13
+ ## 3.0.2 / 2022-10-01
14
14
 
15
- * Respect content type set in superclass before filter. Fixes [#1647](https://github.com/sinatra/sinatra/issues/1647) [#1649](https://github.com/sinatra/sinatra/pull/1649) by Jordan Owens
15
+ * New: Add Haml 6 support. [#1820](https://github.com/sinatra/sinatra/pull/1820) by Jordan Owens
16
16
 
17
- * Update README.ja.md with removal of Thin. [#1629](https://github.com/sinatra/sinatra/pull/1629) by Ryuichi KAWAMATA
17
+ ## 3.0.1 / 2022-09-26
18
18
 
19
- * *Revert "Use prepend instead of include for helpers.* [#1662](https://github.com/sinatra/sinatra/pull/1662) by namusyaka
19
+ * Fix: Revert removal of rack-protection.rb. [#1814](https://github.com/sinatra/sinatra/pull/1814) by Olle Jonsson
20
+
21
+ * Fix: Revert change to server start and stop messaging by using Kernel#warn. Renamed internal warn method warn_for_deprecation. [#1818](https://github.com/sinatra/sinatra/pull/1818) by Jordan Owens
22
+
23
+ ## 3.0.0 / 2022-09-26
24
+
25
+ * New: Add Falcon support. [#1794](https://github.com/sinatra/sinatra/pull/1794) by Samuel Williams and @horaciob
26
+
27
+ * New: Add AES GCM encryption support for session cookies. [#1324] (https://github.com/sinatra/sinatra/pull/1324) by Michael Coyne
28
+
29
+ * Deprecated: Sinatra Reloader will be removed in the next major release.
30
+
31
+ * Fix: Internal Sinatra errors now extend `Sinatra::Error`. This fixes [#1204](https://github.com/sinatra/sinatra/issues/1204) and [#1518](https://github.com/sinatra/sinatra/issues/1518). [bda8c29d](https://github.com/sinatra/sinatra/commit/bda8c29d70619d53f5b1c181140638d340695514) by Jordan Owens
32
+
33
+ * Fix: Preserve query param value if named route param nil. [#1676](https://github.com/sinatra/sinatra/pull/1676) by Jordan Owens
34
+
35
+ * Require Ruby 2.6 as minimum Ruby version. [#1699](https://github.com/sinatra/sinatra/pull/1699) by Eloy Pérez
36
+
37
+ * Breaking change: Remove support for the Stylus template engine. [#1697](https://github.com/sinatra/sinatra/pull/1697) by Eloy Pérez
38
+
39
+ * Breaking change: Remove support for the erubis template engine. [#1761](https://github.com/sinatra/sinatra/pull/1761) by Eloy Pérez
40
+
41
+ * Breaking change: Remove support for the textile template engine. [#1766](https://github.com/sinatra/sinatra/pull/1766) by Eloy Pérez
42
+
43
+ * Breaking change: Remove support for SASS as a template engine. [#1768](https://github.com/sinatra/sinatra/pull/1768) by Eloy Pérez
44
+
45
+ * Breaking change: Remove support for Wlang as a template engine. [#1780](https://github.com/sinatra/sinatra/pull/1780) by Eloy Pérez
46
+
47
+ * Breaking change: Remove support for CoffeeScript as a template engine. [#1790](https://github.com/sinatra/sinatra/pull/1790) by Eloy Pérez
48
+
49
+ * Breaking change: Remove support for Mediawiki as a template engine. [#1791](https://github.com/sinatra/sinatra/pull/1791) by Eloy Pérez
50
+
51
+ * Breaking change: Remove support for Creole as a template engine. [#1792](https://github.com/sinatra/sinatra/pull/1792) by Eloy Pérez
52
+
53
+ * Breaking change: Remove support for Radius as a template engine. [#1793](https://github.com/sinatra/sinatra/pull/1793) by Eloy Pérez
54
+
55
+ * Breaking change: Remove support for the defunct Less templating library. See [#1716](https://github.com/sinatra/sinatra/issues/1716), [#1715](https://github.com/sinatra/sinatra/issues/1715) for more discussion and background. [d1af2f1e](https://github.com/sinatra/sinatra/commit/d1af2f1e6c8710419dfe3102a660f7a32f0e67e3) by Olle Jonsson
56
+
57
+ * Breaking change: Remove Reel integration. [54597502](https://github.com/sinatra/sinatra/commit/545975025927a27a1daca790598620038979f1c5) by Olle Jonsson
20
58
 
21
- * Various minor fixes to README.md. [#1663](https://github.com/sinatra/sinatra/pull/1663) by Yanis Zafirópulos
59
+ * CI: Start testing on Ruby 3.1. [60e221940](https://github.com/sinatra/sinatra/commit/60e2219407e6ae067bf3e53eb060ee4860c60c8d) and [b0fa4bef](https://github.com/sinatra/sinatra/commit/b0fa4beffaa3b10bf02947d0a35e137403296c6b) by Johannes Würbach
22
60
 
23
- * Document when `dump_errors` is enabled. Fixes [#1664](https://github.com/sinatra/sinatra/issues/1664) [#1665](https://github.com/sinatra/sinatra/pull/1665) by Patrik Ragnarsson
61
+ * Use `Kernel#caller_locations`. [#1491](https://github.com/sinatra/sinatra/pull/1491) by Julik Tarkhanov
24
62
 
25
- * Update README.pt-br.md. [#1668](https://github.com/sinatra/sinatra/pull/1668) by Vitor Oliveira
63
+ * Docs: Japanese documentation: Add notes about the `default_content_type` setting. [#1650](https://github.com/sinatra/sinatra/pull/1650) by Akifumi Tominaga
64
+
65
+ * Docs: Polish documentation: Add section about Multithreaded modes and Routes. [#1708](https://github.com/sinatra/sinatra/pull/1708) by Patrick Gramatowski
66
+
67
+ * Docs: Japanese documentation: Make Session section reflect changes done to README.md. [#1731](https://github.com/sinatra/sinatra/pull/1731) by @shu-i-chi
68
+
69
+ ## 2.2.2 / 2022-07-23
70
+
71
+ * Update mustermann dependency to version 2.
72
+
73
+ ## 2.2.1 / 2022-07-15
74
+
75
+ * Fix JRuby regression by using ruby2_keywords for delegation. #1750 by Patrik Ragnarsson
76
+
77
+ * Add JRuby to CI. #1755 by Karol Bucek
78
+
79
+ ## 2.2.0 / 2022-02-15
80
+
81
+ * Breaking change: Add `#select`, `#reject` and `#compact` methods to `Sinatra::IndifferentHash`. If hash keys need to be converted to symbols, call `#to_h` to get a `Hash` instance first. [#1711](https://github.com/sinatra/sinatra/pull/1711) by Olivier Bellone
82
+
83
+ * Handle EOFError raised by Rack and return Bad Request 400 status. [#1743](https://github.com/sinatra/sinatra/pull/1743) by tamazon
84
+
85
+ * Minor refactors in `base.rb`. [#1640](https://github.com/sinatra/sinatra/pull/1640) by ceclinux
86
+
87
+ * Add escaping to the static 404 page. [#1645](https://github.com/sinatra/sinatra/pull/1645) by Chris Gavin
88
+
89
+ * Remove `detect_rack_handler` method. [#1652](https://github.com/sinatra/sinatra/pull/1652) by ceclinux
90
+
91
+ * Respect content type set in superclass before filter. Fixes [#1647](https://github.com/sinatra/sinatra/issues/1647) [#1649](https://github.com/sinatra/sinatra/pull/1649) by Jordan Owens
92
+
93
+ * *Revert "Use prepend instead of include for helpers.* [#1662](https://github.com/sinatra/sinatra/pull/1662) by namusyaka
26
94
 
27
95
  * Fix usage of inherited `Sinatra::Base` classes keyword arguments. Fixes [#1669](https://github.com/sinatra/sinatra/issues/1669) [#1670](https://github.com/sinatra/sinatra/pull/1670) by Cadu Ribeiro
28
96
 
@@ -36,20 +104,29 @@
36
104
 
37
105
  * Fix Delegator to pass keyword arguments for Ruby 3.0. [#1684](https://github.com/sinatra/sinatra/pull/1684) by andrewtblake
38
106
 
39
- * Fix use with keyword arguments for Ruby 3.0. [#1701](https://github.com/sinatra/sinatra/pull/1701) by Robin Wallin
107
+ * Fix use with keyword arguments for Ruby 3.0. [#1701](https://github.com/sinatra/sinatra/pull/1701) by Robin Wallin
40
108
 
41
109
  * Fix memory leaks for proc template. Fixes [#1704](https://github.com/sinatra/sinatra/issues/1714) [#1719](https://github.com/sinatra/sinatra/pull/1719) by Slevin
42
110
 
43
111
  * Remove unnecessary `test_files` from the gemspec. [#1712](https://github.com/sinatra/sinatra/pull/1712) by Masataka Pocke Kuwabara
44
112
 
45
- * Add `#select`, `#reject` and `#compact` methods to `Sinatra::IndifferentHash`. [#1711](https://github.com/sinatra/sinatra/pull/1711) by Olivier Bellone
113
+ * Docs: Spanish documentation: Update README.es.md with removal of Thin. [#1630](https://github.com/sinatra/sinatra/pull/1630) by Espartaco Palma
114
+
115
+ * Docs: German documentation: Fixed typos in German README.md. [#1648](https://github.com/sinatra/sinatra/pull/1648) by Juri
116
+
117
+ * Docs: Japanese documentation: Update README.ja.md with removal of Thin. [#1629](https://github.com/sinatra/sinatra/pull/1629) by Ryuichi KAWAMATA
118
+
119
+ * Docs: English documentation: Various minor fixes to README.md. [#1663](https://github.com/sinatra/sinatra/pull/1663) by Yanis Zafirópulos
120
+
121
+ * Docs: English documentation: Document when `dump_errors` is enabled. Fixes [#1664](https://github.com/sinatra/sinatra/issues/1664) [#1665](https://github.com/sinatra/sinatra/pull/1665) by Patrik Ragnarsson
46
122
 
123
+ * Docs: Brazilian Portuguese documentation: Update README.pt-br.md with translation fixes. [#1668](https://github.com/sinatra/sinatra/pull/1668) by Vitor Oliveira
47
124
 
48
125
  ### CI
49
126
 
50
127
  * Use latest JRuby 9.2.16.0 on CI. [#1682](https://github.com/sinatra/sinatra/pull/1682) by Olle Jonsson
51
128
 
52
- * Switch CI from travis to Github actions. [#1691](https://github.com/sinatra/sinatra/pull/1691) by namusyaka
129
+ * Switch CI from travis to GitHub Actions. [#1691](https://github.com/sinatra/sinatra/pull/1691) by namusyaka
53
130
 
54
131
  * Skip the Slack action if `secrets.SLACK_WEBHOOK` is not set. [#1705](https://github.com/sinatra/sinatra/pull/1705) by Robin Wallin
55
132
 
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Why use bundler?
2
4
  # Well, not all development dependencies install on all rubies. Moreover, `gem
3
5
  # install sinatra --development` doesn't work, as it will also try to install
@@ -6,75 +8,52 @@
6
8
  #
7
9
  # If you have issues with a gem: `bundle install --without-coffee-script`.
8
10
 
9
- RUBY_ENGINE = 'ruby' unless defined? RUBY_ENGINE
10
- source 'https://rubygems.org' unless ENV['QUICK']
11
+ source 'https://rubygems.org'
11
12
  gemspec
12
13
 
13
14
  gem 'rake'
14
- gem 'rack', '~> 2.0'
15
- gem 'rack-test', '>= 0.6.2'
16
- gem "minitest", "~> 5.0"
17
- gem 'yard'
18
-
19
- gem "rack-protection", path: "rack-protection"
20
- gem "sinatra-contrib", path: "sinatra-contrib"
21
15
 
22
- gem "twitter-text", "1.14.7"
16
+ rack_version = ENV['rack'].to_s
17
+ rack_version = nil if rack_version.empty? || (rack_version == 'stable')
18
+ rack_version = { github: 'rack/rack' } if rack_version == 'latest'
19
+ gem 'rack', rack_version
23
20
 
24
- if RUBY_ENGINE == 'jruby'
25
- gem 'nokogiri', '!= 1.5.0'
26
- gem 'puma'
27
- end
21
+ puma_version = ENV['puma'].to_s
22
+ puma_version = nil if puma_version.empty? || (puma_version == 'stable')
23
+ puma_version = { github: 'puma/puma' } if puma_version == 'latest'
24
+ gem 'puma', puma_version
28
25
 
29
- if RUBY_ENGINE == 'jruby' || RUBY_ENGINE == 'ruby'
30
- gem "activesupport", "~> 5.1.6"
31
- end
32
-
33
- if RUBY_ENGINE == "ruby"
34
- gem 'less', '~> 2.0'
35
- gem 'therubyracer'
36
- gem 'redcarpet'
37
- gem 'wlang', '>= 3.0.1'
38
- gem 'bluecloth'
39
- gem 'rdiscount'
40
- gem 'RedCloth'
41
- gem 'puma'
42
- gem 'yajl-ruby'
43
- gem 'nokogiri'
44
- gem 'rainbows'
45
- gem 'eventmachine'
46
- gem 'slim', '~> 2.0'
47
- gem 'coffee-script', '>= 2.0'
48
- gem 'rdoc'
49
- gem 'kramdown'
50
- gem 'maruku'
51
- gem 'creole'
52
- gem 'wikicloth'
53
- gem 'markaby'
54
- gem 'radius'
55
- gem 'asciidoctor'
56
- gem 'liquid'
57
- gem 'stylus'
58
- gem 'rabl'
59
- gem 'builder'
60
- gem 'erubi'
61
- gem 'erubis'
62
- gem 'haml', '>= 3.0'
63
- gem 'sass'
64
- gem 'reel-rack'
65
- gem 'celluloid', '~> 0.16.0'
66
- gem 'commonmarker', '~> 0.20.0'
67
- gem 'pandoc-ruby', '~> 2.0.2'
68
- gem 'simplecov', require: false
69
- end
70
-
71
- if RUBY_ENGINE == "rbx"
72
- gem 'json'
73
- gem 'rubysl'
74
- gem 'rubysl-test-unit'
75
- gem 'erubi'
76
- end
26
+ gem 'minitest', '~> 5.0'
27
+ gem 'rack-test', github: 'rack/rack-test'
28
+ gem 'rubocop', '~> 1.32.0', require: false
29
+ gem 'yard'
77
30
 
78
- platforms :jruby do
79
- gem 'json'
80
- end
31
+ gem 'rack-protection', path: 'rack-protection'
32
+ gem 'sinatra-contrib', path: 'sinatra-contrib'
33
+
34
+ gem 'activesupport', '~> 6.1'
35
+
36
+ gem 'asciidoctor'
37
+ gem 'builder'
38
+ gem 'commonmarker', '~> 0.23.4', platforms: [:ruby]
39
+ gem 'erubi'
40
+ gem 'eventmachine'
41
+ gem 'falcon', '~> 0.40', platforms: [:ruby]
42
+ gem 'haml', '~> 5'
43
+ gem 'kramdown'
44
+ gem 'liquid'
45
+ gem 'markaby'
46
+ gem 'nokogiri', '> 1.5.0'
47
+ gem 'pandoc-ruby', '~> 2.0.2'
48
+ gem 'rabl'
49
+ gem 'rainbows', platforms: [:mri] # uses #fork
50
+ gem 'rdiscount', platforms: [:ruby]
51
+ gem 'rdoc'
52
+ gem 'redcarpet', platforms: [:ruby]
53
+ gem 'simplecov', require: false
54
+ gem 'slim', '~> 4'
55
+ gem 'yajl-ruby', platforms: [:ruby]
56
+
57
+ gem 'json', platforms: %i[jruby mri]
58
+
59
+ gem 'jar-dependencies', '= 0.4.1', platforms: [:jruby] # Gem::LoadError with jar-dependencies 0.4.2