gitrb 0.1.2 → 0.1.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.
- data/gitrb.gemspec +1 -1
- data/lib/gitrb/repository.rb +5 -5
- data/lib/gitrb/tree.rb +1 -1
- metadata +4 -9
data/gitrb.gemspec
CHANGED
data/lib/gitrb/repository.rb
CHANGED
@@ -19,7 +19,6 @@ module Gitrb
|
|
19
19
|
REVISION_PATTERN = /^[\w\-\.]+([\^~](\d+)?)*$/
|
20
20
|
DEFAULT_ENCODING = 'utf-8'
|
21
21
|
MIN_GIT_VERSION = '1.6.0'
|
22
|
-
LOCK = 'Gitrb.Repository.lock'
|
23
22
|
|
24
23
|
if RUBY_VERSION > '1.9'
|
25
24
|
def set_encoding(s); s.force_encoding(@encoding); end
|
@@ -33,6 +32,7 @@ module Gitrb
|
|
33
32
|
@branch = options[:branch] || 'master'
|
34
33
|
@logger = options[:logger] || Logger.new(nil)
|
35
34
|
@encoding = options[:encoding] || DEFAULT_ENCODING
|
35
|
+
@lock = {}
|
36
36
|
|
37
37
|
@path = options[:path]
|
38
38
|
@path.chomp!('/')
|
@@ -68,7 +68,7 @@ module Gitrb
|
|
68
68
|
|
69
69
|
# Is there any transaction going on?
|
70
70
|
def in_transaction?
|
71
|
-
Thread.current
|
71
|
+
@lock[Thread.current.object_id]
|
72
72
|
end
|
73
73
|
|
74
74
|
# Diff
|
@@ -329,7 +329,7 @@ module Gitrb
|
|
329
329
|
def start_transaction
|
330
330
|
file = File.open("#{head_path}.lock", 'w')
|
331
331
|
file.flock(File::LOCK_EX)
|
332
|
-
Thread.current
|
332
|
+
@lock[Thread.current.object_id] = file
|
333
333
|
refresh
|
334
334
|
end
|
335
335
|
|
@@ -346,8 +346,8 @@ module Gitrb
|
|
346
346
|
#
|
347
347
|
# Release the lock file.
|
348
348
|
def finish_transaction
|
349
|
-
Thread.current
|
350
|
-
Thread.current
|
349
|
+
@lock[Thread.current.object_id].close rescue nil
|
350
|
+
@lock.delete(Thread.current.object_id)
|
351
351
|
File.unlink("#{head_path}.lock") rescue nil
|
352
352
|
end
|
353
353
|
|
data/lib/gitrb/tree.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gitrb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash: 31
|
5
4
|
prerelease: false
|
6
5
|
segments:
|
7
6
|
- 0
|
8
7
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
8
|
+
- 3
|
9
|
+
version: 0.1.3
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
12
|
- Daniel Mendler
|
@@ -15,7 +14,7 @@ autorequire:
|
|
15
14
|
bindir: bin
|
16
15
|
cert_chain: []
|
17
16
|
|
18
|
-
date: 2010-
|
17
|
+
date: 2010-08-11 00:00:00 +02:00
|
19
18
|
default_executable:
|
20
19
|
dependencies: []
|
21
20
|
|
@@ -63,27 +62,23 @@ rdoc_options: []
|
|
63
62
|
require_paths:
|
64
63
|
- lib
|
65
64
|
required_ruby_version: !ruby/object:Gem::Requirement
|
66
|
-
none: false
|
67
65
|
requirements:
|
68
66
|
- - ">="
|
69
67
|
- !ruby/object:Gem::Version
|
70
|
-
hash: 3
|
71
68
|
segments:
|
72
69
|
- 0
|
73
70
|
version: "0"
|
74
71
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
75
|
-
none: false
|
76
72
|
requirements:
|
77
73
|
- - ">="
|
78
74
|
- !ruby/object:Gem::Version
|
79
|
-
hash: 3
|
80
75
|
segments:
|
81
76
|
- 0
|
82
77
|
version: "0"
|
83
78
|
requirements: []
|
84
79
|
|
85
80
|
rubyforge_project: gitrb
|
86
|
-
rubygems_version: 1.3.
|
81
|
+
rubygems_version: 1.3.6
|
87
82
|
signing_key:
|
88
83
|
specification_version: 3
|
89
84
|
summary: Pure ruby git implementation
|