hglib 0.9.0 → 0.10.0
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/History.md +7 -0
- data/lib/hglib/repo/status_entry.rb +49 -0
- data/lib/hglib/repo.rb +7 -0
- data/lib/hglib.rb +1 -1
- data/spec/hglib/repo/status_entry_spec.rb +48 -0
- data.tar.gz.sig +0 -0
- metadata +4 -4
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bed2aab2e2a8f472ce66fddf9dddcd469ae1b8a5db7ff213f3ec1223025b11ae
|
4
|
+
data.tar.gz: 5faec9749f727cb31aea87ef13f293a2da281353e8e0c23e09d6aa7299baf28c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 360868b5befb696d2f4fdeaaf610ac64b1a83fa148c7e7b4176db619762e8c6841736721893862d03c904114b151749ef5e0fdef242cf41d48adceb7aa19e38d
|
7
|
+
data.tar.gz: 844af0536bba415de4019744d72c19e20061fadfcbb9060b0ebbe464945830f1f40660b73454247117c739c2d249135641f1cd53ecb41a6c7d30d07e2fc31414
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/History.md
CHANGED
@@ -62,6 +62,55 @@ class Hglib::Repo::StatusEntry
|
|
62
62
|
end
|
63
63
|
|
64
64
|
|
65
|
+
### Returns +true+ if the status is 'modified'.
|
66
|
+
def modified?
|
67
|
+
return self.status == 'M'
|
68
|
+
end
|
69
|
+
|
70
|
+
|
71
|
+
### Returns +true+ if the status is 'added'.
|
72
|
+
def added?
|
73
|
+
return self.status == 'A'
|
74
|
+
end
|
75
|
+
|
76
|
+
|
77
|
+
### Returns +true+ if the status is 'removed'.
|
78
|
+
def removed?
|
79
|
+
return self.status == 'R'
|
80
|
+
end
|
81
|
+
|
82
|
+
|
83
|
+
### Returns +true+ if the status is 'clean'.
|
84
|
+
def clean?
|
85
|
+
return self.status == 'C'
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
### Returns +true+ if the status is 'missing'.
|
90
|
+
def missing?
|
91
|
+
return self.status == '!'
|
92
|
+
end
|
93
|
+
|
94
|
+
|
95
|
+
### Returns +true+ if the status is 'not tracked'.
|
96
|
+
def not_tracked?
|
97
|
+
return self.status == '?'
|
98
|
+
end
|
99
|
+
alias_method :untracked?, :not_tracked?
|
100
|
+
|
101
|
+
|
102
|
+
### Returns +true+ if the status is anything other than 'not tracked'.
|
103
|
+
def tracked?
|
104
|
+
return !self.not_tracked?
|
105
|
+
end
|
106
|
+
|
107
|
+
|
108
|
+
### Returns +true+ if the status is 'ignored'.
|
109
|
+
def ignored?
|
110
|
+
return self.status == 'I'
|
111
|
+
end
|
112
|
+
|
113
|
+
|
65
114
|
### Return a human-readable representation of the StatusEntry as a String.
|
66
115
|
def inspect
|
67
116
|
return "#<%p:#%x %s: %s%s>" % [
|
data/lib/hglib/repo.rb
CHANGED
@@ -300,6 +300,13 @@ class Hglib::Repo
|
|
300
300
|
end
|
301
301
|
|
302
302
|
|
303
|
+
### Returns +true+ if the given +filename+ is a file tracked by Mercurial.
|
304
|
+
def tracked?( filename )
|
305
|
+
status = self.status( filename )
|
306
|
+
return status&.tracked?
|
307
|
+
end
|
308
|
+
|
309
|
+
|
303
310
|
### Returns +true+ if all of the changesets in the specified +revset+ (or the
|
304
311
|
### current changeset if no +revset+ is given) are in the public phase.
|
305
312
|
def public?( revset=nil )
|
data/lib/hglib.rb
CHANGED
@@ -38,5 +38,53 @@ RSpec.describe Hglib::Repo::StatusEntry do
|
|
38
38
|
expect( entry.status_description ).to eq( 'added' )
|
39
39
|
end
|
40
40
|
|
41
|
+
|
42
|
+
it "knows if its file has been modified" do
|
43
|
+
entry = described_class.new( RAW_STATUS_ENTRY )
|
44
|
+
expect( entry ).to be_modified
|
45
|
+
end
|
46
|
+
|
47
|
+
# when 'A' then 'added'
|
48
|
+
# when 'R' then 'removed'
|
49
|
+
# when 'C' then 'clean'
|
50
|
+
# when '!' then 'missing'
|
51
|
+
# when '?' then 'not tracked'
|
52
|
+
# when 'I' then 'ignored'
|
53
|
+
|
54
|
+
it "knows if its file has been scheduled for removal" do
|
55
|
+
entry = described_class.new( RAW_STATUS_ENTRY.merge(status: 'R') )
|
56
|
+
expect( entry ).to be_removed
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
it "knows if its file is clean" do
|
61
|
+
entry = described_class.new( RAW_STATUS_ENTRY.merge(status: 'C') )
|
62
|
+
expect( entry ).to be_clean
|
63
|
+
end
|
64
|
+
|
65
|
+
|
66
|
+
it "knows if its file is missing" do
|
67
|
+
entry = described_class.new( RAW_STATUS_ENTRY.merge(status: '!') )
|
68
|
+
expect( entry ).to be_missing
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
it "knows if its file is untracked" do
|
73
|
+
entry = described_class.new( RAW_STATUS_ENTRY.merge(status: '?') )
|
74
|
+
expect( entry ).to be_untracked
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
it "knows if its file is tracked" do
|
79
|
+
entry = described_class.new( RAW_STATUS_ENTRY )
|
80
|
+
expect( entry ).to be_tracked
|
81
|
+
end
|
82
|
+
|
83
|
+
|
84
|
+
it "knows if its file is ignored" do
|
85
|
+
entry = described_class.new( RAW_STATUS_ENTRY.merge(status: 'I') )
|
86
|
+
expect( entry ).to be_ignored
|
87
|
+
end
|
88
|
+
|
41
89
|
end
|
42
90
|
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hglib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Granger
|
@@ -34,7 +34,7 @@ cert_chain:
|
|
34
34
|
jBZSA+N+xUTgUWpXjjwsLZjzJkhWATJWq+krNXcqpwXo6HsjmdUxoFMt63RBb+sI
|
35
35
|
XrxOxp8o0uOkU7FdLSGsyqJ2LzsR4obN
|
36
36
|
-----END CERTIFICATE-----
|
37
|
-
date: 2020-
|
37
|
+
date: 2020-04-02 00:00:00.000000000 Z
|
38
38
|
dependencies:
|
39
39
|
- !ruby/object:Gem::Dependency
|
40
40
|
name: loggability
|
@@ -107,7 +107,7 @@ dependencies:
|
|
107
107
|
- !ruby/object:Gem::Version
|
108
108
|
version: '0.4'
|
109
109
|
description: This is a client library for the Mercurial distributed revision control
|
110
|
-
tool that uses the Command Server
|
110
|
+
tool that uses the Command Server for efficiency.
|
111
111
|
email:
|
112
112
|
- ged@FaerieMUD.org
|
113
113
|
executables: []
|
@@ -171,5 +171,5 @@ rubygems_version: 3.1.2
|
|
171
171
|
signing_key:
|
172
172
|
specification_version: 4
|
173
173
|
summary: This is a client library for the Mercurial distributed revision control tool
|
174
|
-
that uses the Command Server
|
174
|
+
that uses the Command Server for efficiency.
|
175
175
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|