spellr 0.9.0 → 0.9.1

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: 60659d04d7461c60fc7880fe44fa4af1d6b852511affaef3722d8bca7902bebe
4
- data.tar.gz: 6327cb52ae02517918e886b774311f09270dc1e96166361962c49f9f01f28506
3
+ metadata.gz: 901a89f14415b3993f210ac2f0f94cb82efdbfc55565f8e1c9fd51347790b3d6
4
+ data.tar.gz: 113d25fcdfc5d70c9e50f4a061092728c1349452e88e0dd0d6268d10851c47b9
5
5
  SHA512:
6
- metadata.gz: 1aadb5c07c9ce3fa8899be299810480034d1bfed1e93aa9fe0e07192edb9cac21e8c505908da7757badb0190da5d0251c47cf135306aa60cde8abbee2a4e3db8
7
- data.tar.gz: 7fc321f6665f93c4093a46748781eb59ce56930c334298670e5592d63887e97092bc2ab49394ab08f143d8a84a213e4df76a149b6f97065b51f78feebc56e91c
6
+ metadata.gz: adcfec5ea17125517f445fb7e895b5ee049d1540f7626ab5c55d835d600b149d844b9a052f2324784038f5098a392a8f51b16d01c56ace9cffa773b34e27bbca
7
+ data.tar.gz: 922c16526b3e0dd8600ca5ef836de2419dda0237e3b3c2d8a2674d1ca7b0f0dcebf1fe0d0deded671522ee526c7e185a338ef98e762c4385e00b25f8e3ae94e8
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ # v0.9.1
2
+ - Assume all files are utf8, more comprehensively. (Sets ::Encoding.default_external and default_internal while running)
3
+
1
4
  # v0.9.0
2
5
  - Recognize url with _ in query string and zero length path
3
6
  - Assume all files are utf8
data/exe/spellr CHANGED
@@ -3,4 +3,7 @@
3
3
 
4
4
  require_relative '../lib/spellr/cli'
5
5
 
6
+ ::Encoding.default_external = ::Encoding::UTF_8
7
+ ::Encoding.default_internal = ::Encoding::UTF_8
8
+
6
9
  exit Spellr::CLI.new(ARGV).run
@@ -32,7 +32,7 @@ module Spellr
32
32
  def load_yaml(path)
33
33
  return {} unless ::File.exist?(path)
34
34
 
35
- YAML.safe_load(::File.read(path, encoding: ::Encoding::UTF_8), symbolize_names: true)
35
+ YAML.safe_load(::File.read(path), symbolize_names: true)
36
36
  end
37
37
 
38
38
  def merge_config(default, project) # rubocop:disable Metrics/MethodLength
data/lib/spellr/file.rb CHANGED
@@ -34,7 +34,7 @@ module Spellr
34
34
  end
35
35
 
36
36
  def read_write
37
- write(yield(read(encoding: ::Encoding::UTF_8)), encoding: ::Encoding::UTF_8)
37
+ write(yield read)
38
38
  end
39
39
  end
40
40
  end
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'rake'
4
- require 'spellr/cli'
5
4
  require 'shellwords'
6
5
 
7
6
  module Spellr
@@ -36,11 +35,13 @@ module Spellr
36
35
  desc("Run spellr (default args: #{escaped_argv})")
37
36
  end
38
37
 
39
- def define_task
38
+ def define_task # rubocop:disable Metrics/MethodLength
40
39
  task(@name, :'*args') do |_, task_argv|
41
- argv = argv_or_default(task_argv)
42
- write_cli_cmd(argv)
43
- run(argv)
40
+ with_utf_8 do
41
+ argv = argv_or_default(task_argv)
42
+ write_cli_cmd(argv)
43
+ run(argv)
44
+ end
44
45
  end
45
46
  end
46
47
 
@@ -49,6 +50,7 @@ module Spellr
49
50
  end
50
51
 
51
52
  def run(argv)
53
+ require 'spellr/cli'
52
54
  status = Spellr::CLI.new(argv).run
53
55
  exit 1 unless status == 0
54
56
  end
@@ -57,5 +59,15 @@ module Spellr
57
59
  task_argv = task_argv.to_a.compact
58
60
  task_argv.empty? ? @default_argv : task_argv
59
61
  end
62
+
63
+ def with_utf_8 # rubocop:disable Metrics/MethodLength
64
+ old_default_external = ::Encoding.default_external
65
+ old_default_internal = ::Encoding.default_internal
66
+ ::Encoding.default_external = ::Encoding::UTF_8
67
+ ::Encoding.default_internal = ::Encoding::UTF_8
68
+ yield
69
+ ::Encoding.default_external = old_default_external
70
+ ::Encoding.default_internal = old_default_internal
71
+ end
60
72
  end
61
73
  end
@@ -27,7 +27,7 @@ module Spellr
27
27
  end
28
28
 
29
29
  def each_term(&block)
30
- file.each_line(encoding: ::Encoding::UTF_8) do |line|
30
+ file.each_line do |line|
31
31
  prepare_tokenizer_for_line(line)&.each_term(&block)
32
32
  end
33
33
  ensure
@@ -56,14 +56,12 @@ module Spellr
56
56
  char_offset = @start_at.line_location.char_offset
57
57
  byte_offset = @start_at.line_location.byte_offset
58
58
 
59
- file
60
- .each_line(encoding: ::Encoding::UTF_8)
61
- .with_index(@start_at.line_location.line_number) do |line, line_number|
62
- yield line, line_number, char_offset, byte_offset
59
+ file.each_line.with_index(@start_at.line_location.line_number) do |line, line_number|
60
+ yield line, line_number, char_offset, byte_offset
63
61
 
64
- char_offset += line.length
65
- byte_offset += line.bytesize
66
- end
62
+ char_offset += line.length
63
+ byte_offset += line.bytesize
64
+ end
67
65
  ensure
68
66
  file.close
69
67
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Spellr
4
- VERSION = '0.9.0'
4
+ VERSION = '0.9.1'
5
5
  end
@@ -41,7 +41,7 @@ module Spellr
41
41
  touch
42
42
  @include[term] = true
43
43
  insert_sorted(term)
44
- @path.write(words.join, encoding: ::Encoding::UTF_8) # we don't need to clear the cache
44
+ @path.write(words.join) # we don't need to clear the cache
45
45
  end
46
46
 
47
47
  def words
@@ -55,7 +55,7 @@ module Spellr
55
55
  end
56
56
 
57
57
  def write(content)
58
- @path.write(content, encoding: ::Encoding::UTF_8)
58
+ @path.write(content)
59
59
 
60
60
  clear_cache
61
61
  end
@@ -70,7 +70,7 @@ module Spellr
70
70
  return if exist?
71
71
 
72
72
  @path.dirname.mkpath
73
- @path.write('', encoding: ::Encoding::UTF_8)
73
+ @path.write('')
74
74
  clear_cache
75
75
  end
76
76
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spellr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dana Sherson
@@ -266,7 +266,6 @@ files:
266
266
  - lib/spellr/rake_task.rb
267
267
  - lib/spellr/reporter.rb
268
268
  - lib/spellr/string_format.rb
269
- - lib/spellr/stringio_with_encoding.rb
270
269
  - lib/spellr/token.rb
271
270
  - lib/spellr/token_regexps.rb
272
271
  - lib/spellr/tokenizer.rb
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Spellr
4
- class StringIOWithEncoding < ::StringIO
5
- def each_line(*args, encoding: nil, **kwargs, &block)
6
- string.force_encoding(encoding) if encoding && !string.frozen?
7
-
8
- super(*args, **kwargs, &block)
9
- end
10
- end
11
- end