dgh 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/Rakefile +3 -0
- data/TODO.txt +8 -0
- data/dgh.gemspec +3 -1
- data/features/dgh.feature +6 -1
- data/features/step_definitions/dgh_steps.rb +13 -4
- data/features/support/policy.out +193 -0
- data/features/support/policy_no_candidates.out +169 -0
- data/lib/dgh.rb +19 -4
- data/lib/dgh/version.rb +1 -1
- data/tests.watchr +1 -0
- metadata +118 -94
data/Rakefile
CHANGED
data/TODO.txt
ADDED
data/dgh.gemspec
CHANGED
@@ -31,8 +31,10 @@ a PPA that has since been removed from the system.
|
|
31
31
|
s.require_paths = ["lib"]
|
32
32
|
|
33
33
|
s.add_runtime_dependency('treetop', [">= 0"])
|
34
|
+
s.add_runtime_dependency('slop', ["~> 1.9.1"])
|
35
|
+
s.add_runtime_dependency('log_buddy', ["~> 0.6.0"])
|
34
36
|
|
35
|
-
s.add_development_dependency('rake',
|
37
|
+
s.add_development_dependency('rake', ["~> 0.9.0"])
|
36
38
|
s.add_development_dependency('rspec', ["~> 2.6.0"])
|
37
39
|
s.add_development_dependency('yard', ["~> 0.6.0"])
|
38
40
|
s.add_development_dependency('cucumber', [">= 0"])
|
data/features/dgh.feature
CHANGED
@@ -4,6 +4,11 @@ Feature: report downgrade candidates
|
|
4
4
|
I want to get a list of packages I need to downgrade
|
5
5
|
|
6
6
|
Scenario: no downgradable packages
|
7
|
-
Given
|
7
|
+
Given there are no downgradable packages
|
8
8
|
When I run dgh
|
9
9
|
Then no packages should be reported as downgrade candidates
|
10
|
+
|
11
|
+
Scenario: some downgradable packages
|
12
|
+
Given there are some downgradable packages
|
13
|
+
When I run dgh
|
14
|
+
Then those packages should be reported as downgrade candidates
|
@@ -1,11 +1,20 @@
|
|
1
|
-
Given /^
|
2
|
-
|
1
|
+
Given /^there are no downgradable packages$/ do
|
2
|
+
@policyfile = File.join(File.dirname(__FILE__), '..', 'support', 'policy_no_candidates.out')
|
3
3
|
end
|
4
4
|
|
5
5
|
When /^I run dgh$/ do
|
6
|
-
@output = `#{File.join(File.dirname(__FILE__), '..', '..', 'bin', 'dgh')}`
|
6
|
+
@output = `#{File.join(File.dirname(__FILE__), '..', '..', 'bin', 'dgh')} #{@policyfile}`
|
7
7
|
end
|
8
8
|
|
9
9
|
Then /^no packages should be reported as downgrade candidates$/ do
|
10
|
-
@output.
|
10
|
+
@output.should == ""
|
11
11
|
end
|
12
|
+
|
13
|
+
Given /^there are some downgradable packages$/ do
|
14
|
+
@policyfile = File.join(File.dirname(__FILE__), '..', 'support', 'policy.out')
|
15
|
+
end
|
16
|
+
|
17
|
+
Then /^those packages should be reported as downgrade candidates$/ do
|
18
|
+
@output.should match /git-flow\nveracity\npicasa/
|
19
|
+
end
|
20
|
+
|
@@ -0,0 +1,193 @@
|
|
1
|
+
firefox:
|
2
|
+
Installed: 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1
|
3
|
+
Candidate: 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1
|
4
|
+
Version table:
|
5
|
+
*** 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1 0
|
6
|
+
500 http://ppa.launchpad.net/mozillateam/firefox-next/ubuntu/ natty/main amd64 Packages
|
7
|
+
100 /var/lib/dpkg/status
|
8
|
+
6.0.2+build2+nobinonly-0ubuntu0.11.04.1 0
|
9
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty-updates/main amd64 Packages
|
10
|
+
500 http://security.ubuntu.com/ubuntu/ natty-security/main amd64 Packages
|
11
|
+
4.0+nobinonly-0ubuntu3 0
|
12
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
13
|
+
dpkg:
|
14
|
+
Installed: 1.16.0~ubuntu7
|
15
|
+
Candidate: 1.16.0~ubuntu7
|
16
|
+
Version table:
|
17
|
+
*** 1.16.0~ubuntu7 0
|
18
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
19
|
+
100 /var/lib/dpkg/status
|
20
|
+
install-info:
|
21
|
+
Installed: 4.13a.dfsg.1-6ubuntu3
|
22
|
+
Candidate: 4.13a.dfsg.1-6ubuntu3
|
23
|
+
Version table:
|
24
|
+
*** 4.13a.dfsg.1-6ubuntu3 0
|
25
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
26
|
+
100 /var/lib/dpkg/status
|
27
|
+
libc6:
|
28
|
+
Installed: 2.13-0ubuntu13
|
29
|
+
Candidate: 2.13-0ubuntu13
|
30
|
+
Version table:
|
31
|
+
*** 2.13-0ubuntu13 0
|
32
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
33
|
+
100 /var/lib/dpkg/status
|
34
|
+
libacl1:
|
35
|
+
Installed: 2.2.49-4ubuntu2
|
36
|
+
Candidate: 2.2.49-4ubuntu2
|
37
|
+
Version table:
|
38
|
+
*** 2.2.49-4ubuntu2 0
|
39
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
40
|
+
100 /var/lib/dpkg/status
|
41
|
+
libattr1:
|
42
|
+
Installed: 1:2.4.44-2ubuntu3
|
43
|
+
Candidate: 1:2.4.44-2ubuntu3
|
44
|
+
Version table:
|
45
|
+
*** 1:2.4.44-2ubuntu3 0
|
46
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
47
|
+
100 /var/lib/dpkg/status
|
48
|
+
acpi-support:
|
49
|
+
Installed: 0.138
|
50
|
+
Candidate: 0.138
|
51
|
+
Version table:
|
52
|
+
*** 0.138 0
|
53
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
54
|
+
100 /var/lib/dpkg/status
|
55
|
+
x11-xserver-utils:
|
56
|
+
Installed: 7.6+2
|
57
|
+
Candidate: 7.6+2
|
58
|
+
Version table:
|
59
|
+
*** 7.6+2 0
|
60
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
61
|
+
100 /var/lib/dpkg/status
|
62
|
+
acpid:
|
63
|
+
Installed: 1:2.0.7-1ubuntu2
|
64
|
+
Candidate: 1:2.0.7-1ubuntu2
|
65
|
+
Version table:
|
66
|
+
*** 1:2.0.7-1ubuntu2 0
|
67
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
68
|
+
100 /var/lib/dpkg/status
|
69
|
+
hdparm:
|
70
|
+
Installed: 9.32-1ubuntu3
|
71
|
+
Candidate: 9.32-1ubuntu3
|
72
|
+
Version table:
|
73
|
+
*** 9.32-1ubuntu3 0
|
74
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
75
|
+
100 /var/lib/dpkg/status
|
76
|
+
lsb-base:
|
77
|
+
Installed: 4.0-0ubuntu11
|
78
|
+
Candidate: 4.0-0ubuntu11
|
79
|
+
Version table:
|
80
|
+
*** 4.0-0ubuntu11 0
|
81
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
82
|
+
100 /var/lib/dpkg/status
|
83
|
+
powermgmt-base:
|
84
|
+
Installed: 1.31
|
85
|
+
Candidate: 1.31
|
86
|
+
Version table:
|
87
|
+
*** 1.31 0
|
88
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
89
|
+
100 /var/lib/dpkg/status
|
90
|
+
laptop-detect:
|
91
|
+
Installed: 0.13.7ubuntu2
|
92
|
+
Candidate: 0.13.7ubuntu2
|
93
|
+
Version table:
|
94
|
+
*** 0.13.7ubuntu2 0
|
95
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
96
|
+
100 /var/lib/dpkg/status
|
97
|
+
dmidecode:
|
98
|
+
Installed: 2.9-1.2build1
|
99
|
+
Candidate: 2.9-1.2build1
|
100
|
+
Version table:
|
101
|
+
*** 2.9-1.2build1 0
|
102
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
103
|
+
100 /var/lib/dpkg/status
|
104
|
+
pm-utils:
|
105
|
+
Installed: 1.4.1-7
|
106
|
+
Candidate: 1.4.1-7
|
107
|
+
Version table:
|
108
|
+
*** 1.4.1-7 0
|
109
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
110
|
+
100 /var/lib/dpkg/status
|
111
|
+
toshset:
|
112
|
+
Installed: 1.75-2
|
113
|
+
Candidate: 1.75-2
|
114
|
+
Version table:
|
115
|
+
*** 1.75-2 0
|
116
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
117
|
+
100 /var/lib/dpkg/status
|
118
|
+
radeontool:
|
119
|
+
Installed: 1.6.1-1
|
120
|
+
Candidate: 1.6.1-1
|
121
|
+
Version table:
|
122
|
+
*** 1.6.1-1 0
|
123
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
124
|
+
100 /var/lib/dpkg/status
|
125
|
+
xinput:
|
126
|
+
Installed: 1.5.3-2ubuntu1
|
127
|
+
Candidate: 1.5.3-2ubuntu1
|
128
|
+
Version table:
|
129
|
+
*** 1.5.3-2ubuntu1 0
|
130
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
131
|
+
100 /var/lib/dpkg/status
|
132
|
+
wireless-tools:
|
133
|
+
Installed: 30~pre9-3ubuntu6
|
134
|
+
Candidate: 30~pre9-3ubuntu6
|
135
|
+
Version table:
|
136
|
+
*** 30~pre9-3ubuntu6 0
|
137
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
138
|
+
100 /var/lib/dpkg/status
|
139
|
+
module-init-tools:
|
140
|
+
Installed: 3.12-1ubuntu6
|
141
|
+
Candidate: 3.12-1ubuntu6
|
142
|
+
Version table:
|
143
|
+
*** 3.12-1ubuntu6 0
|
144
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
145
|
+
100 /var/lib/dpkg/status
|
146
|
+
adduser:
|
147
|
+
Installed: 3.112+nmu1ubuntu5
|
148
|
+
Candidate: 3.112+nmu1ubuntu5
|
149
|
+
Version table:
|
150
|
+
*** 3.112+nmu1ubuntu5 0
|
151
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
152
|
+
100 /var/lib/dpkg/status
|
153
|
+
perl-base:
|
154
|
+
Installed: 5.10.1-17ubuntu4.1
|
155
|
+
Candidate: 5.10.1-17ubuntu4.1
|
156
|
+
Version table:
|
157
|
+
*** 5.10.1-17ubuntu4.1 0
|
158
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty-updates/main amd64 Packages
|
159
|
+
500 http://security.ubuntu.com/ubuntu/ natty-security/main amd64 Packages
|
160
|
+
100 /var/lib/dpkg/status
|
161
|
+
5.10.1-17ubuntu4 0
|
162
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
163
|
+
passwd:
|
164
|
+
Installed: 1:4.1.4.2+svn3283-3ubuntu1
|
165
|
+
Candidate: 1:4.1.4.2+svn3283-3ubuntu1
|
166
|
+
Version table:
|
167
|
+
*** 1:4.1.4.2+svn3283-3ubuntu1 0
|
168
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
169
|
+
100 /var/lib/dpkg/status
|
170
|
+
git-flow:
|
171
|
+
Installed: 0.4.1-0ppa4~1.gbp9917bc
|
172
|
+
Candidate: 0.4.1-0ppa4~1.gbp9917bc
|
173
|
+
Version table:
|
174
|
+
*** 0.4.1-0ppa4~1.gbp9917bc 0
|
175
|
+
100 /var/lib/dpkg/status
|
176
|
+
0.4.1-0ppa3 0
|
177
|
+
500 http://ppa.launchpad.net/ilkka/myppa/ubuntu/ natty/main amd64 Packages
|
178
|
+
0.4.1-0ppa2 0
|
179
|
+
500 http://ppa.launchpad.net/ilkka/snapshot/ubuntu/ natty/main amd64 Packages
|
180
|
+
veracity:
|
181
|
+
Installed: 1.0.1nightly10535-natty1
|
182
|
+
Candidate: 1.0.1nightly10535-natty1
|
183
|
+
Version table:
|
184
|
+
*** 1.0.1nightly10535-natty1 0
|
185
|
+
100 /var/lib/dpkg/status
|
186
|
+
1.0.0nightly10517-natty1 0
|
187
|
+
500 http://debian.sourcegear.com/ubuntu/ natty/main amd64 Packages
|
188
|
+
picasa:
|
189
|
+
Installed: 3.0.5744-02
|
190
|
+
Candidate: 3.0.5744-02
|
191
|
+
Version table:
|
192
|
+
*** 3.0.5744-02 0
|
193
|
+
100 /var/lib/dpkg/status
|
@@ -0,0 +1,169 @@
|
|
1
|
+
firefox:
|
2
|
+
Installed: 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1
|
3
|
+
Candidate: 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1
|
4
|
+
Version table:
|
5
|
+
*** 7.0~b5+build1+nobinonly-0ubuntu0.11.04.1~mfn1 0
|
6
|
+
500 http://ppa.launchpad.net/mozillateam/firefox-next/ubuntu/ natty/main amd64 Packages
|
7
|
+
100 /var/lib/dpkg/status
|
8
|
+
6.0.2+build2+nobinonly-0ubuntu0.11.04.1 0
|
9
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty-updates/main amd64 Packages
|
10
|
+
500 http://security.ubuntu.com/ubuntu/ natty-security/main amd64 Packages
|
11
|
+
4.0+nobinonly-0ubuntu3 0
|
12
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
13
|
+
dpkg:
|
14
|
+
Installed: 1.16.0~ubuntu7
|
15
|
+
Candidate: 1.16.0~ubuntu7
|
16
|
+
Version table:
|
17
|
+
*** 1.16.0~ubuntu7 0
|
18
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
19
|
+
100 /var/lib/dpkg/status
|
20
|
+
install-info:
|
21
|
+
Installed: 4.13a.dfsg.1-6ubuntu3
|
22
|
+
Candidate: 4.13a.dfsg.1-6ubuntu3
|
23
|
+
Version table:
|
24
|
+
*** 4.13a.dfsg.1-6ubuntu3 0
|
25
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
26
|
+
100 /var/lib/dpkg/status
|
27
|
+
libc6:
|
28
|
+
Installed: 2.13-0ubuntu13
|
29
|
+
Candidate: 2.13-0ubuntu13
|
30
|
+
Version table:
|
31
|
+
*** 2.13-0ubuntu13 0
|
32
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
33
|
+
100 /var/lib/dpkg/status
|
34
|
+
libacl1:
|
35
|
+
Installed: 2.2.49-4ubuntu2
|
36
|
+
Candidate: 2.2.49-4ubuntu2
|
37
|
+
Version table:
|
38
|
+
*** 2.2.49-4ubuntu2 0
|
39
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
40
|
+
100 /var/lib/dpkg/status
|
41
|
+
libattr1:
|
42
|
+
Installed: 1:2.4.44-2ubuntu3
|
43
|
+
Candidate: 1:2.4.44-2ubuntu3
|
44
|
+
Version table:
|
45
|
+
*** 1:2.4.44-2ubuntu3 0
|
46
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
47
|
+
100 /var/lib/dpkg/status
|
48
|
+
acpi-support:
|
49
|
+
Installed: 0.138
|
50
|
+
Candidate: 0.138
|
51
|
+
Version table:
|
52
|
+
*** 0.138 0
|
53
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
54
|
+
100 /var/lib/dpkg/status
|
55
|
+
x11-xserver-utils:
|
56
|
+
Installed: 7.6+2
|
57
|
+
Candidate: 7.6+2
|
58
|
+
Version table:
|
59
|
+
*** 7.6+2 0
|
60
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
61
|
+
100 /var/lib/dpkg/status
|
62
|
+
acpid:
|
63
|
+
Installed: 1:2.0.7-1ubuntu2
|
64
|
+
Candidate: 1:2.0.7-1ubuntu2
|
65
|
+
Version table:
|
66
|
+
*** 1:2.0.7-1ubuntu2 0
|
67
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
68
|
+
100 /var/lib/dpkg/status
|
69
|
+
hdparm:
|
70
|
+
Installed: 9.32-1ubuntu3
|
71
|
+
Candidate: 9.32-1ubuntu3
|
72
|
+
Version table:
|
73
|
+
*** 9.32-1ubuntu3 0
|
74
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
75
|
+
100 /var/lib/dpkg/status
|
76
|
+
lsb-base:
|
77
|
+
Installed: 4.0-0ubuntu11
|
78
|
+
Candidate: 4.0-0ubuntu11
|
79
|
+
Version table:
|
80
|
+
*** 4.0-0ubuntu11 0
|
81
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
82
|
+
100 /var/lib/dpkg/status
|
83
|
+
powermgmt-base:
|
84
|
+
Installed: 1.31
|
85
|
+
Candidate: 1.31
|
86
|
+
Version table:
|
87
|
+
*** 1.31 0
|
88
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
89
|
+
100 /var/lib/dpkg/status
|
90
|
+
laptop-detect:
|
91
|
+
Installed: 0.13.7ubuntu2
|
92
|
+
Candidate: 0.13.7ubuntu2
|
93
|
+
Version table:
|
94
|
+
*** 0.13.7ubuntu2 0
|
95
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
96
|
+
100 /var/lib/dpkg/status
|
97
|
+
dmidecode:
|
98
|
+
Installed: 2.9-1.2build1
|
99
|
+
Candidate: 2.9-1.2build1
|
100
|
+
Version table:
|
101
|
+
*** 2.9-1.2build1 0
|
102
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
103
|
+
100 /var/lib/dpkg/status
|
104
|
+
pm-utils:
|
105
|
+
Installed: 1.4.1-7
|
106
|
+
Candidate: 1.4.1-7
|
107
|
+
Version table:
|
108
|
+
*** 1.4.1-7 0
|
109
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
110
|
+
100 /var/lib/dpkg/status
|
111
|
+
toshset:
|
112
|
+
Installed: 1.75-2
|
113
|
+
Candidate: 1.75-2
|
114
|
+
Version table:
|
115
|
+
*** 1.75-2 0
|
116
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
117
|
+
100 /var/lib/dpkg/status
|
118
|
+
radeontool:
|
119
|
+
Installed: 1.6.1-1
|
120
|
+
Candidate: 1.6.1-1
|
121
|
+
Version table:
|
122
|
+
*** 1.6.1-1 0
|
123
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
124
|
+
100 /var/lib/dpkg/status
|
125
|
+
xinput:
|
126
|
+
Installed: 1.5.3-2ubuntu1
|
127
|
+
Candidate: 1.5.3-2ubuntu1
|
128
|
+
Version table:
|
129
|
+
*** 1.5.3-2ubuntu1 0
|
130
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
131
|
+
100 /var/lib/dpkg/status
|
132
|
+
wireless-tools:
|
133
|
+
Installed: 30~pre9-3ubuntu6
|
134
|
+
Candidate: 30~pre9-3ubuntu6
|
135
|
+
Version table:
|
136
|
+
*** 30~pre9-3ubuntu6 0
|
137
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
138
|
+
100 /var/lib/dpkg/status
|
139
|
+
module-init-tools:
|
140
|
+
Installed: 3.12-1ubuntu6
|
141
|
+
Candidate: 3.12-1ubuntu6
|
142
|
+
Version table:
|
143
|
+
*** 3.12-1ubuntu6 0
|
144
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
145
|
+
100 /var/lib/dpkg/status
|
146
|
+
adduser:
|
147
|
+
Installed: 3.112+nmu1ubuntu5
|
148
|
+
Candidate: 3.112+nmu1ubuntu5
|
149
|
+
Version table:
|
150
|
+
*** 3.112+nmu1ubuntu5 0
|
151
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
152
|
+
100 /var/lib/dpkg/status
|
153
|
+
perl-base:
|
154
|
+
Installed: 5.10.1-17ubuntu4.1
|
155
|
+
Candidate: 5.10.1-17ubuntu4.1
|
156
|
+
Version table:
|
157
|
+
*** 5.10.1-17ubuntu4.1 0
|
158
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty-updates/main amd64 Packages
|
159
|
+
500 http://security.ubuntu.com/ubuntu/ natty-security/main amd64 Packages
|
160
|
+
100 /var/lib/dpkg/status
|
161
|
+
5.10.1-17ubuntu4 0
|
162
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
163
|
+
passwd:
|
164
|
+
Installed: 1:4.1.4.2+svn3283-3ubuntu1
|
165
|
+
Candidate: 1:4.1.4.2+svn3283-3ubuntu1
|
166
|
+
Version table:
|
167
|
+
*** 1:4.1.4.2+svn3283-3ubuntu1 0
|
168
|
+
500 http://fi.archive.ubuntu.com/ubuntu/ natty/main amd64 Packages
|
169
|
+
100 /var/lib/dpkg/status
|
data/lib/dgh.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
require 'treetop'
|
2
2
|
require 'policy'
|
3
|
+
require 'slop'
|
4
|
+
require 'logger'
|
5
|
+
require 'log_buddy'
|
3
6
|
|
4
7
|
module Dgh
|
5
8
|
extend self
|
@@ -26,17 +29,29 @@ module Dgh
|
|
26
29
|
|
27
30
|
class << self
|
28
31
|
def run
|
32
|
+
opts = Slop.parse do
|
33
|
+
banner "Usage: dgh [options] inputfile(s)"
|
34
|
+
on :d, :debug, 'Output debug messages'
|
35
|
+
on :h, :help, 'Output help message', :tail => true do
|
36
|
+
puts help
|
37
|
+
exit
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
log = Logger.new(STDOUT)
|
42
|
+
log.level = Logger::DEBUG
|
43
|
+
LogBuddy.init :default_loggger => log, :disabled => !opts[:debug]
|
44
|
+
|
29
45
|
if ARGV.empty? || ARGV.any? {|a| !File.exist? a}
|
30
|
-
puts
|
31
|
-
puts "Usage: dgh <apt-cache policy listing>"
|
46
|
+
puts opts.help
|
32
47
|
puts "You can generate a policy listing by running e.g."
|
33
48
|
puts "`dpkg --get-selections|egrep '\\binstall'|awk '{print $1}'|\\"
|
34
49
|
puts " xargs env LANG=C apt-cache policy`"
|
35
50
|
else
|
36
51
|
ARGV.each do |f|
|
37
|
-
|
52
|
+
d "Parsing #{f}"
|
38
53
|
find_downgradable(parse(File.open(f).read).content).each do |pkg|
|
39
|
-
puts
|
54
|
+
puts pkg[:name]
|
40
55
|
end
|
41
56
|
end
|
42
57
|
end
|
data/lib/dgh/version.rb
CHANGED
data/tests.watchr
CHANGED
@@ -34,6 +34,7 @@ end
|
|
34
34
|
watch('^spec/.+_spec\.rb$') { |md| spec md[0] }
|
35
35
|
watch('^lib/.+\.rb$') { |md| spec "spec/#{File.basename(md[0]).gsub(/\..*?$/, '')}_spec.rb" }
|
36
36
|
watch('^features/.+\.feature$') { |md| feature md[0] }
|
37
|
+
watch('^features/step_definitions/(.+)_steps\.rb$') { |md| feature "features/#{md[1]}.feature" }
|
37
38
|
watch('^lib/.+\.treetop$') { |md| treetop md[0]; run_suite }
|
38
39
|
|
39
40
|
# Notify using notify-send.
|
metadata
CHANGED
@@ -1,136 +1,161 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: dgh
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.3
|
4
5
|
prerelease:
|
5
|
-
version: 0.1.2
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Ilkka Laukkanen
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
dependencies:
|
16
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2011-09-18 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
17
15
|
name: treetop
|
16
|
+
requirement: &9588880 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
18
23
|
prerelease: false
|
19
|
-
|
24
|
+
version_requirements: *9588880
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: slop
|
27
|
+
requirement: &9588360 !ruby/object:Gem::Requirement
|
20
28
|
none: false
|
21
|
-
requirements:
|
22
|
-
- -
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version:
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.9.1
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *9588360
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: log_buddy
|
38
|
+
requirement: &9587880 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ~>
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 0.6.0
|
25
44
|
type: :runtime
|
26
|
-
version_requirements: *id001
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: rake
|
29
45
|
prerelease: false
|
30
|
-
|
46
|
+
version_requirements: *9587880
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rake
|
49
|
+
requirement: &9587400 !ruby/object:Gem::Requirement
|
31
50
|
none: false
|
32
|
-
requirements:
|
51
|
+
requirements:
|
33
52
|
- - ~>
|
34
|
-
- !ruby/object:Gem::Version
|
53
|
+
- !ruby/object:Gem::Version
|
35
54
|
version: 0.9.0
|
36
55
|
type: :development
|
37
|
-
version_requirements: *id002
|
38
|
-
- !ruby/object:Gem::Dependency
|
39
|
-
name: rspec
|
40
56
|
prerelease: false
|
41
|
-
|
57
|
+
version_requirements: *9587400
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: rspec
|
60
|
+
requirement: &9586920 !ruby/object:Gem::Requirement
|
42
61
|
none: false
|
43
|
-
requirements:
|
62
|
+
requirements:
|
44
63
|
- - ~>
|
45
|
-
- !ruby/object:Gem::Version
|
64
|
+
- !ruby/object:Gem::Version
|
46
65
|
version: 2.6.0
|
47
66
|
type: :development
|
48
|
-
version_requirements: *id003
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
name: yard
|
51
67
|
prerelease: false
|
52
|
-
|
68
|
+
version_requirements: *9586920
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: yard
|
71
|
+
requirement: &9586440 !ruby/object:Gem::Requirement
|
53
72
|
none: false
|
54
|
-
requirements:
|
73
|
+
requirements:
|
55
74
|
- - ~>
|
56
|
-
- !ruby/object:Gem::Version
|
75
|
+
- !ruby/object:Gem::Version
|
57
76
|
version: 0.6.0
|
58
77
|
type: :development
|
59
|
-
version_requirements: *id004
|
60
|
-
- !ruby/object:Gem::Dependency
|
61
|
-
name: cucumber
|
62
78
|
prerelease: false
|
63
|
-
|
79
|
+
version_requirements: *9586440
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: cucumber
|
82
|
+
requirement: &9585960 !ruby/object:Gem::Requirement
|
64
83
|
none: false
|
65
|
-
requirements:
|
66
|
-
- -
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version:
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
69
88
|
type: :development
|
70
|
-
version_requirements: *id005
|
71
|
-
- !ruby/object:Gem::Dependency
|
72
|
-
name: bundler
|
73
89
|
prerelease: false
|
74
|
-
|
90
|
+
version_requirements: *9585960
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: bundler
|
93
|
+
requirement: &9585480 !ruby/object:Gem::Requirement
|
75
94
|
none: false
|
76
|
-
requirements:
|
95
|
+
requirements:
|
77
96
|
- - ~>
|
78
|
-
- !ruby/object:Gem::Version
|
97
|
+
- !ruby/object:Gem::Version
|
79
98
|
version: 1.0.13
|
80
99
|
type: :development
|
81
|
-
version_requirements: *id006
|
82
|
-
- !ruby/object:Gem::Dependency
|
83
|
-
name: jeweler
|
84
100
|
prerelease: false
|
85
|
-
|
101
|
+
version_requirements: *9585480
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: jeweler
|
104
|
+
requirement: &9585000 !ruby/object:Gem::Requirement
|
86
105
|
none: false
|
87
|
-
requirements:
|
106
|
+
requirements:
|
88
107
|
- - ~>
|
89
|
-
- !ruby/object:Gem::Version
|
108
|
+
- !ruby/object:Gem::Version
|
90
109
|
version: 1.5.2
|
91
110
|
type: :development
|
92
|
-
version_requirements: *id007
|
93
|
-
- !ruby/object:Gem::Dependency
|
94
|
-
name: spork
|
95
111
|
prerelease: false
|
96
|
-
|
112
|
+
version_requirements: *9585000
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: spork
|
115
|
+
requirement: &9584520 !ruby/object:Gem::Requirement
|
97
116
|
none: false
|
98
|
-
requirements:
|
99
|
-
- -
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version:
|
117
|
+
requirements:
|
118
|
+
- - ! '>='
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
102
121
|
type: :development
|
103
|
-
version_requirements: *id008
|
104
|
-
- !ruby/object:Gem::Dependency
|
105
|
-
name: watchr
|
106
122
|
prerelease: false
|
107
|
-
|
123
|
+
version_requirements: *9584520
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: watchr
|
126
|
+
requirement: &9584040 !ruby/object:Gem::Requirement
|
108
127
|
none: false
|
109
|
-
requirements:
|
110
|
-
- -
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
version:
|
128
|
+
requirements:
|
129
|
+
- - ! '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
113
132
|
type: :development
|
114
|
-
|
115
|
-
|
116
|
-
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: *9584040
|
135
|
+
description: ! 'Dgh helps when you have to manually downgrade a large amount of packages.
|
136
|
+
|
117
137
|
It requires the user to generate a file with `apt-cache policy` output for all
|
138
|
+
|
118
139
|
installed packages, which it then reads. It looks for packages that have a
|
119
|
-
|
140
|
+
|
141
|
+
currently installed version that doesn''t exist in any repository, and prints
|
142
|
+
|
120
143
|
those. This includes both locally generated packages that never did exist in
|
144
|
+
|
121
145
|
any repository, and more crucially, packages that have been upgraded from e.g.
|
146
|
+
|
122
147
|
a PPA that has since been removed from the system.
|
123
148
|
|
124
|
-
|
149
|
+
'
|
150
|
+
email:
|
125
151
|
- ilkka.s.laukkanen@gmail.com
|
126
|
-
executables:
|
152
|
+
executables:
|
127
153
|
- dgh
|
128
154
|
extensions: []
|
129
|
-
|
130
|
-
extra_rdoc_files:
|
155
|
+
extra_rdoc_files:
|
131
156
|
- LICENSE.txt
|
132
157
|
- README.rdoc
|
133
|
-
files:
|
158
|
+
files:
|
134
159
|
- .document
|
135
160
|
- .gitignore
|
136
161
|
- .rspec
|
@@ -139,12 +164,15 @@ files:
|
|
139
164
|
- LICENSE.txt
|
140
165
|
- README.rdoc
|
141
166
|
- Rakefile
|
167
|
+
- TODO.txt
|
142
168
|
- bin/dgh
|
143
169
|
- cucumber.yml
|
144
170
|
- dgh.gemspec
|
145
171
|
- features/dgh.feature
|
146
172
|
- features/step_definitions/dgh_steps.rb
|
147
173
|
- features/support/env.rb
|
174
|
+
- features/support/policy.out
|
175
|
+
- features/support/policy_no_candidates.out
|
148
176
|
- lib/dgh.rb
|
149
177
|
- lib/dgh/version.rb
|
150
178
|
- lib/policy.rb
|
@@ -152,33 +180,29 @@ files:
|
|
152
180
|
- spec/dgh_spec.rb
|
153
181
|
- spec/spec_helper.rb
|
154
182
|
- tests.watchr
|
155
|
-
has_rdoc: true
|
156
183
|
homepage: http://github.com/ilkka/dgh
|
157
|
-
licenses:
|
184
|
+
licenses:
|
158
185
|
- GPLv3
|
159
186
|
post_install_message:
|
160
187
|
rdoc_options: []
|
161
|
-
|
162
|
-
require_paths:
|
188
|
+
require_paths:
|
163
189
|
- lib
|
164
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
190
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
165
191
|
none: false
|
166
|
-
requirements:
|
167
|
-
- -
|
168
|
-
- !ruby/object:Gem::Version
|
169
|
-
version:
|
170
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
192
|
+
requirements:
|
193
|
+
- - ! '>='
|
194
|
+
- !ruby/object:Gem::Version
|
195
|
+
version: '0'
|
196
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
171
197
|
none: false
|
172
|
-
requirements:
|
173
|
-
- -
|
174
|
-
- !ruby/object:Gem::Version
|
175
|
-
version:
|
198
|
+
requirements:
|
199
|
+
- - ! '>='
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '0'
|
176
202
|
requirements: []
|
177
|
-
|
178
203
|
rubyforge_project:
|
179
|
-
rubygems_version: 1.
|
204
|
+
rubygems_version: 1.8.6
|
180
205
|
signing_key:
|
181
206
|
specification_version: 3
|
182
207
|
summary: The Debian/Ubuntu Downgrade Helper
|
183
208
|
test_files: []
|
184
|
-
|