keithsalisbury-subtrac 0.1.15 → 1.0.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.
Files changed (43) hide show
  1. data/History.rdoc +3 -0
  2. data/{lib/subtrac/templates/projects/blank/svn/branches/README → README.rdoc} +0 -0
  3. data/bin/subtrac +1 -3
  4. data/lib/subtrac.rb +97 -292
  5. data/spec/subtrac_spec.rb +54 -0
  6. data/subtrac.gemspec +37 -0
  7. data/tasks/docs.rake +13 -0
  8. data/tasks/gemspec.rake +3 -0
  9. data/tasks/spec.rake +25 -0
  10. metadata +27 -45
  11. data/LICENSE +0 -20
  12. data/README.markdown +0 -200
  13. data/Rakefile +0 -56
  14. data/VERSION.yml +0 -4
  15. data/lib/subtrac/commands.rb +0 -6
  16. data/lib/subtrac/commands/create.rb +0 -13
  17. data/lib/subtrac/commands/install.rb +0 -10
  18. data/lib/subtrac/common/clients/index.wsgi +0 -89
  19. data/lib/subtrac/common/favicon.ico +0 -0
  20. data/lib/subtrac/common/images/trac/banner_bg.jpg +0 -0
  21. data/lib/subtrac/common/images/trac/bar_bg.gif +0 -0
  22. data/lib/subtrac/common/images/trac/footer_back.png +0 -0
  23. data/lib/subtrac/common/images/trac/main_bg.gif +0 -0
  24. data/lib/subtrac/common/images/trac/saint_logo_small.png +0 -0
  25. data/lib/subtrac/common/static/404.html +0 -14
  26. data/lib/subtrac/common/styles/trac.css +0 -222
  27. data/lib/subtrac/config/config.yml +0 -58
  28. data/lib/subtrac/passwords +0 -3
  29. data/lib/subtrac/shared/trac.ini +0 -178
  30. data/lib/subtrac/templates/location.erb +0 -16
  31. data/lib/subtrac/templates/projects/blank/svn/tags/README +0 -0
  32. data/lib/subtrac/templates/projects/blank/svn/trunk/README +0 -0
  33. data/lib/subtrac/templates/projects/blank/trac/wiki/WikiStart +0 -57
  34. data/lib/subtrac/templates/projects/new/svn/trunk/trac/wiki/WikiStart +0 -46
  35. data/lib/subtrac/templates/projects/new/trac/wiki/WikiStart +0 -23
  36. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/index/index.html +0 -21
  37. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/layout.html +0 -56
  38. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/site.html +0 -27
  39. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/theme.html +0 -86
  40. data/lib/subtrac/templates/projects/trac_theme/trac/wiki/WikiStart +0 -4
  41. data/lib/subtrac/templates/trac.erb +0 -25
  42. data/lib/subtrac/templates/vhost.erb +0 -38
  43. data/lib/subtrac/version.rb +0 -4
@@ -1,3 +0,0 @@
1
- admin:2UPs2u5oj2mIc
2
- admin:2UPs2u5oj2mIc
3
- keith:aaLYeLlpy5Tu6
@@ -1,178 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- [attachment]
4
- max_size = 262144
5
- render_unsafe_content = false
6
-
7
- [browser]
8
- color_scale = True
9
- downloadable_paths = /trunk, /branches/*, /tags/*
10
- hide_properties = svk:merge
11
- intermediate_color =
12
- intermediate_point =
13
- newest_color = (255, 136, 136)
14
- oldest_color = (136, 136, 255)
15
- oneliner_properties = trac:summary
16
- render_unsafe_content = false
17
- wiki_properties = trac:description
18
-
19
- [changeset]
20
- max_diff_bytes = 10000000
21
- max_diff_files = 0
22
- wiki_format_messages = true
23
-
24
- [header_logo]
25
- alt = Saint Development Server
26
- height = -1
27
- link = /
28
- src = /images/trac/saint_logo_small.png
29
- width = -1
30
-
31
- [inherit]
32
- plugins_dir =
33
- templates_dir =
34
-
35
- [logging]
36
- log_file = trac.log
37
- # log_format = <inherited>
38
- log_level = DEBUG
39
- log_type = none
40
-
41
- [milestone]
42
- stats_provider = DefaultTicketGroupStatsProvider
43
-
44
- [mimeviewer]
45
- enscript_modes = text/x-dylan:dylan:4
46
- enscript_path = enscript
47
- max_preview_size = 262144
48
- mime_map = text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
49
- php_path = php
50
- tab_width = 8
51
-
52
- [notification]
53
- admit_domains =
54
- always_notify_owner = false
55
- always_notify_reporter = false
56
- always_notify_updater = true
57
- ignore_domains =
58
- mime_encoding = base64
59
- smtp_always_bcc =
60
- smtp_always_cc =
61
- smtp_default_domain =
62
- smtp_enabled = false
63
- smtp_from = trac@localhost
64
- smtp_from_name =
65
- smtp_password =
66
- smtp_port = 25
67
- smtp_replyto = trac@localhost
68
- smtp_server = localhost
69
- smtp_subject_prefix = __default__
70
- smtp_user =
71
- ticket_subject_template = $prefix #$ticket.id: $summary
72
- use_public_cc = false
73
- use_short_addr = false
74
- use_tls = false
75
-
76
- [project]
77
- admin =
78
- admin_trac_url = .
79
- descr = My example project
80
- footer = Visit the Trac open source project at<br /><a href="http://trac.edgewall.org/">http://trac.edgewall.org/</a>
81
- icon = /favicon.ico
82
- url =
83
-
84
- [query]
85
- default_anonymous_query = status!=closed&cc~=$USER
86
- default_query = status!=closed&owner=$USER
87
- items_per_page = 100
88
-
89
- [report]
90
- items_per_page = 100
91
- items_per_page_rss = 0
92
-
93
- [revisionlog]
94
- default_log_limit = 100
95
-
96
- [roadmap]
97
- stats_provider = DefaultTicketGroupStatsProvider
98
-
99
- [search]
100
- min_query_length = 3
101
-
102
- [svn]
103
- branches = trunk,branches/*
104
- tags = tags/*
105
-
106
- [ticket]
107
- default_cc =
108
- default_component =
109
- default_description =
110
- default_keywords =
111
- default_milestone =
112
- default_owner =
113
- default_priority = major
114
- default_resolution = fixed
115
- default_severity =
116
- default_summary =
117
- default_type = defect
118
- default_version =
119
- max_comment_size = 262144
120
- max_description_size = 262144
121
- preserve_newlines = default
122
- restrict_owner = false
123
- workflow = ConfigurableTicketWorkflow
124
-
125
- [ticket-workflow]
126
- accept = new,assigned,accepted,reopened -> accepted
127
- accept.operations = set_owner_to_self
128
- accept.permissions = TICKET_MODIFY
129
- leave = * -> *
130
- leave.default = 1
131
- leave.operations = leave_status
132
- reassign = new,assigned,accepted,reopened -> assigned
133
- reassign.operations = set_owner
134
- reassign.permissions = TICKET_MODIFY
135
- reopen = closed -> reopened
136
- reopen.operations = del_resolution
137
- reopen.permissions = TICKET_CREATE
138
- resolve = new,assigned,accepted,reopened -> closed
139
- resolve.operations = set_resolution
140
- resolve.permissions = TICKET_MODIFY
141
-
142
- [timeline]
143
- abbreviated_messages = True
144
- changeset_collapse_events = false
145
- changeset_long_messages = false
146
- changeset_show_files = 0
147
- default_daysback = 30
148
- max_daysback = 90
149
- newticket_formatter = oneliner
150
- ticket_show_details = false
151
-
152
- [trac]
153
- authz_file =
154
- authz_module_name =
155
- auto_reload = False
156
- base_url =
157
- check_auth_ip = false
158
- database = sqlite:db/trac.db
159
- default_charset = iso-8859-15
160
- htdocs_location =
161
- ignore_auth_case = false
162
- mainnav = wiki,timeline,roadmap,browser,tickets,newticket,search
163
- metanav = login,logout,prefs,help,about
164
- permission_policies = DefaultPermissionPolicy, LegacyAttachmentPolicy
165
- permission_store = DefaultPermissionStore
166
- repository_type = svn
167
- secure_cookies = False
168
- show_email_addresses = false
169
- show_ip_addresses = false
170
- timeout = 20
171
- use_base_url_for_redirect = False
172
-
173
- [wiki]
174
- ignore_missing_pages = false
175
- max_size = 262144
176
- render_unsafe_content = false
177
- split_page_names = false
178
-
@@ -1,16 +0,0 @@
1
- <location /<%= client_name %>>
2
- SetHandler mod_python
3
- PythonInterpreter main_interpreter
4
- PythonHandler trac.web.modpython_frontend
5
- PythonOption TracEnvParentDir <%= trac_dir %>/<%= client_name %>
6
- PythonOption TracUriRoot /<%= client_name %>
7
- PythonOption TracEnvIndexTemplate <%= trac_dir %>/<%= client_name %>/.theme/index/index.html
8
- PythonOption PYTHON_EGG_CACHE /tmp
9
- </location>
10
- <location <%= @APP_CONFIG[:urls][:svn] %>/<%= client_name %>>
11
- DAV svn
12
- SVNParentPath <%= svn_dir %>/<%= client_name %>
13
- SVNListParentPath On
14
- SVNAutoversioning On
15
- SVNReposName "Saint Digital Source Repository for <%= client_name %>"
16
- </location>
File without changes
@@ -1,57 +0,0 @@
1
- [[PageOutline]]
2
- = Welcome to the Saint Development Server =
3
-
4
- This is the home of development for <%= client %>. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
5
-
6
- == Starting Points ==
7
-
8
- * [<%= @APP_CONFIG[:urls][:svn] %>/ Browse all <%= client_name %> SVN Repositories]
9
- * [<%= @APP_CONFIG[:urls][:svn] %>/<%= client_name %>/<%= project_name %> Browse the <%= project_name %> repository]
10
-
11
- === How to check this project out ===
12
-
13
- Make sure you have subversion client installed, then you can check the project out using:
14
-
15
- {{{
16
- svn checkout http://<%= @server_hostname %><%= @APP_CONFIG[:urls][:svn] %>/<%= client_name %>/<%= project_name %>/trunk <%= project_name %>
17
- }}}
18
-
19
- === Using SVN ===
20
-
21
- * [http://tortoisesvn.tigris.org/ For Windows use Tortoise SVN]
22
- * [http://scplugin.tigris.org/ For OS X use SCPlugin]
23
- * [http://theappleblog.com/2009/02/23/12-subversion-apps-for-os-x/ There's loads more if you don't like these]
24
-
25
- == Template Projects ==
26
-
27
- This system allows you to set up a default template for different project types. All templates are available to browse in the [<%= @APP_CONFIG[:urls][:svn] %>/templates/svn/ Browse all Templates Repositories] area.
28
-
29
-
30
- = About Trac =
31
-
32
- Trac is a '''minimalistic''' approach to '''web-based''' management of
33
- '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress.
34
-
35
- All aspects of Trac have been designed with the single goal to
36
- '''help developers write great software''' while '''staying out of the way'''
37
- and imposing as little as possible on a team's established process and
38
- culture.
39
-
40
- As all Wiki pages, this page is editable, this means that you can
41
- modify the contents of this page simply by using your
42
- web-browser. Simply click on the "Edit this page" link at the bottom
43
- of the page. WikiFormatting will give you a detailed description of
44
- available Wiki formatting commands.
45
-
46
- TracGuide is a good place to start.
47
-
48
- Enjoy! [[BR]]
49
- ''The Saint Team''
50
-
51
- == Starting Points ==
52
-
53
- * TracGuide -- Built-in Documentation
54
- * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions
55
- * TracSupport -- Trac Support
56
-
57
- For a complete list of local wiki pages, see TitleIndex.
@@ -1,46 +0,0 @@
1
- [[PageOutline]]
2
- = Welcome to the Saint Development Server =
3
-
4
- This is the home of development for {CLIENT_NAME}. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
5
-
6
- == Starting Points ==
7
-
8
- * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/ Browse all {CLIENT_NAME} SVN Repositories]
9
- * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/{PROJECT_NAME} Browse the {PROJECT_NAME} repository]
10
-
11
- === How to check this project out ===
12
-
13
- Make sure you have subversion client installed, then you can check the project out using:
14
-
15
- {{{
16
- svn checkout http://{SERVER_HOSTNAME}/svn/{CLIENT_NAME}/{PROJECT_NAME}/trunk {PROJECT_NAME}
17
- }}}
18
-
19
- = About Trac =
20
-
21
- Trac is a '''minimalistic''' approach to '''web-based''' management of
22
- '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress.
23
-
24
- All aspects of Trac have been designed with the single goal to
25
- '''help developers write great software''' while '''staying out of the way'''
26
- and imposing as little as possible on a team's established process and
27
- culture.
28
-
29
- As all Wiki pages, this page is editable, this means that you can
30
- modify the contents of this page simply by using your
31
- web-browser. Simply click on the "Edit this page" link at the bottom
32
- of the page. WikiFormatting will give you a detailed description of
33
- available Wiki formatting commands.
34
-
35
- TracGuide is a good place to start.
36
-
37
- Enjoy! [[BR]]
38
- ''The Saint Team''
39
-
40
- == Starting Points ==
41
-
42
- * TracGuide -- Built-in Documentation
43
- * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions
44
- * TracSupport -- Trac Support
45
-
46
- For a complete list of local wiki pages, see TitleIndex.
@@ -1,23 +0,0 @@
1
- = Welcome to the {PROJECT_NAME} for {CLIENT_NAME} =
2
-
3
- This is the home of development for {CLIENT_NAME}. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
4
-
5
- == Starting Points ==
6
-
7
- * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/ Browse all {CLIENT_NAME} SVN Repositories]
8
- * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/{PROJECT_NAME} Browse the {PROJECT_NAME} repository]
9
-
10
- === How to check this project out ===
11
-
12
- Make sure you have subversion client installed, then you can check the project out using:
13
-
14
- {{{
15
- svn checkout http://{SERVER_HOSTNAME}/svn/{CLIENT_NAME}/{PROJECT_NAME}/trunk {PROJECT_NAME}
16
- }}}
17
-
18
-
19
- === Using SVN ===
20
-
21
- * [http://tortoisesvn.tigris.org/ For Windows use Tortoise SVN]
22
- * [http://scplugin.tigris.org/ For OS X use SCPlugin]
23
- * [http://theappleblog.com/2009/02/23/12-subversion-apps-for-os-x/ There's loads more if you don't like these]
@@ -1,21 +0,0 @@
1
- <!DOCTYPE html
2
- PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
- <html xmlns="http://www.w3.org/1999/xhtml"
5
- xmlns:py="http://genshi.edgewall.org/"
6
- xmlns:xi="http://www.w3.org/2001/XInclude">
7
- <head>
8
- <title>Available Projects</title>
9
- </head>
10
- <body>
11
- <h1>Available Projects for Subtrac</h1>
12
- <ul>
13
- <py:for each="project in projects" py:choose="">
14
- <li py:when="project.href">
15
- <a href="$project.href"
16
- title="$project.description">$project.name</a>
17
- </li>
18
- </py:for>
19
- </ul>
20
- </body>
21
- </html>
@@ -1,56 +0,0 @@
1
- <!DOCTYPE html
2
- PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
- <html xmlns="http://www.w3.org/1999/xhtml"
5
- xmlns:xi="http://www.w3.org/2001/XInclude"
6
- xmlns:py="http://genshi.edgewall.org/"
7
- py:strip="">
8
-
9
- <py:match path="head" once="true"><head>
10
- <title py:with="title = list(select('title/text()'))">
11
- <py:if test="title">${title} – </py:if>${project.name or 'Trac'}
12
- </title>
13
- <py:if test="chrome.links">
14
- <py:for each="rel, links in chrome.links.items()">
15
- <link rel="${rel}" py:for="link in links" py:attrs="link" />
16
- </py:for>
17
- </py:if>
18
- <py:if test="'SEARCH_VIEW' in perm" id="search">
19
- <link type="application/opensearchdescription+xml" rel="search"
20
- href="${href.search('opensearch')}" title="Search $project.name"/>
21
- </py:if>
22
- <script py:for="script in chrome.scripts"
23
- type="${script.type}" src="${script.href}"></script>
24
- ${Markup('&lt;!--[if lt IE 7]&gt;')}
25
- <script type="text/javascript" src="${chrome.htdocs_location}js/ie_pre7_hacks.js"
26
- ></script>
27
- ${Markup('&lt;![endif]--&gt;')}
28
- ${select("*[local-name() != 'title']")}
29
- </head></py:match>
30
-
31
- <py:match path="body" once="true" buffer="false"><body>
32
- ${select('*|text()')}
33
-
34
- <script type="text/javascript" py:if="chrome.late_links">
35
- <py:for each="link in chrome.late_links.get('stylesheet')">
36
- jQuery.loadStyleSheet("${link.href}", "${link.type}");
37
- </py:for>
38
- </script>
39
- <script py:for="script in chrome.late_scripts"
40
- type="${script.type}" src="${script.href}"></script>
41
-
42
- <div id="altlinks" py:if="'alternate' in chrome.links">
43
- <h3>Download in other formats:</h3>
44
- <ul>
45
- <li py:for="idx, link in enumerate(chrome.links.alternate)"
46
- class="${first_last(idx, chrome.links.alternate)}">
47
- <a rel="nofollow" href="${link.href}" class="${link['class']}"
48
- py:content="link.title" />
49
- </li>
50
- </ul>
51
- </div>
52
- </body></py:match>
53
-
54
- <xi:include href="$chrome.theme"><xi:fallback /></xi:include>
55
- <xi:include href="site.html"><xi:fallback /></xi:include>
56
- </html>
@@ -1,27 +0,0 @@
1
- <html xmlns="http://www.w3.org/1999/xhtml"
2
- xmlns:py="http://genshi.edgewall.org/"
3
- py:strip="">
4
-
5
- <!--! Add site-specific style sheet -->
6
- <head py:match="head" py:attrs="select('@*')">
7
- ${select('*|comment()|text()')}
8
- <link rel="stylesheet" type="text/css"
9
- href="${href.chrome('site/style.css')}" />
10
- <link rel="stylesheet" type="text/css"
11
- href="/styles/trac.css"/>
12
- </head>
13
-
14
- <body py:match="body" py:attrs="select('@*')">
15
- <!--! Add site-specific header -->
16
- <div id="siteheader">
17
- <!--! Place your header content here... -->
18
- </div>
19
-
20
- ${select('*|text()')}
21
-
22
- <!--! Add site-specific footer -->
23
- <div id="sitefooter">
24
- <!--! Place your footer content here... -->
25
- </div>
26
- </body>
27
- </html>
@@ -1,86 +0,0 @@
1
- <!DOCTYPE html
2
- PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
- <html xmlns="http://www.w3.org/1999/xhtml"
5
- xmlns:xi="http://www.w3.org/2001/XInclude"
6
- xmlns:py="http://genshi.edgewall.org/"
7
- py:strip="">
8
-
9
- <div py:def="navigation(category)" id="${category}" class="nav">
10
- <ul py:if="chrome.nav[category]">
11
- <li py:for="idx, item in enumerate(chrome.nav[category])"
12
- class="${classes(first_last(idx, chrome.nav[category]), active=item.active)
13
- }">${item.label}</li>
14
- </ul>
15
- </div>
16
-
17
- <py:match path="body" once="true" buffer="false"><body>
18
- <div id="banner">
19
- <div id="header" py:choose="">
20
- <a py:when="chrome.logo.src" id="logo" href="${chrome.logo.link or href.wiki(
21
- 'TracIni')+'#header_logo-section'}"><img
22
- src="${chrome.logo.src}" alt="${chrome.logo.alt}"
23
- height="${chrome.logo.height or None}" width="${chrome.logo.width or None}"
24
- /></a>
25
- <h1 py:otherwise=""><a href="${chrome.logo.link}">${project.name}</a></h1>
26
- </div>
27
- <form id="search" action="${href.search()}" method="get">
28
- <div py:if="'SEARCH_VIEW' in perm">
29
- <label for="proj-search">Search:</label>
30
- <input type="text" id="proj-search" name="q" size="18" accesskey="f" value=
31
- "" />
32
- <input type="submit" value="Search" />
33
- </div>
34
- </form>
35
- ${navigation('metanav')}
36
- </div>
37
- ${navigation('mainnav')}
38
-
39
- <div id="main">
40
- <div id="ctxtnav" class="nav">
41
- <h2>Context Navigation</h2>
42
- <ul py:if="chrome.ctxtnav">
43
- <li py:for="i, elm in enumerate(chrome.ctxtnav)"
44
- class="${classes(first_last(i, chrome.ctxtnav))}">$elm</li>
45
- </ul>
46
- <hr />
47
- </div>
48
- <div id="warning" py:if="chrome.warnings" class="system-message">
49
- <py:choose test="len(chrome.warnings)">
50
- <py:when test="1">
51
- <strong>Warning:</strong> ${chrome.warnings[0]}
52
- </py:when>
53
- <py:otherwise>
54
- <strong>Warnings:</strong>
55
- <ul><li py:for="w in chrome.warnings">$w</li></ul>
56
- </py:otherwise>
57
- </py:choose>
58
- </div>
59
- <div id="notice" py:if="chrome.notices" class="system-message">
60
- <py:choose test="len(chrome.notices)">
61
- <py:when test="1">
62
- <strong>Notice:</strong> ${chrome.notices[0]}
63
- </py:when>
64
- <py:otherwise>
65
- <strong>Notices:</strong>
66
- <ul><li py:for="w in chrome.notices">$w</li></ul>
67
- </py:otherwise>
68
- </py:choose>
69
- </div>
70
-
71
- ${select('*|text()')}
72
- </div>
73
-
74
- <div id="footer" xml:lang="en"><hr/>
75
- <a id="tracpowered" href="http://trac.edgewall.org/"><img
76
- src="${chrome.htdocs_location}trac_logo_mini.png" height="30"
77
- width="107" alt="Trac Powered"/></a>
78
- <p class="left">
79
- Powered by <a href="${href.about()}"><strong>Trac ${trac.version}</strong></a
80
- ><br />
81
- By <a href="http://www.edgewall.org/">Edgewall Software</a>.
82
- </p>
83
- <p class="right">${chrome.footer}</p>
84
- </div>
85
- </body></py:match>
86
- </html>