sbsm 1.6.1 → 1.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5c49aade69c54b5d99fabe38bb3896307a2a5d726629bbb14764c4bcbcee46ce
4
- data.tar.gz: 76a61fc0932cfd6dd8bfb065e573c0c0b8b62b079235008620f82b2e76f7b4ac
3
+ metadata.gz: 86e899261cc339f9823718208de2acff2be0eee084ff0327f7d8773a219255b4
4
+ data.tar.gz: d5bbc3378fa5e2ced23310629caa4459cb52261973f3676e9bae0f9f8cee2183
5
5
  SHA512:
6
- metadata.gz: 547e0cb68e3454ba50f7a2058fef10c482fdd1cee0454cb3ef6c00e5150718241f6d312464dd88ab1ea6738f1532f2cffc661ef65b2ab8f3c9aabb665c2fe460
7
- data.tar.gz: 73c7c87eff58a13e476d0222d56b54ee57904e8b7757fe94cc4ca5fc0097828c3c2b88b6ce783cd5163a1886fc09701b83e457d3fe5bd56eaf7619b0b0214be0
6
+ metadata.gz: 406aa85aad631e33db299ed2d6dc351695ba5bf6550ce3aae67d01a12596cdc4b70a67dc5471599a4ac4ef17d28a5e1d456173bf66b44ac02b77ed27dd582782
7
+ data.tar.gz: 77aeb85b366d0bef22bede0ffd0f8ff0d300d32729021c6786b0cd78e32079cbbaccdd133521d90f8121c1e18d0c452b8749cd89ac8e1849a30f52a2deb0c073
data/.envrc ADDED
@@ -0,0 +1,3 @@
1
+ source_url "https://raw.githubusercontent.com/cachix/devenv/d1f7b48e35e6dee421cfd0f51481d17f77586997/direnvrc" "sha256-YBzqskFZxmNb3kYVoKD9ZixoPXJh1C9ZvTLGFRkauZ0="
2
+
3
+ use devenv
@@ -22,7 +22,7 @@ jobs:
22
22
  fail-fast: false
23
23
  matrix:
24
24
  os: [ ubuntu]
25
- ruby: [2.5, 2.6, 2.7, 3.0, 3.1, head]
25
+ ruby: [2.5, 2.6, 2.7, '3.0', 3.1, 3.2, 3.3, 3.4, head]
26
26
  continue-on-error: ${{ endsWith(matrix.ruby, 'head') }}
27
27
  steps:
28
28
  - uses: actions/checkout@v2
@@ -31,5 +31,5 @@ jobs:
31
31
  ruby-version: ${{ matrix.ruby }}
32
32
  bundler-cache: true
33
33
 
34
- - name: Run tests via rake
35
- run: bundle exec rake
34
+ - name: Run tests via test/suite.rb
35
+ run: bundle exec test/suite.rb
data/.gitignore CHANGED
@@ -1,4 +1,3 @@
1
- .ruby-version
2
1
  Gemfile.lock
3
2
  etc/
4
3
  .bundle/
@@ -7,3 +6,14 @@ vendor/
7
6
  pkg/
8
7
  coverage/
9
8
  *.log
9
+
10
+ # Devenv
11
+ .devenv*
12
+ devenv.local.nix
13
+
14
+ # direnv
15
+ .direnv
16
+
17
+ # pre-commit
18
+ .pre-commit-config.yaml
19
+
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 3.3.0
data/History.txt CHANGED
@@ -1,3 +1,15 @@
1
+ === 1.6.3 / 07.01.2025
2
+
3
+ * Updated devenv environment for Ruby 3.3 (see https://devenv.sh/)
4
+ * Replace hpricot with nokogiri as hpricot is no longer maintained and leads to many test warnings under Ruby 3.4
5
+
6
+ === 1.6.2 / 25.01.2024
7
+
8
+ * Add devenv environment for Ruby 3.3 (see https://devenv.sh/)
9
+ * Replace Chronologger with Logger as https://github.com/ma2gedev/chrono_logger
10
+ is no longer maintained and leads to test errors under Ruby 3.3
11
+ * Run all tests also under Ruby 3.3
12
+
1
13
  === 1.6.1 / 09.12.2022
2
14
 
3
15
  * Fix Mime-Bug for Davaz.com
data/devenv.lock ADDED
@@ -0,0 +1,168 @@
1
+ {
2
+ "nodes": {
3
+ "devenv": {
4
+ "locked": {
5
+ "dir": "src/modules",
6
+ "lastModified": 1736184348,
7
+ "owner": "cachix",
8
+ "repo": "devenv",
9
+ "rev": "07219f00c633f756d1f0cc5bb6c4c311b5c4cb0d",
10
+ "type": "github"
11
+ },
12
+ "original": {
13
+ "dir": "src/modules",
14
+ "owner": "cachix",
15
+ "repo": "devenv",
16
+ "type": "github"
17
+ }
18
+ },
19
+ "flake-compat": {
20
+ "flake": false,
21
+ "locked": {
22
+ "lastModified": 1733328505,
23
+ "owner": "edolstra",
24
+ "repo": "flake-compat",
25
+ "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
26
+ "type": "github"
27
+ },
28
+ "original": {
29
+ "owner": "edolstra",
30
+ "repo": "flake-compat",
31
+ "type": "github"
32
+ }
33
+ },
34
+ "flake-compat_2": {
35
+ "flake": false,
36
+ "locked": {
37
+ "lastModified": 1733328505,
38
+ "owner": "edolstra",
39
+ "repo": "flake-compat",
40
+ "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
41
+ "type": "github"
42
+ },
43
+ "original": {
44
+ "owner": "edolstra",
45
+ "repo": "flake-compat",
46
+ "type": "github"
47
+ }
48
+ },
49
+ "flake-utils": {
50
+ "inputs": {
51
+ "systems": "systems"
52
+ },
53
+ "locked": {
54
+ "lastModified": 1731533236,
55
+ "owner": "numtide",
56
+ "repo": "flake-utils",
57
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
58
+ "type": "github"
59
+ },
60
+ "original": {
61
+ "owner": "numtide",
62
+ "repo": "flake-utils",
63
+ "type": "github"
64
+ }
65
+ },
66
+ "gitignore": {
67
+ "inputs": {
68
+ "nixpkgs": [
69
+ "pre-commit-hooks",
70
+ "nixpkgs"
71
+ ]
72
+ },
73
+ "locked": {
74
+ "lastModified": 1709087332,
75
+ "owner": "hercules-ci",
76
+ "repo": "gitignore.nix",
77
+ "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
78
+ "type": "github"
79
+ },
80
+ "original": {
81
+ "owner": "hercules-ci",
82
+ "repo": "gitignore.nix",
83
+ "type": "github"
84
+ }
85
+ },
86
+ "nixpkgs": {
87
+ "locked": {
88
+ "lastModified": 1736061677,
89
+ "owner": "NixOS",
90
+ "repo": "nixpkgs",
91
+ "rev": "cbd8ec4de4469333c82ff40d057350c30e9f7d36",
92
+ "type": "github"
93
+ },
94
+ "original": {
95
+ "owner": "NixOS",
96
+ "ref": "nixos-24.11",
97
+ "repo": "nixpkgs",
98
+ "type": "github"
99
+ }
100
+ },
101
+ "nixpkgs-ruby": {
102
+ "inputs": {
103
+ "flake-compat": "flake-compat",
104
+ "flake-utils": "flake-utils",
105
+ "nixpkgs": [
106
+ "nixpkgs"
107
+ ]
108
+ },
109
+ "locked": {
110
+ "lastModified": 1735192621,
111
+ "owner": "bobvanderlinden",
112
+ "repo": "nixpkgs-ruby",
113
+ "rev": "602c528c8228f231f912c6d117703a1700464202",
114
+ "type": "github"
115
+ },
116
+ "original": {
117
+ "owner": "bobvanderlinden",
118
+ "repo": "nixpkgs-ruby",
119
+ "type": "github"
120
+ }
121
+ },
122
+ "pre-commit-hooks": {
123
+ "inputs": {
124
+ "flake-compat": "flake-compat_2",
125
+ "gitignore": "gitignore",
126
+ "nixpkgs": [
127
+ "nixpkgs"
128
+ ]
129
+ },
130
+ "locked": {
131
+ "lastModified": 1735882644,
132
+ "owner": "cachix",
133
+ "repo": "pre-commit-hooks.nix",
134
+ "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
135
+ "type": "github"
136
+ },
137
+ "original": {
138
+ "owner": "cachix",
139
+ "repo": "pre-commit-hooks.nix",
140
+ "type": "github"
141
+ }
142
+ },
143
+ "root": {
144
+ "inputs": {
145
+ "devenv": "devenv",
146
+ "nixpkgs": "nixpkgs",
147
+ "nixpkgs-ruby": "nixpkgs-ruby",
148
+ "pre-commit-hooks": "pre-commit-hooks"
149
+ }
150
+ },
151
+ "systems": {
152
+ "locked": {
153
+ "lastModified": 1681028828,
154
+ "owner": "nix-systems",
155
+ "repo": "default",
156
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
157
+ "type": "github"
158
+ },
159
+ "original": {
160
+ "owner": "nix-systems",
161
+ "repo": "default",
162
+ "type": "github"
163
+ }
164
+ }
165
+ },
166
+ "root": "root",
167
+ "version": 7
168
+ }
data/devenv.nix ADDED
@@ -0,0 +1,31 @@
1
+ { pkgs, ... }:
2
+
3
+ {
4
+ # https://devenv.sh/basics/
5
+ env.GREET = "devenv";
6
+
7
+ # https://devenv.sh/packages/
8
+ packages = [ pkgs.git pkgs.libyaml ];
9
+
10
+ enterShell = ''
11
+ echo This is the devenv shell for oddb2xml
12
+ git --version
13
+ ruby --version
14
+ '';
15
+
16
+ # https://devenv.sh/languages/
17
+ # languages.nix.enable = true;
18
+
19
+ languages.ruby.enable = true;
20
+ languages.ruby.version = "3.4";
21
+ # Needed for gem mimemagic
22
+ env.FREEDESKTOP_MIME_TYPES_PATH = "${pkgs.shared-mime-info}/share/mime/packages/freedesktop.org.xml";
23
+
24
+ # https://devenv.sh/pre-commit-hooks/
25
+ # pre-commit.hooks.shellcheck.enable = true;
26
+
27
+ # https://devenv.sh/processes/
28
+ # processes.ping.exec = "ping example.com";
29
+
30
+ # See full reference at https://devenv.sh/reference/options/
31
+ }
data/devenv.yaml ADDED
@@ -0,0 +1,8 @@
1
+ inputs:
2
+ nixpkgs:
3
+ url: github:NixOS/nixpkgs/nixos-24.11
4
+ nixpkgs-ruby:
5
+ url: github:bobvanderlinden/nixpkgs-ruby
6
+ inputs:
7
+ nixpkgs:
8
+ follows: nixpkgs
data/lib/sbsm/logger.rb CHANGED
@@ -22,7 +22,7 @@
22
22
  # ngiger@ywesee.com
23
23
  #++
24
24
 
25
- require 'chrono_logger'
25
+ require 'logger'
26
26
  require 'sbsm/version'
27
27
  module SBSM
28
28
  @@logger = Logger.new(STDERR)
@@ -150,7 +150,7 @@ module SBSM
150
150
  end
151
151
  def uri_parser(grammar_path=@grammar_path, parser_path=@parser_path)
152
152
  if(File.exist?(grammar_path))
153
- oldpath = File.expand_path("_" << File.basename(grammar_path),
153
+ oldpath = File.expand_path("_" + File.basename(grammar_path),
154
154
  File.dirname(grammar_path))
155
155
  src = File.read(grammar_path)
156
156
  unless(File.exist?(oldpath) && File.read(oldpath)==src)
@@ -30,7 +30,7 @@ require 'mail'
30
30
  require 'date'
31
31
  require 'uri'
32
32
  require 'stringio'
33
- require 'hpricot'
33
+ require "nokogiri"
34
34
  require 'sbsm/logger'
35
35
 
36
36
  module SBSM
@@ -225,17 +225,16 @@ module SBSM
225
225
  end
226
226
  @@xml_ptrn = /<\?xml[^>]+>/
227
227
  def _validate_html(value, valid=self.class.const_get(:ALLOWED_TAGS))
228
- doc = Hpricot(value.gsub(@@xml_ptrn, ''), :fixup_tags => true)
229
- (doc/"*").each { |element|
230
- unless(element.is_a?(Hpricot::Text) \
231
- || (element.respond_to?(:name) \
232
- && valid.include?(element.name.downcase)))
233
- element.swap _validate_html(element.inner_html.to_s)
234
- end
235
- }
236
- valid = doc.to_html
237
- valid.force_encoding 'UTF-8' if valid.respond_to?(:force_encoding)
238
- valid
228
+ doc = Nokogiri::HTML.parse(value.gsub(@@xml_ptrn, ''))
229
+ doc.elements.each do |element|
230
+ unless( element.is_a?(Nokogiri::XML::Text) ||
231
+ (element.respond_to?(:name) \
232
+ && valid.include?(element.name.downcase)))
233
+ end
234
+ end
235
+ result = ''
236
+ doc.elements.each { |x| result += x.inner_html}
237
+ result.sub('<body>','').sub('</body>','')
239
238
  end
240
239
  @@numeric_ptrn = /\d+(\.\d{1,2})?/
241
240
  def validate_numeric(key, value)
data/lib/sbsm/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module SBSM
2
- VERSION = '1.6.1'
2
+ VERSION = '1.6.3'
3
3
  end
data/sbsm.gemspec CHANGED
@@ -16,15 +16,15 @@ Gem::Specification.new do |spec|
16
16
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
+ spec.metadata["changelog_uri"] = spec.homepage + "/blob/master/ChangeLog"
19
20
 
20
21
  # We fix the version of the spec to newer versions only in the third position
21
22
  # hoping that these version fix only security/severe bugs
22
23
  # Consulted the Gemfile.lock to get
23
24
  spec.add_dependency 'rack'
24
- spec.add_dependency 'mail'
25
- spec.add_dependency 'hpricot'
25
+ spec.add_dependency 'mail', '< 2.8.0'
26
+ spec.add_dependency 'nokogiri'
26
27
  spec.add_dependency 'mimemagic'
27
- spec.add_dependency 'chrono_logger'
28
28
 
29
29
  spec.add_development_dependency "bundler"
30
30
  spec.add_development_dependency "rake"
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
35
35
  spec.add_development_dependency "simplecov"
36
36
  spec.add_development_dependency "watir"
37
37
  spec.add_development_dependency "watir-webdriver"
38
- spec.add_development_dependency "pry-byebug"
38
+ spec.add_development_dependency "debug"
39
39
  spec.add_development_dependency "nokogiri"
40
40
  spec.add_development_dependency "rack-test"
41
41
  end
data/test/simple_sbsm.rb CHANGED
@@ -5,7 +5,7 @@ require 'sbsm/logger'
5
5
  require 'sbsm/app'
6
6
 
7
7
  root_dir = File.expand_path(File.join(__FILE__, '..', '..'))
8
- TEST_LOGGER = ChronoLogger.new(File.join(root_dir, 'test.log'))
8
+ TEST_LOGGER = Logger.new(File.join(root_dir, 'test.log'))
9
9
  SBSM.logger=TEST_LOGGER
10
10
 
11
11
  TEST_APP_URI = 'druby://localhost:9876'
data/test/suite.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  # TestSuite -- ydim -- 27.01.2005 -- hwyss@ywesee.com
3
3
  require 'simplecov'
4
+ puts "Running under ruby #{RUBY_VERSION}"
4
5
 
5
6
  $: << File.dirname(File.expand_path(__FILE__))
6
7
  SimpleCov.start do
@@ -26,7 +26,7 @@ class AppVariantTest < Minitest::Test
26
26
  end
27
27
  def test_post_feedback
28
28
  get '/de/page' do # needed to set cookie
29
- last_response.set_cookie(TEST_COOKIE_NAME, :value => Hash.new('anrede' => 'value2'))
29
+ last_response.set_cookie(TEST_COOKIE_NAME, :value => {'anrede' => 'value2'})
30
30
  end
31
31
  clear_cookies
32
32
  set_cookie 'anrede=value2'
data/test/test_session.rb CHANGED
@@ -121,7 +121,7 @@ class StubSessionWithView < SBSM::Session
121
121
  def initialize(args)
122
122
  args[:app] ||= StubSessionApp.new
123
123
  args[:validator] ||= StubSessionValidator.new
124
- super(args)
124
+ super(:app => args[:app], :validator => args[:validator])
125
125
  persistent_user_input = {}
126
126
  end
127
127
  end
@@ -163,7 +163,7 @@ class TestSession < Minitest::Test
163
163
  include Rack::Test::Methods
164
164
  def setup
165
165
  @app = StubSessionApp.new(validator: StubSessionValidator.new)
166
- @session = StubSessionWithView.new(app: @app,
166
+ @session = StubSessionWithView.new(# app: @app,
167
167
  validator: StubSessionValidator.new)
168
168
  @request = StubSessionRequest.new
169
169
  @state = StubSessionState.new(@session, nil)
@@ -174,8 +174,8 @@ class TestSession < Minitest::Test
174
174
  assert_equal('example.com', @session.server_name)
175
175
  end
176
176
  def test_user_input
177
- @request["foo"] = "bar"
178
- @request["baz"] = "zuv"
177
+ @request.params["foo"] = "bar"
178
+ @request.params["baz"] = "zuv"
179
179
  # next line checks whether we did setup correctly the session
180
180
  assert_equal(@session.validator.class, StubSessionValidator)
181
181
  @session.process_rack(rack_request: @request)
@@ -190,18 +190,18 @@ class TestSession < Minitest::Test
190
190
  assert_equal(expected, result)
191
191
  end
192
192
  def test_persistent_user_input
193
- @request["baz"] = "zuv"
193
+ @request.params["baz"] = "zuv"
194
194
  @session.process_rack(rack_request: @request)
195
195
  assert_equal("zuv", @session.persistent_user_input(:baz))
196
196
  @session.process_rack(StubSessionRequest.new)
197
197
  assert_equal("zuv", @session.persistent_user_input(:baz))
198
- @request["baz"] = "bla"
198
+ @request.params["baz"] = "bla"
199
199
  @session.process_rack(rack_request: @request)
200
200
  assert_equal("bla", @session.persistent_user_input(:baz))
201
201
  end
202
202
  def test_user_input_hash
203
- @request["hash[1]"] = "4"
204
- @request["hash[2]"] = "5"
203
+ @request.params["hash[1]"] = "4"
204
+ @request.params["hash[2]"] = "5"
205
205
  @request.params["hash[3]"] = "6"
206
206
  @request.params['real_hash'] = {'1' => 'a', '2' => 'b'}
207
207
  @session.process_rack(rack_request: @request)
@@ -231,12 +231,12 @@ class TestSession < Minitest::Test
231
231
  @session.process_rack(:rack_request =>req1)
232
232
  state1 = @session.state
233
233
  req2 = StubSessionRequest.new
234
- req2["event"] = "foo"
234
+ req2.params["event"] = "foo"
235
235
  @session.process_rack(:rack_request =>req2)
236
236
  state2 = @session.state
237
237
  refute_equal(state1, state2)
238
238
  req3 = StubSessionRequest.new
239
- req3["event"] = :bar
239
+ req3.params["event"] = :bar
240
240
  @session.process_rack(:rack_request =>req3)
241
241
  state3 = @session.state
242
242
  refute_equal(state1, state3)
@@ -248,7 +248,7 @@ class TestSession < Minitest::Test
248
248
  }
249
249
  assert_equal(attended, @session.attended_states)
250
250
  req4 = StubSessionRequest.new
251
- req4["event"] = :foobar
251
+ req4.params["event"] = :foobar
252
252
  @session.process_rack(:rack_request =>req4)
253
253
  @session.cap_max_states
254
254
  state4 = @session.state
@@ -338,8 +338,8 @@ class TestSession < Minitest::Test
338
338
  assert_nil(@session.user_input(:no_input))
339
339
  end
340
340
  def test_user_input
341
- @request["foo"] = "bar"
342
- @request["baz"] = "zuv"
341
+ @request.params["foo"] = "bar"
342
+ @request.params["baz"] = "zuv"
343
343
  @session.process_rack(rack_request: @request)
344
344
  assert_equal("bar", @session.user_input(:foo))
345
345
  assert_equal("zuv", @session.user_input(:baz))
@@ -352,9 +352,9 @@ class TestSession < Minitest::Test
352
352
  assert_equal(expected, result)
353
353
  end
354
354
  def test_user_input_hash
355
- @request["hash[1]"] = "4"
356
- @request["hash[2]"] = "5"
357
- @request["hash[3]"] = "6"
355
+ @request.params["hash[1]"] = "4"
356
+ @request.params["hash[2]"] = "5"
357
+ @request.params["hash[3]"] = "6"
358
358
  @session.process_rack(rack_request: @request)
359
359
  hash = @session.user_input(:hash)
360
360
  assert_equal(Hash, hash.class)
@@ -379,12 +379,12 @@ class TestSession < Minitest::Test
379
379
  assert_equal([], @session.valid_values('oof'))
380
380
  end
381
381
  def test_persistent_user_input
382
- @request["baz"] = "zuv"
382
+ @request.params["baz"] = "zuv"
383
383
  @session.process_rack(rack_request: @request)
384
384
  assert_equal("zuv", @session.persistent_user_input(:baz))
385
385
  @session.process_rack(rack_request: StubSessionRequest.new)
386
386
  assert_equal("zuv", @session.persistent_user_input(:baz))
387
- @request["baz"] = "bla"
387
+ @request.params["baz"] = "bla"
388
388
  @session.process_rack(rack_request: @request)
389
389
  assert_equal("bla", @session.persistent_user_input(:baz))
390
390
  end
@@ -122,7 +122,7 @@ class TestValidator < Minitest::Test
122
122
  end
123
123
  def test_validate_html
124
124
  src = "<SPAN style=\"PADDING-BOTTOM: 4px; LINE-HEIGHT: 1.4em; WHITE-SPACE: normal\"><p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Wirkstoff: Ibuprofenum. </span></p><p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Hilfsstoffe: Conserv.: Sorbinsäure (E 200)</span></p></span>"
125
- expected = "<span style=\"PADDING-BOTTOM: 4px; LINE-HEIGHT: 1.4em; WHITE-SPACE: normal\"><p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Wirkstoff: Ibuprofenum. </span></p><p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Hilfsstoffe: Conserv.: Sorbinsäure (E 200)</span></p></span>"
125
+ expected = "<span style=\"PADDING-BOTTOM: 4px; LINE-HEIGHT: 1.4em; WHITE-SPACE: normal\"><p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Wirkstoff: Ibuprofenum. </span></p>\n<p class=\"MsoNormal\" style=\"MARGIN: 0cm -0.3pt 0pt 0cm; TEXT-ALIGN: justify\"><span lang=\"DE\" style=\"FONT-SIZE: 11pt; FONT-FAMILY: Arial; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'\">Hilfsstoffe: Conserv.: Sorbinsäure (E 200)</span></p></span>"
126
126
  assert_equal expected, @val.validate(:html, src)
127
127
  end
128
128
  def test_validate_html__pre
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sbsm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.1
4
+ version: 1.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masaomi Hatakeyama, Zeno R.R. Davatz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-10 00:00:00.000000000 Z
11
+ date: 2025-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -28,18 +28,18 @@ dependencies:
28
28
  name: mail
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "<"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 2.8.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "<"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 2.8.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: hpricot
42
+ name: nokogiri
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: chrono_logger
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: bundler
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -207,7 +193,7 @@ dependencies:
207
193
  - !ruby/object:Gem::Version
208
194
  version: '0'
209
195
  - !ruby/object:Gem::Dependency
210
- name: pry-byebug
196
+ name: debug
211
197
  requirement: !ruby/object:Gem::Requirement
212
198
  requirements:
213
199
  - - ">="
@@ -254,8 +240,10 @@ executables: []
254
240
  extensions: []
255
241
  extra_rdoc_files: []
256
242
  files:
243
+ - ".envrc"
257
244
  - ".github/workflows/ruby.yml"
258
245
  - ".gitignore"
246
+ - ".ruby-version"
259
247
  - Gemfile
260
248
  - History.txt
261
249
  - LICENCE.txt
@@ -268,6 +256,9 @@ files:
268
256
  - data/flavored_uri.grammar
269
257
  - data/uri.grammar
270
258
  - data/zone_uri.grammar
259
+ - devenv.lock
260
+ - devenv.nix
261
+ - devenv.yaml
271
262
  - install.rb
272
263
  - lib/sbsm.rb
273
264
  - lib/sbsm/admin_server.rb
@@ -315,7 +306,8 @@ files:
315
306
  homepage: https://github.com/zdavatz/sbsm
316
307
  licenses:
317
308
  - GPL-v2
318
- metadata: {}
309
+ metadata:
310
+ changelog_uri: https://github.com/zdavatz/sbsm/blob/master/ChangeLog
319
311
  post_install_message:
320
312
  rdoc_options: []
321
313
  require_paths:
@@ -331,7 +323,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
331
323
  - !ruby/object:Gem::Version
332
324
  version: '0'
333
325
  requirements: []
334
- rubygems_version: 3.2.3
326
+ rubygems_version: 3.5.3
335
327
  signing_key:
336
328
  specification_version: 4
337
329
  summary: Application framework for state based session management from ywesee