backlog 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +14 -0
- data/app/controllers/backlogs_controller.rb +4 -10
- data/app/controllers/tasks_controller.rb +15 -6
- data/app/views/backlogs/_tasks.rhtml +3 -1
- data/app/views/backlogs/edit.rhtml +0 -5
- data/app/views/backlogs/list.rhtml +1 -1
- data/app/views/backlogs/show.rhtml +3 -88
- data/app/views/periods/_title.rhtml +1 -1
- data/app/views/tasks/_backlog_header.rhtml +3 -2
- data/app/views/tasks/_form.rhtml +5 -0
- data/app/views/tasks/_period_header.rhtml +1 -1
- data/app/views/tasks/new.rhtml +1 -1
- data/cruise_config.rb +1 -1
- data/doc/classes/BacklogsController.src/M000043.html +4 -6
- data/doc/classes/BacklogsController.src/M000044.html +1 -1
- data/doc/classes/BacklogsController.src/M000045.html +1 -1
- data/doc/classes/BacklogsController.src/M000046.html +1 -5
- data/doc/classes/BacklogsController.src/M000047.html +1 -1
- data/doc/classes/BacklogsController.src/M000048.html +1 -1
- data/doc/classes/BacklogsController.src/M000049.html +1 -1
- data/doc/classes/BacklogsController.src/M000050.html +1 -1
- data/doc/classes/BacklogsController.src/M000051.html +1 -1
- data/doc/classes/BacklogsController.src/M000054.html +4 -6
- data/doc/classes/BacklogsController.src/M000055.html +1 -1
- data/doc/classes/BacklogsController.src/M000056.html +1 -1
- data/doc/classes/BacklogsController.src/M000057.html +1 -5
- data/doc/classes/BacklogsController.src/M000058.html +1 -1
- data/doc/classes/BacklogsController.src/M000059.html +1 -1
- data/doc/classes/BacklogsController.src/M000060.html +1 -1
- data/doc/classes/BacklogsController.src/M000061.html +1 -1
- data/doc/classes/BacklogsController.src/M000062.html +1 -1
- data/doc/classes/TasksController.src/M000105.html +6 -0
- data/doc/classes/TasksController.src/M000106.html +1 -1
- data/doc/classes/TasksController.src/M000107.html +10 -7
- data/doc/classes/TasksController.src/M000108.html +1 -1
- data/doc/classes/TasksController.src/M000109.html +1 -1
- data/doc/classes/TasksController.src/M000110.html +1 -1
- data/doc/classes/TasksController.src/M000111.html +1 -1
- data/doc/classes/TasksController.src/M000112.html +1 -1
- data/doc/classes/TasksController.src/M000113.html +1 -1
- data/doc/classes/TasksController.src/M000114.html +1 -1
- data/doc/classes/TasksController.src/M000115.html +1 -1
- data/doc/classes/TasksController.src/M000116.html +1 -1
- data/doc/classes/TasksController.src/M000117.html +1 -1
- data/doc/classes/TasksController.src/M000118.html +1 -1
- data/doc/classes/TasksController.src/M000119.html +1 -1
- data/doc/classes/TasksController.src/M000120.html +1 -1
- data/doc/classes/TasksController.src/M000121.html +1 -1
- data/doc/classes/TasksController.src/M000122.html +1 -1
- data/doc/classes/TasksController.src/M000125.html +6 -0
- data/doc/classes/TasksController.src/M000126.html +1 -1
- data/doc/classes/TasksController.src/M000127.html +10 -7
- data/doc/classes/TasksController.src/M000128.html +1 -1
- data/doc/classes/TasksController.src/M000129.html +1 -1
- data/doc/classes/TasksController.src/M000130.html +1 -1
- data/doc/classes/TasksController.src/M000131.html +1 -1
- data/doc/classes/TasksController.src/M000132.html +1 -1
- data/doc/classes/TasksController.src/M000133.html +1 -1
- data/doc/classes/TasksController.src/M000134.html +1 -1
- data/doc/classes/TasksController.src/M000135.html +1 -1
- data/doc/classes/TasksController.src/M000136.html +1 -1
- data/doc/classes/TasksController.src/M000137.html +1 -1
- data/doc/classes/TasksController.src/M000138.html +1 -1
- data/doc/classes/TasksController.src/M000139.html +1 -1
- data/doc/classes/TasksController.src/M000140.html +1 -1
- data/doc/classes/TasksController.src/M000141.html +1 -1
- data/doc/classes/TasksController.src/M000142.html +1 -1
- data/doc/created.rid +1 -1
- data/doc/dot/f_0.png +0 -0
- data/doc/dot/f_1.png +0 -0
- data/doc/dot/f_2.png +0 -0
- data/doc/dot/f_24.png +0 -0
- data/doc/dot/f_25.png +0 -0
- data/doc/dot/f_26.png +0 -0
- data/doc/dot/f_27.png +0 -0
- data/doc/dot/f_28.png +0 -0
- data/doc/dot/f_29.png +0 -0
- data/doc/dot/f_3.png +0 -0
- data/doc/dot/f_30.png +0 -0
- data/doc/dot/f_31.png +0 -0
- data/doc/dot/f_32.png +0 -0
- data/doc/dot/f_33.png +0 -0
- data/doc/dot/f_34.png +0 -0
- data/doc/dot/f_4.png +0 -0
- data/doc/dot/f_46.png +0 -0
- data/doc/dot/f_47.png +0 -0
- data/doc/dot/f_48.png +0 -0
- data/doc/dot/f_49.png +0 -0
- data/doc/dot/f_5.png +0 -0
- data/doc/dot/f_50.png +0 -0
- data/doc/dot/f_51.png +0 -0
- data/doc/dot/f_52.png +0 -0
- data/doc/dot/f_53.png +0 -0
- data/doc/dot/f_54.png +0 -0
- data/doc/dot/f_55.png +0 -0
- data/doc/dot/f_56.png +0 -0
- data/doc/dot/f_6.png +0 -0
- data/doc/dot/f_68.png +0 -0
- data/doc/dot/f_69.png +0 -0
- data/doc/dot/f_7.png +0 -0
- data/doc/dot/f_70.png +0 -0
- data/doc/dot/f_71.png +0 -0
- data/doc/dot/f_72.png +0 -0
- data/doc/dot/f_73.png +0 -0
- data/doc/dot/f_74.png +0 -0
- data/doc/dot/f_75.png +0 -0
- data/doc/dot/f_76.png +0 -0
- data/doc/dot/f_77.png +0 -0
- data/doc/dot/f_78.png +0 -0
- data/doc/dot/f_79.png +0 -0
- data/doc/dot/m_50_0.png +0 -0
- data/doc/files/History_txt.html +41 -2
- data/doc/files/app/controllers/backlogs_controller_rb.html +1 -1
- data/doc/files/app/controllers/tasks_controller_rb.html +1 -1
- data/doc/index.html +2 -2
- data/lang/en.yaml +1 -0
- data/lang/no.yaml +1 -0
- data/test/fixtures/tasks.yml +13 -1
- data/test/functional/backlogs_controller_test.rb +5 -2
- data/test/functional/tasks_controller_test.rb +14 -0
- metadata +2 -5
- data/post-clean.rb +0 -12
- data/post-install.rb +0 -51
- data/post-setup.rb +0 -254
@@ -10,7 +10,7 @@
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line 212</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reopen</span>
|
15
15
|
<span class="ruby-identifier">task</span> = <span class="ruby-constant">Task</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
|
16
16
|
<span class="ruby-identifier">task</span>.<span class="ruby-identifier">reopen</span>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line 218</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start_work</span>
|
15
15
|
<span class="ruby-identifier">task</span> = <span class="ruby-constant">Task</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
|
16
16
|
<span class="ruby-identifier">task</span>.<span class="ruby-identifier">start_work</span>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line 224</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">end_work</span>
|
15
15
|
<span class="ruby-ivar">@task</span> = <span class="ruby-constant">Task</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
|
16
16
|
<span class="ruby-identifier">next_quarter</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">next_quarter</span>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line 252</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">specify</span>
|
15
15
|
<span class="ruby-identifier">parent_task</span> = <span class="ruby-constant">Task</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
|
16
16
|
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"Task is not open"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">parent_task</span>.<span class="ruby-identifier">active?</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">parent_task</span>.<span class="ruby-identifier">period</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">parent_task</span>.<span class="ruby-identifier">period</span>.<span class="ruby-identifier">active_or_future?</span>)
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
11
11
|
</head>
|
12
12
|
<body class="standalone-code">
|
13
|
-
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line
|
13
|
+
<pre><span class="ruby-comment cmt"># File app/controllers/tasks_controller.rb, line 281</span>
|
14
14
|
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_task_description</span>
|
15
15
|
<span class="ruby-identifier">task</span> = <span class="ruby-constant">Task</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:id</span>])
|
16
16
|
<span class="ruby-identifier">task</span>.<span class="ruby-identifier">description</span> = <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:value</span>]
|
data/doc/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Wed, 05 Sep 2007 00:00:43 +0200
|
data/doc/dot/f_0.png
CHANGED
Binary file
|
data/doc/dot/f_1.png
CHANGED
Binary file
|
data/doc/dot/f_2.png
CHANGED
Binary file
|
data/doc/dot/f_24.png
CHANGED
Binary file
|
data/doc/dot/f_25.png
CHANGED
Binary file
|
data/doc/dot/f_26.png
CHANGED
Binary file
|
data/doc/dot/f_27.png
CHANGED
Binary file
|
data/doc/dot/f_28.png
CHANGED
Binary file
|
data/doc/dot/f_29.png
CHANGED
Binary file
|
data/doc/dot/f_3.png
CHANGED
Binary file
|
data/doc/dot/f_30.png
CHANGED
Binary file
|
data/doc/dot/f_31.png
CHANGED
Binary file
|
data/doc/dot/f_32.png
CHANGED
Binary file
|
data/doc/dot/f_33.png
CHANGED
Binary file
|
data/doc/dot/f_34.png
CHANGED
Binary file
|
data/doc/dot/f_4.png
CHANGED
Binary file
|
data/doc/dot/f_46.png
CHANGED
Binary file
|
data/doc/dot/f_47.png
CHANGED
Binary file
|
data/doc/dot/f_48.png
CHANGED
Binary file
|
data/doc/dot/f_49.png
CHANGED
Binary file
|
data/doc/dot/f_5.png
CHANGED
Binary file
|
data/doc/dot/f_50.png
CHANGED
Binary file
|
data/doc/dot/f_51.png
CHANGED
Binary file
|
data/doc/dot/f_52.png
CHANGED
Binary file
|
data/doc/dot/f_53.png
CHANGED
Binary file
|
data/doc/dot/f_54.png
CHANGED
Binary file
|
data/doc/dot/f_55.png
CHANGED
Binary file
|
data/doc/dot/f_56.png
CHANGED
Binary file
|
data/doc/dot/f_6.png
CHANGED
Binary file
|
data/doc/dot/f_68.png
CHANGED
Binary file
|
data/doc/dot/f_69.png
CHANGED
Binary file
|
data/doc/dot/f_7.png
CHANGED
Binary file
|
data/doc/dot/f_70.png
CHANGED
Binary file
|
data/doc/dot/f_71.png
CHANGED
Binary file
|
data/doc/dot/f_72.png
CHANGED
Binary file
|
data/doc/dot/f_73.png
CHANGED
Binary file
|
data/doc/dot/f_74.png
CHANGED
Binary file
|
data/doc/dot/f_75.png
CHANGED
Binary file
|
data/doc/dot/f_76.png
CHANGED
Binary file
|
data/doc/dot/f_77.png
CHANGED
Binary file
|
data/doc/dot/f_78.png
CHANGED
Binary file
|
data/doc/dot/f_79.png
CHANGED
Binary file
|
data/doc/dot/m_50_0.png
CHANGED
Binary file
|
data/doc/files/History_txt.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Tue Sep 04 22:56:19 +0200 2007</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -74,7 +74,46 @@
|
|
74
74
|
</div>
|
75
75
|
|
76
76
|
<div id="description">
|
77
|
-
<h2>0.8.
|
77
|
+
<h2>0.8.1 2007-09-04</h2>
|
78
|
+
<ul>
|
79
|
+
<li>Localized "Notes" string.
|
80
|
+
|
81
|
+
</li>
|
82
|
+
<li>Split <a href="../classes/Backlog.html">Backlog</a> Edit View into Edit for
|
83
|
+
options and Show for tasks for less clutter. Tasks are probably viewed way
|
84
|
+
more often than options.
|
85
|
+
|
86
|
+
</li>
|
87
|
+
<li>Added file upload to create task view.
|
88
|
+
|
89
|
+
</li>
|
90
|
+
<li>Changed to allow editing of tasks not in any sprint.
|
91
|
+
|
92
|
+
</li>
|
93
|
+
<li>Fixed bug where estimates were not updated in the <a
|
94
|
+
href="../classes/Task.html">Task</a> update view.
|
95
|
+
|
96
|
+
</li>
|
97
|
+
<li>Fixed bug when finishing a task by setting estimate to 0 in the task edit
|
98
|
+
view.
|
99
|
+
|
100
|
+
</li>
|
101
|
+
<li>Added links to edit and show a backlog in the backlog and sprint views.
|
102
|
+
|
103
|
+
</li>
|
104
|
+
<li>Changed link in the <a href="../classes/Backlog.html">Backlog</a> List view
|
105
|
+
to go to the backlog Show view instead of the backlog edit view.
|
106
|
+
|
107
|
+
</li>
|
108
|
+
<li>Improved work flow when adding a task from the show sprint view.
|
109
|
+
|
110
|
+
</li>
|
111
|
+
<li>Removed faulty link from <a href="../classes/Backlog.html">Backlog</a> view
|
112
|
+
for Unplanned tasks.
|
113
|
+
|
114
|
+
</li>
|
115
|
+
</ul>
|
116
|
+
<h2>0.8.0 2007-09-03</h2>
|
78
117
|
<ul>
|
79
118
|
<li>FEATURE: Added notes and files to tasks.
|
80
119
|
|
data/doc/index.html
CHANGED
@@ -5,12 +5,12 @@
|
|
5
5
|
|
6
6
|
<!--
|
7
7
|
|
8
|
-
backlog's backlog-0.8.
|
8
|
+
backlog's backlog-0.8.1 Documentation
|
9
9
|
|
10
10
|
-->
|
11
11
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
12
12
|
<head>
|
13
|
-
<title> backlog's backlog-0.8.
|
13
|
+
<title> backlog's backlog-0.8.1 Documentation</title>
|
14
14
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
15
15
|
</head>
|
16
16
|
<frameset rows="20%, 80%">
|
data/lang/en.yaml
CHANGED
data/lang/no.yaml
CHANGED
data/test/fixtures/tasks.yml
CHANGED
@@ -42,4 +42,16 @@ not_planned:
|
|
42
42
|
backlog_id: 1
|
43
43
|
description: unplanned task
|
44
44
|
position: 1
|
45
|
-
|
45
|
+
supertask:
|
46
|
+
id: 7
|
47
|
+
created_at: 2007-06-12
|
48
|
+
backlog_id: 1
|
49
|
+
period_id: 2
|
50
|
+
description: super task
|
51
|
+
position: 3
|
52
|
+
subtask:
|
53
|
+
id: 8
|
54
|
+
created_at: 2007-06-12
|
55
|
+
parent_id: 7
|
56
|
+
description: sub task
|
57
|
+
position: 1
|
@@ -42,8 +42,11 @@ class BacklogsControllerTest < Test::Unit::TestCase
|
|
42
42
|
def test_show
|
43
43
|
get :show, :id => 1
|
44
44
|
|
45
|
-
assert_response :
|
46
|
-
|
45
|
+
assert_response :success
|
46
|
+
assert_template 'show'
|
47
|
+
|
48
|
+
assert_not_nil assigns(:backlog)
|
49
|
+
assert assigns(:backlog).valid?
|
47
50
|
end
|
48
51
|
|
49
52
|
def test_new
|
@@ -90,6 +90,20 @@ class TasksControllerTest < Test::Unit::TestCase
|
|
90
90
|
assert assigns(:task).valid?
|
91
91
|
end
|
92
92
|
|
93
|
+
def test_set_task_description
|
94
|
+
post :set_task_description, "id"=>"2", :value => 'New value'
|
95
|
+
|
96
|
+
after = Task.find(2)
|
97
|
+
assert_equal 'New value', after.description
|
98
|
+
end
|
99
|
+
|
100
|
+
def test_set_task_description_on_subtask
|
101
|
+
post :set_task_description, "id"=>"8", :value => 'New value'
|
102
|
+
|
103
|
+
after = Task.find(8)
|
104
|
+
assert_equal 'New value', after.description
|
105
|
+
end
|
106
|
+
|
93
107
|
def test_specify
|
94
108
|
post :specify, "id"=>"2"
|
95
109
|
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
|
|
3
3
|
specification_version: 1
|
4
4
|
name: backlog
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.8.
|
7
|
-
date: 2007-09-
|
6
|
+
version: 0.8.1
|
7
|
+
date: 2007-09-05 00:00:00 +02:00
|
8
8
|
summary: Application to aid collecting, processing, organizing, reviewing and doing tasks.
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -136,7 +136,6 @@ files:
|
|
136
136
|
- db/migrate/005_add_field_work_started_at.rb
|
137
137
|
- db/migrate/006_works_data_fix.rb
|
138
138
|
- db/schema.rb
|
139
|
-
- post-clean.rb
|
140
139
|
- test
|
141
140
|
- test/integration
|
142
141
|
- test/integration/user_system_test.rb
|
@@ -2485,8 +2484,6 @@ files:
|
|
2485
2484
|
- app/views/periods/_title.rhtml
|
2486
2485
|
- app/views/periods/_link.rhtml
|
2487
2486
|
- app/views/periods/_burn_down_chart.rhtml
|
2488
|
-
- post-setup.rb
|
2489
|
-
- post-install.rb
|
2490
2487
|
test_files:
|
2491
2488
|
- test/test_helper.rb
|
2492
2489
|
rdoc_options:
|
data/post-clean.rb
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
# delete RMagick documentation created by post-setup.rb
|
2
|
-
# doc/*.rb.html
|
3
|
-
# doc/ex/* (!rb)
|
4
|
-
# Bug #246: Don't use chdir!
|
5
|
-
require 'ftools'
|
6
|
-
|
7
|
-
targets = Dir['doc/*.rb.html']
|
8
|
-
File.safe_unlink(*targets) unless targets.empty?
|
9
|
-
|
10
|
-
targets = Dir['doc/ex/*']
|
11
|
-
targets.delete_if { |entry| File.directory?(entry) || %r{\.rb\z}.match(entry) }
|
12
|
-
File.safe_unlink(*targets) unless targets.empty?
|
data/post-install.rb
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
# install RMagick documentation
|
2
|
-
|
3
|
-
require 'ftools'
|
4
|
-
require 'find'
|
5
|
-
|
6
|
-
if defined?(Installer) && self.class == Installer
|
7
|
-
|
8
|
-
BUILD_HTMLDOC = get_config('disable-htmldoc') != 'yes'
|
9
|
-
|
10
|
-
$docdir = nil
|
11
|
-
|
12
|
-
# Where to install the documentation
|
13
|
-
def docdir
|
14
|
-
return $docdir if $docdir
|
15
|
-
dir = get_config('doc-dir')+'/'
|
16
|
-
dir.sub!(/\A$prefix/, get_config('prefix'))
|
17
|
-
$docdir = dir
|
18
|
-
end
|
19
|
-
else
|
20
|
-
|
21
|
-
BUILD_HTMLDOC = true
|
22
|
-
|
23
|
-
def docdir
|
24
|
-
return ARGV[0]
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
if BUILD_HTMLDOC
|
29
|
-
|
30
|
-
puts "\npost-install.rb: installing documentation..."
|
31
|
-
|
32
|
-
Find.find('doc') do |file|
|
33
|
-
next if FileTest.directory? file
|
34
|
-
target = file.sub(/^doc\//,docdir())
|
35
|
-
unless FileTest.exists? File.dirname(target)
|
36
|
-
File.makedirs(File.dirname(target), true)
|
37
|
-
# Mark this directory as one we created so
|
38
|
-
# that uninstall.rb knows it's okay to delete
|
39
|
-
f = File.new("#{File.dirname(target)}/.rmagick", "w")
|
40
|
-
f.close
|
41
|
-
end
|
42
|
-
File.install(file, target, 0644)
|
43
|
-
end
|
44
|
-
|
45
|
-
else
|
46
|
-
|
47
|
-
puts "\npost-install.rb: --disable-htmldoc specified. No documentation will be installed."
|
48
|
-
|
49
|
-
end
|
50
|
-
|
51
|
-
exit
|
data/post-setup.rb
DELETED
@@ -1,254 +0,0 @@
|
|
1
|
-
#===============================================================================
|
2
|
-
# post-setup.rb - setup documentation
|
3
|
-
#===============================================================================
|
4
|
-
|
5
|
-
EXAMPLES = '.examples'
|
6
|
-
STD_URI = 'http:\/\/www.imagemagick.org'
|
7
|
-
STD_URI_RE = /"#{STD_URI}/
|
8
|
-
DONT_RUN = ['fonts.rb'] # never run these examples
|
9
|
-
ENTITY = Hash['&' => '&', '>' => '>', '<' => '<']
|
10
|
-
|
11
|
-
if defined?(Installer) && self.class == Installer
|
12
|
-
|
13
|
-
RUBYPROG = get_config('ruby-prog')
|
14
|
-
SRCDIR = curr_srcdir()
|
15
|
-
ALLOW_EXAMPLE_ERRORS = get_config('allow-example-errors') == 'yes'
|
16
|
-
BUILD_HTMLDOC = get_config('disable-htmldoc') != 'yes'
|
17
|
-
|
18
|
-
else
|
19
|
-
|
20
|
-
RUBYPROG = 'ruby'
|
21
|
-
SRCDIR = '.'
|
22
|
-
ALLOW_EXAMPLE_ERRORS = true
|
23
|
-
BUILD_HTMLDOC = true
|
24
|
-
|
25
|
-
end
|
26
|
-
|
27
|
-
|
28
|
-
#
|
29
|
-
# A set of example programs in a directory and the output image each example produces.
|
30
|
-
#
|
31
|
-
|
32
|
-
class ExampleSet
|
33
|
-
def initialize(of)
|
34
|
-
@status_quo = get_status_quo()
|
35
|
-
@errs = 0
|
36
|
-
begin
|
37
|
-
File.open(EXAMPLES) do |f|
|
38
|
-
@targets = Marshal.load(f)
|
39
|
-
end
|
40
|
-
rescue
|
41
|
-
@targets = Hash.new
|
42
|
-
@n = 0
|
43
|
-
@of = of
|
44
|
-
@first_time = true
|
45
|
-
else
|
46
|
-
@first_time = false
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
def persist
|
51
|
-
File.open(EXAMPLES, 'w') do |f|
|
52
|
-
Marshal.dump(@targets, f)
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
def targets(example)
|
57
|
-
@targets[example] || Array.new
|
58
|
-
end
|
59
|
-
|
60
|
-
def get_status_quo
|
61
|
-
sq = Dir["*"]
|
62
|
-
sq.delete_if { |entry| File.directory?(entry) }
|
63
|
-
end
|
64
|
-
|
65
|
-
def update_targets(example, new)
|
66
|
-
t = targets(example) + new
|
67
|
-
@targets[example] = t.uniq
|
68
|
-
end
|
69
|
-
|
70
|
-
def update_status_quo(example)
|
71
|
-
new_status_quo = get_status_quo()
|
72
|
-
new = new_status_quo - @status_quo
|
73
|
-
update_targets(example, new)
|
74
|
-
@status_quo = new_status_quo
|
75
|
-
end
|
76
|
-
|
77
|
-
def build(example)
|
78
|
-
cmd = "#{RUBYPROG} -I #{SRCDIR}/lib -I #{SRCDIR}/ext/RMagick #{example}"
|
79
|
-
print cmd
|
80
|
-
print " (example #{@n += 1} of #{@of})" if @first_time
|
81
|
-
puts
|
82
|
-
system cmd
|
83
|
-
|
84
|
-
if $? != 0 then
|
85
|
-
puts("post-setup.rb: #{example} example returned error code #{$?}")
|
86
|
-
@errs += 1 unless ALLOW_EXAMPLE_ERRORS
|
87
|
-
if @errs > 4
|
88
|
-
err(<<-END_EXFAIL
|
89
|
-
Too many examples failed. Search for "Help!" at
|
90
|
-
http://rmagick.rubyforge.org/install-faq.html.
|
91
|
-
END_EXFAIL
|
92
|
-
)
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
update_status_quo(example)
|
97
|
-
end
|
98
|
-
|
99
|
-
def update(example)
|
100
|
-
targets = targets(example)
|
101
|
-
up_to_date = ! targets.empty?
|
102
|
-
targets.each do |target|
|
103
|
-
up_to_date &&= File.exists?(target) && (File.stat(target) >= File.stat(example))
|
104
|
-
end
|
105
|
-
build(example) unless up_to_date
|
106
|
-
end
|
107
|
-
|
108
|
-
#
|
109
|
-
# print message and exit
|
110
|
-
#
|
111
|
-
def err(msg)
|
112
|
-
$stderr.puts "#{$0}: #{msg}"
|
113
|
-
exit 1
|
114
|
-
end
|
115
|
-
|
116
|
-
end
|
117
|
-
|
118
|
-
|
119
|
-
#
|
120
|
-
# Modify file lines via proc. If no lines changed, discard new version.
|
121
|
-
#
|
122
|
-
def filter(filename, backup=nil, &filter)
|
123
|
-
if ! File.writable? filename then
|
124
|
-
raise ArgumentError, "`#{filename}' is write-protected"
|
125
|
-
end
|
126
|
-
|
127
|
-
backup_name = filename + '.' + (backup || 'old')
|
128
|
-
File.rename(filename, backup_name)
|
129
|
-
changed = false
|
130
|
-
begin
|
131
|
-
File.open(filename, 'w') do |output|
|
132
|
-
File.foreach(backup_name) do |line|
|
133
|
-
old = line
|
134
|
-
line = filter.call(line)
|
135
|
-
output.puts(line)
|
136
|
-
changed ||= line != old
|
137
|
-
end
|
138
|
-
end
|
139
|
-
rescue
|
140
|
-
File.rename(backup_name, filename)
|
141
|
-
raise
|
142
|
-
end
|
143
|
-
|
144
|
-
if !changed
|
145
|
-
newname = filename + '.xxx'
|
146
|
-
File.rename(filename, newname)
|
147
|
-
File.rename(backup_name, filename)
|
148
|
-
File.unlink(newname)
|
149
|
-
elsif !backup
|
150
|
-
# Don't remove old copy if a backup extension was specified
|
151
|
-
File.unlink(backup_name) rescue nil
|
152
|
-
end
|
153
|
-
end
|
154
|
-
|
155
|
-
|
156
|
-
#
|
157
|
-
# Copy an example to the doc directory, wrap in HTML tags
|
158
|
-
#
|
159
|
-
def filetoHTML(file, html)
|
160
|
-
return if File.exists?(html) && File.stat(html) >= File.stat(file)
|
161
|
-
|
162
|
-
File.open(file) do |src|
|
163
|
-
File.open(html, 'w') do |dest|
|
164
|
-
dest.puts <<-END_EXHTMLHEAD
|
165
|
-
<!DOCTYPE public PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
166
|
-
<html xmlns="http://www.w3.org/1999/xhtml">
|
167
|
-
<head>
|
168
|
-
<meta name="generator" content="ex2html.rb" />
|
169
|
-
<meta http-equiv="Content-Type" content=
|
170
|
-
"text/html; charset=us-ascii" />
|
171
|
-
<link rel="stylesheet" type="text/css" href="css/popup.css" />
|
172
|
-
|
173
|
-
<title>RMagick example: #{file}</title>
|
174
|
-
</head>
|
175
|
-
|
176
|
-
<body>
|
177
|
-
<h1>#{file}</h1>
|
178
|
-
<div class="bodybox">
|
179
|
-
<div class="bodyfloat">
|
180
|
-
<pre>
|
181
|
-
END_EXHTMLHEAD
|
182
|
-
|
183
|
-
src.each do |line|
|
184
|
-
line.gsub!(/[&><]/) { |s| ENTITY[s] }
|
185
|
-
dest.puts(line)
|
186
|
-
end
|
187
|
-
|
188
|
-
dest.puts <<-END_EXHTMLTAIL
|
189
|
-
</pre>
|
190
|
-
</div>
|
191
|
-
</div>
|
192
|
-
<div id="close"><a href="javascript:window.close();">Close window</a></div>
|
193
|
-
</body>
|
194
|
-
</html>
|
195
|
-
END_EXHTMLTAIL
|
196
|
-
end
|
197
|
-
File.chmod(0644, html)
|
198
|
-
end
|
199
|
-
|
200
|
-
end
|
201
|
-
|
202
|
-
puts "setup.rb: entering post-setup phase..."
|
203
|
-
|
204
|
-
|
205
|
-
if BUILD_HTMLDOC
|
206
|
-
|
207
|
-
#
|
208
|
-
# Don't bother if we're in the sandbox
|
209
|
-
#
|
210
|
-
if File.exists? 'CVS/Entries'
|
211
|
-
puts "post-setup.rb: in CVS sandbox - stopping..."
|
212
|
-
exit
|
213
|
-
end
|
214
|
-
|
215
|
-
puts "post-setup.rb: setting up documentation..."
|
216
|
-
|
217
|
-
# We're in the source directory. Process the doc in-place. The post-install.rb
|
218
|
-
# script moves the generated documentation to the ultimate installation directories.
|
219
|
-
|
220
|
-
cwd = Dir.getwd()
|
221
|
-
Dir.chdir('doc') # need to work with 1.6.x, can't use block form
|
222
|
-
begin
|
223
|
-
|
224
|
-
# Step 1A: edit the shebang line in the examples
|
225
|
-
Dir.chdir('ex')
|
226
|
-
files = Dir['*.rb']
|
227
|
-
files.each do |file|
|
228
|
-
filter(file) { |line| line.sub(/\A\#!\s*\S*ruby\s/, '#!'+RUBYPROG+' ') }
|
229
|
-
|
230
|
-
# Step 1B: Make a copy of the example as HTML in the doc directory
|
231
|
-
filetoHTML(file, "../#{file}.html")
|
232
|
-
end
|
233
|
-
|
234
|
-
# Step 2: run the examples
|
235
|
-
examples = Dir['*.rb'].sort
|
236
|
-
examples -= DONT_RUN
|
237
|
-
es = ExampleSet.new(examples.length)
|
238
|
-
begin
|
239
|
-
examples.each { |example| es.update(example) }
|
240
|
-
ensure
|
241
|
-
es.persist
|
242
|
-
end
|
243
|
-
|
244
|
-
ensure
|
245
|
-
Dir.chdir(cwd)
|
246
|
-
end
|
247
|
-
|
248
|
-
else
|
249
|
-
|
250
|
-
puts "post-setup.rb: --disable-htmldoc specified. No documentation will be set up."
|
251
|
-
|
252
|
-
end
|
253
|
-
|
254
|
-
exit
|