file-tail 1.0.9 → 1.0.10

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,5 +1,6 @@
1
1
  *.rbc
2
2
  .*.sw[pon]
3
+ .rbx
3
4
  Gemfile.lock
4
5
  coverage
5
6
  pkg
data/.travis.yml CHANGED
@@ -4,5 +4,7 @@ rvm:
4
4
  - 1.9.3
5
5
  - ruby-head
6
6
  - ree
7
- # - rbx
8
- - jruby
7
+ - rbx-18mode
8
+ - rbx-19mode
9
+ - jruby-18mode
10
+ - jruby-19mode
data/CHANGES CHANGED
@@ -1,3 +1,4 @@
1
+ 2012-05-31 * 1.0.10 * Use rewind to force IO#lineno to be reset.
1
2
  2012-05-31 * 1.0.9 * Reopen file in :top mode at the beginning.
2
3
  2011-12-24 * 1.0.8 * Support simplecov.
3
4
  2011-07-15 * 1.0.7 * Use gem_hadar to shorten Rakefile.
data/Gemfile CHANGED
@@ -5,4 +5,5 @@ source :rubygems
5
5
  gemspec
6
6
  group :development do
7
7
  gem 'simplecov'
8
+ gem 'utils'
8
9
  end
data/Rakefile CHANGED
@@ -11,10 +11,10 @@ GemHadar do
11
11
  summary "#{path_name.camelize} for Ruby"
12
12
  description 'Library to tail files in Ruby'
13
13
  test_dir 'tests'
14
- ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', 'coverage', '*.rbc'
14
+ ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', 'coverage', '*.rbc', '.rbx'
15
15
  readme 'README.rdoc'
16
16
 
17
- dependency 'tins', '~>0.3'
17
+ dependency 'tins', '~>0.4.3'
18
18
 
19
19
  development_dependency 'test-unit', '~>2.4.0'
20
20
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.9
1
+ 1.0.10
data/file-tail.gemspec CHANGED
@@ -2,19 +2,19 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "file-tail"
5
- s.version = "1.0.9"
5
+ s.version = "1.0.10"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Florian Frank"]
9
- s.date = "2012-05-31"
9
+ s.date = "2012-06-02"
10
10
  s.description = "Library to tail files in Ruby"
11
11
  s.email = "flori@ping.de"
12
- s.extra_rdoc_files = ["README.rdoc", "lib/file/tail/group.rb", "lib/file/tail/line_extension.rb", "lib/file/tail/logfile.rb", "lib/file/tail/tailer.rb", "lib/file/tail/version.rb", "lib/file/tail.rb", "lib/file-tail.rb"]
12
+ s.extra_rdoc_files = ["README.rdoc", "lib/file-tail.rb", "lib/file/tail.rb", "lib/file/tail/group.rb", "lib/file/tail/line_extension.rb", "lib/file/tail/logfile.rb", "lib/file/tail/tailer.rb", "lib/file/tail/version.rb"]
13
13
  s.files = [".gitignore", ".travis.yml", "CHANGES", "COPYING", "Gemfile", "README.rdoc", "Rakefile", "VERSION", "bin/rtail", "examples/pager.rb", "examples/tail.rb", "file-tail.gemspec", "lib/file-tail.rb", "lib/file/tail.rb", "lib/file/tail/group.rb", "lib/file/tail/line_extension.rb", "lib/file/tail/logfile.rb", "lib/file/tail/tailer.rb", "lib/file/tail/version.rb", "tests/file_tail_group_test.rb", "tests/file_tail_test.rb", "tests/test_helper.rb"]
14
14
  s.homepage = "http://github.com/flori/file-tail"
15
15
  s.rdoc_options = ["--title", "File-tail - File::Tail for Ruby", "--main", "README.rdoc"]
16
16
  s.require_paths = ["lib"]
17
- s.rubygems_version = "1.8.24"
17
+ s.rubygems_version = "1.8.12"
18
18
  s.summary = "File::Tail for Ruby"
19
19
  s.test_files = ["tests/file_tail_group_test.rb", "tests/file_tail_test.rb", "tests/test_helper.rb"]
20
20
 
@@ -24,15 +24,15 @@ Gem::Specification.new do |s|
24
24
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
25
  s.add_development_dependency(%q<gem_hadar>, ["~> 0.1.8"])
26
26
  s.add_development_dependency(%q<test-unit>, ["~> 2.4.0"])
27
- s.add_runtime_dependency(%q<tins>, ["~> 0.3"])
27
+ s.add_runtime_dependency(%q<tins>, ["~> 0.4.3"])
28
28
  else
29
29
  s.add_dependency(%q<gem_hadar>, ["~> 0.1.8"])
30
30
  s.add_dependency(%q<test-unit>, ["~> 2.4.0"])
31
- s.add_dependency(%q<tins>, ["~> 0.3"])
31
+ s.add_dependency(%q<tins>, ["~> 0.4.3"])
32
32
  end
33
33
  else
34
34
  s.add_dependency(%q<gem_hadar>, ["~> 0.1.8"])
35
35
  s.add_dependency(%q<test-unit>, ["~> 2.4.0"])
36
- s.add_dependency(%q<tins>, ["~> 0.3"])
36
+ s.add_dependency(%q<tins>, ["~> 0.4.3"])
37
37
  end
38
38
  end
data/lib/file/tail.rb CHANGED
@@ -97,7 +97,7 @@ class File
97
97
  # Skip the first <code>n</code> lines of this file. The default is to don't
98
98
  # skip any lines at all and start at the beginning of this file.
99
99
  def forward(n = 0)
100
- seek(0, File::SEEK_SET)
100
+ rewind
101
101
  while n > 0 and not eof?
102
102
  readline
103
103
  n -= 1
@@ -132,10 +132,10 @@ class File
132
132
  seek(-bufsize, File::SEEK_CUR)
133
133
  end
134
134
  else
135
- seek(0, File::SEEK_SET)
135
+ rewind
136
136
  buffer = read(size)
137
137
  n -= buffer.count("\n")
138
- seek(0, File::SEEK_SET)
138
+ rewind
139
139
  end
140
140
  rescue Errno::EINVAL
141
141
  size = tell
@@ -1,6 +1,6 @@
1
1
  module File::Tail
2
2
  # File::Tail version
3
- VERSION = '1.0.9'
3
+ VERSION = '1.0.10'
4
4
  VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
@@ -164,7 +164,7 @@ class FileTailTest < Test::Unit::TestCase
164
164
  lines = []
165
165
  logger = Thread.new do
166
166
  begin
167
- timeout(1) do
167
+ timeout(10) do
168
168
  @in.tail do |l|
169
169
  lines << l
170
170
  end
@@ -293,6 +293,7 @@ class FileTailTest < Test::Unit::TestCase
293
293
  return if File::PATH_SEPARATOR == ';' # Grmpf! Windows...
294
294
  @in.forward
295
295
  reopened = false
296
+ assert_equal 0, @in.lineno
296
297
  @in.after_reopen { |f| reopened = true }
297
298
  lines = []
298
299
  logger = Thread.new do
@@ -318,12 +319,14 @@ class FileTailTest < Test::Unit::TestCase
318
319
  logger.join
319
320
  assert_equal(110, lines.size)
320
321
  assert reopened
322
+ assert_equal 10, @in.lineno
321
323
  end
322
324
 
323
325
  def test_tail_change2
324
326
  return if File::PATH_SEPARATOR == ';' # Grmpf! Windows...
325
327
  @in.forward
326
328
  reopened = false
329
+ assert_equal 0, @in.lineno
327
330
  @in.after_reopen { |f| reopened = true }
328
331
  lines = []
329
332
  logger = Thread.new do
@@ -349,6 +352,7 @@ class FileTailTest < Test::Unit::TestCase
349
352
  logger.join
350
353
  assert_equal(110, lines.size)
351
354
  assert reopened
355
+ assert_equal 10, @in.lineno
352
356
  end
353
357
 
354
358
  def teardown
metadata CHANGED
@@ -1,77 +1,62 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: file-tail
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.9
5
4
  prerelease:
5
+ version: 1.0.10
6
6
  platform: ruby
7
7
  authors:
8
8
  - Florian Frank
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-31 00:00:00.000000000 Z
12
+ date: 2012-06-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: gem_hadar
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 0.1.8
22
- type: :development
23
15
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
16
+ requirement: &30508 !ruby/object:Gem::Requirement
25
17
  none: false
26
18
  requirements:
27
19
  - - ~>
28
20
  - !ruby/object:Gem::Version
29
21
  version: 0.1.8
22
+ version_requirements: *30508
23
+ name: gem_hadar
24
+ type: :development
30
25
  - !ruby/object:Gem::Dependency
31
- name: test-unit
32
- requirement: !ruby/object:Gem::Requirement
26
+ prerelease: false
27
+ requirement: &30568 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ~>
36
31
  - !ruby/object:Gem::Version
37
32
  version: 2.4.0
33
+ version_requirements: *30568
34
+ name: test-unit
38
35
  type: :development
36
+ - !ruby/object:Gem::Dependency
39
37
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
38
+ requirement: &30612 !ruby/object:Gem::Requirement
41
39
  none: false
42
40
  requirements:
43
41
  - - ~>
44
42
  - !ruby/object:Gem::Version
45
- version: 2.4.0
46
- - !ruby/object:Gem::Dependency
43
+ version: 0.4.3
44
+ version_requirements: *30612
47
45
  name: tins
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ~>
52
- - !ruby/object:Gem::Version
53
- version: '0.3'
54
46
  type: :runtime
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '0.3'
62
47
  description: Library to tail files in Ruby
63
48
  email: flori@ping.de
64
49
  executables: []
65
50
  extensions: []
66
51
  extra_rdoc_files:
67
52
  - README.rdoc
53
+ - lib/file-tail.rb
54
+ - lib/file/tail.rb
68
55
  - lib/file/tail/group.rb
69
56
  - lib/file/tail/line_extension.rb
70
57
  - lib/file/tail/logfile.rb
71
58
  - lib/file/tail/tailer.rb
72
59
  - lib/file/tail/version.rb
73
- - lib/file/tail.rb
74
- - lib/file-tail.rb
75
60
  files:
76
61
  - .gitignore
77
62
  - .travis.yml
@@ -110,10 +95,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
110
95
  requirements:
111
96
  - - ! '>='
112
97
  - !ruby/object:Gem::Version
113
- version: '0'
114
98
  segments:
115
99
  - 0
116
- hash: -1118280401649333258
100
+ hash: 2002549777813010636
101
+ version: '0'
117
102
  required_rubygems_version: !ruby/object:Gem::Requirement
118
103
  none: false
119
104
  requirements:
@@ -122,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
122
107
  version: '0'
123
108
  requirements: []
124
109
  rubyforge_project:
125
- rubygems_version: 1.8.24
110
+ rubygems_version: 1.8.12
126
111
  signing_key:
127
112
  specification_version: 3
128
113
  summary: File::Tail for Ruby