Skip to content

Commit 69b62b6

Browse files
committed
Checkout of Instiki Trunk 1/21/2007.
0 parents  commit 69b62b6

File tree

1,138 files changed

+139586
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,138 files changed

+139586
-0
lines changed

CHANGELOG

+270
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,270 @@
1+
* TRUNK:
2+
3+
- ANTISPAM:
4+
- updated and included spam_patterns.txt
5+
- included dnsbl_check - DNS Blackhole Lists check
6+
[thanks to joost from http://www.spacebabies.nl ]
7+
8+
- BUGFIXES:
9+
- fix PDF output not to contain garbage chars [Jesse Newland]
10+
- fixed the pages and authors display for single webs
11+
- web list does not show a link to a published version if it has none
12+
[Jesse Newland]
13+
- Fixed bug that failed to expire cached diff view of a page
14+
- Fixed rendering of WikiLinks in included pages in published or export
15+
mode
16+
- lots of small bugfixes and changes
17+
18+
- UPDATES:
19+
- Rails 1.2 tested and packaged with instiki
20+
- updated RubyZip to 0.9.1
21+
- updated RedCloth to 3.0.4
22+
- updated packaged sqlite3-ruby to 1.2.0
23+
24+
- FEATURES:
25+
- Stylesheet tweaks
26+
- visual display if webs are pass-protected (div background)
27+
- Linux packaging
28+
29+
------------------------------------------------------------------------------
30+
* 0.11.0:
31+
- SQL-based backend (ActiveRecord)
32+
- File uploads (finally)
33+
- Upgraded to Rails 1.0.0
34+
- Replaced internal link generator with routing
35+
- Fixed --daemon option
36+
- Removed Rubygem and native OS X distributions
37+
- Improved HTML diff
38+
- More accurate "See Changes"
39+
------------------------------------------------------------------------------
40+
* 0.10.2:
41+
- Upgraded to Rails 0.13.1
42+
- Fixed HTML export
43+
- Added layout=no option to the export_html action (it exports page
44+
contents processed by the markup engine, but without the default layout -
45+
so that they can be wrapped in some other layout)
46+
- <nowiki> tag can span several lines (before it was applied when both
47+
opening and closing tags were on the same line only)
48+
- Resolved the "endless redirection loop" condition and otherwise improved
49+
handling of errors in the rendering engines
50+
- Fixed rendering of Markdown hyperlinks such as
51+
[Text](http://something.com/foo)
52+
------------------------------------------------------------------------------
53+
* 0.10.1:
54+
- Upgraded Rails to 0.12.0
55+
- Upgraded rubyzip to version 0.5.8
56+
- BlueCloth is back (RedCloth didn't do pure Markdown well enough)
57+
- Handling of line breaks in Textile is as in 0.9 (inserts <br/> tag)
58+
- Fixed HTML export (to enclose the output in <html> tags, include the
59+
stylesheet etc)
60+
- Corrected some compatibility issues with storages from earlier Instiki
61+
versions
62+
- Some other bug fixes
63+
------------------------------------------------------------------------------
64+
* 0.10.0:
65+
- Ported to ActionPack
66+
- RedCloth 3.0.3
67+
- BlueCloth is phased out, Markdown is rendered by RedCloth
68+
- Mix markup option understands both Textile and Markdown on the same page
69+
- Instiki can serve static content (such as HTML or plain-text files) from
70+
./public directory
71+
- Much friendlier admin interface
72+
- Wiki link syntax doesn't conflict with Textile hyperlink syntax.
73+
Therefore "textile link":LinkToSomePlace will not look insane.
74+
- RSS feeds accept query parameters, such as
75+
http://localhost:2500/wiki/rss_with_headlines?start=2005-02-18&end=2005-02-19&limit=10
76+
- RSS feed with page contents for a password-protected web behaves as
77+
follows: if the web is published, RSS feed links to the published version
78+
of the web. otherwise, the feed is not available
79+
Madeleine will check every hour if there are new commands in the log or
80+
24 hours have passed since last snapshot, and take snapshot if either of
81+
these conditions is true. Madeleine will also not log read-only
82+
operations, resulting in a better performance
83+
- Wiki extracts (to HTML and plain text) will leave only the last extract
84+
file in ./storage
85+
- Wiki search handles multibyte (UTF-8) characters correctly
86+
- Local hyperlinks in published pages point to published pages [Michael
87+
DeHaan]
88+
- Fixed a bug that sometimes caused all past revisions of a page to be
89+
"forgotten" on restart
90+
- Fixed parsing of URIs with a port number (http://someplace.org:8080)
91+
- Instiki will not fork itself on a *nix, unless explicitly asked to
92+
- Instiki can bind to IPs other than 127.0.0.1 (command-line option)
93+
- Revisions that do not change anything on the page are rejected
94+
- Automated tests for all controller actions
95+
- category: lines are presented as links to "All Pages" for relevant
96+
categories
97+
- Search looks at page titles, as well as content
98+
- Multiple other usability enhancements and bug fixes
99+
------------------------------------------------------------------------------
100+
* 0.9.2:
101+
- Rollback takes the user to an edit form. The form has to be submitted for
102+
the change to take place.
103+
- Changed to use inline style on published pages
104+
- Fixed "forward in time" on the last revision before current page
105+
- Instiki won't log bogus error messages when creating a new Wiki
106+
- Fixed deprecation warning for Object.id (introduced in Ruby 1.8.2)
107+
- Madeleine upgraded to 0.7.1
108+
- Madeleine snapshots are compressed
109+
- Packaged as a gem
110+
------------------------------------------------------------------------------
111+
* 0.9.1:
112+
- Added performance improvements for updating existing pages
113+
- Fixed IP logging and RSS feeds behind proxies [With help from Guan Yang]
114+
- Fixed default storage directory (borked running on Windows)
115+
[Spotted by Curt Hibbs]
116+
------------------------------------------------------------------------------
117+
* 0.9.0:
118+
- Added aliased links such as [[HomePage|that nice home page]] [Mark Reid]
119+
- Added include other page content with [[!include TableOfContents]]
120+
[Mark Reid]
121+
- Added delete orphan pages from the Edit Web screen [by inspiration from
122+
Simon Arnaud]
123+
- Added logging of IP address for authors (who's behind the rollback wars)
124+
- Added Categories pages through backlinks (use "categories: news, instiki"
125+
on start of line) [Mark Reid]
126+
- Added option to use bracket-style wiki links only (and hence ban
127+
WikiWords)
128+
- Added command-line option to specify different storage path
129+
- Added print view without navigation
130+
- Added character and page (2275 characters including spaces) counter
131+
(important for student papers)
132+
- Off by default, activate it on the Edit Web screen
133+
- Added LaTeX/PDF integration on Textile installations with pdflatex
134+
installed on system (EXPERIMENTAL)
135+
- Use the home page as a table of contents with a unordered list to control
136+
sections
137+
- Added limit of 15 to the number of pages included in RSS feed
138+
- Moved static parts of stylesheet to separate file [Lau T?rnskov]
139+
- Fixed better semantics for revision movement [Ryan Singer]
140+
- Fixed color diffs to work much better [Xen/Mertz/Atkins]
141+
- Fixed performance problems for All Pages list [Dennis Mertz]
142+
- Fixed lots of rendering bugs [Mark Reid]
143+
- Upgraded to RedCloth 2.0.11 [integrating the fine work of Dennis Mertz]
144+
------------------------------------------------------------------------------
145+
* 0.8.9:
146+
- Added color diffs to see changes between revisions [Bill Atkins]
147+
They're aren't quite perfect yet as new paragraphs split the <ins> tags
148+
(hence 0.8.9, not 0.9.0)
149+
- Added redirect to edit if content of page generates an error
150+
(so the page doesn't become unusable on bugs in the markup engines)
151+
- Fixed update Web with different address bug [Denis Metz]
152+
- Fixed a bunch of wiki word rendering issues by doing wiki word detection
153+
and replacment at once
154+
- Upgraded to BlueCloth 0.0.3b (should fix loads of problems on Markdown
155+
wikis)
156+
------------------------------------------------------------------------------
157+
* 0.8.5:
158+
- Instiki can now serve as a CMS by running a password-protected web with a
159+
published front
160+
- Added version check at startup (Instiki needs Ruby 1.8.1)
161+
------------------------------------------------------------------------------
162+
* 0.8.1:
163+
- Actually included RedCloth 2.0.7 in the release
164+
------------------------------------------------------------------------------
165+
* 0.8.0:
166+
- NOTE: Single-web wikis created in versions prior to 0.8.0 have "instiki"
167+
as their system password
168+
- Accepts wiki words in bracket style.
169+
Examples: [[wiki word]], [[c]], [[We could'nt have done it!]]
170+
- Accepts camel-case wiki words in all latin, greek, cyrillian, and
171+
armenian unicode characters
172+
- Many thanks to Guan Yang for building the higher- and lower-case lookup
173+
tables. And thanks to Simon Arnaud for the initial patch that got the
174+
work started
175+
- Changed charset to UTF-8
176+
- Cut down on command-line options and replaced them with an per-web config
177+
screen
178+
- Added option to extend the stylesheet on a per-web basis to tweak the
179+
look in details
180+
- Added simple color options for variety
181+
- Added option to add/remove password protection on each web
182+
- Added the wiki name of the author locking a given page (instead of just
183+
"someone")
184+
- Removed single/multi-web distinction -- all Instikis are now multi-web
185+
- Load libraries from an unshifted load path, so that old installed
186+
libraries doesn't clash [Emiel van de Laar]
187+
- Keeps the author cookie forever, so you don't have to enter your name
188+
again and again
189+
- Fixed XHTML so it validates [Bruce D'Arcus]
190+
- Authors are no longer listed under orphan pages
191+
- Added export to markup (great for backups, potentially for switching wiki
192+
engine)
193+
- Don't link wiki words that proceeds from either /, = or ?
194+
(http://c2.com/cgi/wiki?WikiWikiClones,
195+
/show/HomePage, cgi.pl?show=WikiWord without escaping)
196+
- Accessing an unexisting page redirects to a different url (/new/PageName)
197+
- Increased snapshot time to just once a day (cuts down on disk storage
198+
requirements)
199+
- Made RDoc support work better with 1.8.1 [Mauricio Fern?ndez]
200+
- Added convinient redirect from /wiki/ to /wiki/show/HomePage
201+
- Fixed BlueCloth bug with backticks at start of line
202+
- Updated to RedCloth 2.0.7 (and linked to the new Textile reference)
203+
------------------------------------------------------------------------------
204+
* 0.7.0:
205+
- Added Markdown (BlueCloth) and RDoc [Mauricio Fern?ndez] as command-line
206+
markup choices
207+
- Added wanted and orphan page lists to All pages (only show up if there's
208+
actually orphan or wanted pages)
209+
- Added ISO-8859-1 as XML encoding in RSS feeds (makes FeedReader among
210+
others happy for special entities)
211+
- Added proper links in the RSS feed (but the body links are still
212+
relative, which NNW and others doesn't grok)
213+
- Added access keys: E => Edit, H => HomePage, A => All Pages,
214+
U => Recently Revised, X => Export
215+
- Added password-login through URL (so you can subscribe to feed on a
216+
protected web)
217+
- Added web passwords to the feed links for protected webs, so they work
218+
without manual login
219+
- Added the web name in small letters above all pages within a web
220+
- Polished authors and recently revised
221+
- Updated to RedCloth 2.0.6
222+
- Changed content type for RSS feeds to text/xml (makes Mozilla Aggreg8
223+
happy)
224+
- Changed searching to be case insensitive
225+
- Changed HomePage to display the name of the web instead
226+
- Changed exported HTML pages to be valid XHTML (which can be preprocessed
227+
by XSLT)
228+
- Fixed broken recently revised
229+
------------------------------------------------------------------------------
230+
* 0.6.0:
231+
- Fixed Windows compatibility [Florian]
232+
- Fixed bug that would prevent Madeleine from taking snapshots in Daemon
233+
mode
234+
- Added export entire web as HTML in a zip file
235+
- Added RSS feeds
236+
- Added proper getops support for the growing number of options [Florian]
237+
- Added safe mode that forbids style options in RedCloth [Florian]
238+
- Updated RedCloth to 2.0.5
239+
------------------------------------------------------------------------------
240+
* 0.5.0:
241+
- NOTE: 0.5.0 is NOT compatible with databases from earlier versions
242+
- Added revisions
243+
- Added multiple webs
244+
- Added password protection for webs on multi-web setups
245+
- Added the notion of authors (that are saved in a cookie)
246+
- Added command-line option for not running as a Daemon on Unix
247+
------------------------------------------------------------------------------
248+
* 0.3.1:
249+
- Added option to escape wiki words with \
250+
------------------------------------------------------------------------------
251+
* 0.3.0:
252+
- Brought all files into common style (including Textile help on the edit
253+
page)
254+
- Added page locking (if someone already is editing a page there's a
255+
warning)
256+
- Added daemon abilities on Unix (keep Instiki running after you close the
257+
terminal)
258+
- Made port 2500 the default port, so Instiki can be launched by
259+
dobbelt-click
260+
- Added Textile cache to speed-up rendering of large pages
261+
- Made WikiWords look like "Wiki Words"
262+
- Updated RedCloth to 2.0.4
263+
------------------------------------------------------------------------------
264+
* 0.2.5:
265+
- Upgraded to RedCloth 2.0.2 and Madeleine 0.6.1, which means the
266+
- Windows problems are gone. Also fixed a problem with wikiwords
267+
- that used part of other wikiwords.
268+
------------------------------------------------------------------------------
269+
* 0.2.0:
270+
- First public release

README

+113
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
===What is Instiki?
2+
3+
Admitted, it's YetAnotherWikiClone[http://c2.com/cgi/wiki?WikiWikiClones], but with a strong focus
4+
on simplicity of installation and running:
5+
6+
Step 1. Download
7+
Step 2. Run "instiki"
8+
9+
If you are on Windows:
10+
"Step 3. Chuckle... "There's no step three!" (TM)"
11+
12+
You're now running a perfectly suitable wiki on port 2500
13+
that'll present you with one-step setup, followed by a textarea for the home page
14+
on http://localhost:2500
15+
16+
Instiki lowers the barriers of interest for when you might consider
17+
using a wiki. It's so simple to get running that you'll find yourself
18+
using it for anything -- taking notes, brainstorming, organizing a
19+
gathering.
20+
21+
Having said all that, if you are not on Windows, in this version of Instiki it is a somewhat different story.
22+
Since the author has no Linux or Mac at hand, and Instiki is moving to a SQL-based backend, this is what it takes
23+
to install (until somebody sends a patch to properly package Instiki for all those other platforms):
24+
25+
3. Kill "instiki"
26+
4. Install SQLite 3 database engine from http://www.sqlite.org/
27+
5. Install SQLite 3 driver for Ruby from http://sqlite-ruby.rubyforge.org/
28+
6. Install Rake from http://rake.rubyforge.org/
29+
7. Execute rm -f db/*.db
30+
8. Execute 'rake environment RAILS_ENV=production migrate'
31+
9. Make an embarrassed sigh (as I do while writing this)
32+
10. Run 'instiki' again
33+
11. Pat yourself on the shoulder for being such a talented geek
34+
12. At least, there is no step twelve! (TM)
35+
36+
===Features:
37+
* Regular expression search: Find deep stuff really fast
38+
* Revisions: Follow the changes on every page from birth. Rollback to an earlier rev
39+
* Export to HTML or markup in a zip: Take the entire wiki with you home or for reference
40+
* RSS feeds to track recently revised pages
41+
* Multiple webs: Create separate wikis with their own namespace
42+
* Password-protected webs: Keep it private
43+
* Authors: Each revision is associated with an author, so you can see who changed what
44+
* Reference tracker: Which other pages are pointing to the current?
45+
* Speed: Using Madelein[http://madeleine.sourceforge.net] for persistence (all pages are in memory)
46+
* Three markup choices: Textile[http://www.textism.com/tools/textile]
47+
(default / RedCloth[http://www.whytheluckystiff.net/ruby/redcloth]),
48+
Markdown (BlueCloth[http://bluecloth.rubyforge.org]), and RDoc[http://rdoc.sourceforge.net/doc]
49+
* Embedded webserver: Through WEBrick[http://www.webrick.org]
50+
* Internationalization: Wiki words in any latin, greek, cyrillian, or armenian characters
51+
* Color diffs: Track changes through revisions
52+
* Definitely can run on SQLite and MySQL
53+
* May be able to run on Postgres, Oracle, DB2 and SqlServer. If you try this, and it works
54+
(or, it doesn't, but you make it work) please write about it on Instiki.org.
55+
56+
===Command-line options:
57+
* Run "ruby instiki --help"
58+
59+
===History:
60+
* See CHANGELOG
61+
62+
===Migrating Instiki 0.10.2 storage to Instiki 0.11.0 database
63+
1. Install Instiki 0.11 and check that it works (you should be able to create a web, edit and save a HomePage)
64+
2. Execute
65+
ruby script\import_storage \
66+
-t /full/path/to/instiki0.10/storage \
67+
-i /full/path/to/instiki0.10/installation \
68+
-d sqlite (or mysql, or postgres, depending on what you use) \
69+
-o instiki_import.sql
70+
for example (Windows):
71+
ruby script\import_storage -t c:\instiki-0.10.2\storage\2500 -i c:\instiki-0.10.2 -d sqlite -o instiki_import.sql
72+
3. This will produce instiki_import.sql file in the current working directory.
73+
Open it in a text editor and inspect carefully.
74+
4. Connect to your production database (e.g., 'sqlite3 db\prod.db'),
75+
and have it execute instiki_import.sql (e.g., '.read instiki_import.sql')
76+
5. Execute ruby script\reset_references
77+
(this script parses all pages for crosslinks between them, so it may take a few minutes)
78+
6. Restart Instiki
79+
7. Go over some pages, especially those with a lot of complex markup, and see if anything is broken.
80+
81+
The most common migration problem is this: if you open All Pages and see a lot of orphaned pages,
82+
you forgot to run ruby script\reset_references after importing the data.
83+
84+
===Upgrading from Instiki-AR Beta 1
85+
In Beta 2, we switch to ActiveRecord:Migrations. Therefore:
86+
1. Back up your production database.
87+
2. Open command-line session to your database and execute:
88+
create table schema_info (version integer(11));
89+
insert into schema_info (version) values (1);
90+
3. Go back to the shell, change directory to the new Instiki and execute "rake migrate".
91+
92+
Step 2 creates a table that tells to ActiveRecord:Migrations that the current version
93+
of this database is 1 (corresponding to Beta 1), and step 3 makes it up-to-date with
94+
the current version of Instiki.
95+
96+
===Download the latest release from:
97+
* http://rubyforge.org/project/showfiles.php?group_id=186
98+
99+
===Visit the "official" Instiki wiki:
100+
* http://instiki.org
101+
102+
===License:
103+
* same as Ruby's
104+
105+
---
106+
Authors::
107+
108+
Versions 0.0 to 0.9.1:: David Heinemeier Hansson
109+
110+
Weblog:: http://www.loudthinking.com
111+
112+
From 0.9.2 onwards:: Alexey Verkhovsky
113+

0 commit comments

Comments
 (0)