dylan-lang / wiki Goto Github PK
View Code? Open in Web Editor NEWA git-backed wiki with RST markup
License: MIT License
A git-backed wiki with RST markup
License: MIT License
Get HTTPS working. This doesn't block launch because the current wiki doesn't use it either.
Housel reports getting raw XHTML in FF 5.0 on Ubuntu Natty.
{{include: ...}} should be implemented as a reference so that such uses are discoverable. e.g., they should show up in the Connections page and should be distinguishable from normal references.
Provide a way to display a list of page targets that need to be written. Possibilities include {{wiki: show-broken-links}} or adding another special item below the Users, Groups, and Pages links.
The list should show which pages the broken references come from.
Maybe add this to the home page: Want to help make this wiki better? Try writing one of these pages: ...list...
Notably anything that conflicts with being passed on the command line within double quotes. e.g., commit comments with double quotes. (I couldn't get run-application to work with a pre-parsed command line.)
rosario reported in IRC that even if passwords don't match a confirmation email is sent.
cgay@lovelace:~/dylan-wiki$ ps -ef | grep org
cgay 14463 1 0 13:55 pts/3 00:00:04 opendylan-dot-org --config /home/cgay/dylan-wiki/config.xml
cgay 28104 31095 0 15:59 pts/1 00:00:00 grep org
cgay@lovelace:~/dylan-wiki$ lsof | grep cgay | grep pipe | grep opendylan | wc -l
298
The wiki has been up for just over two hours, with only my using it lightly, and has 300 pipes open. I have to assume this is related to running rst2html or some other call to run-application.
Write a test to verify that fds get closed properly for those calls.
Wiki died with
2011-06-17T21:03:47.000+0200 ERROR [HTTP Listener for 0.0.0.0:8001] Error accepting connections: socket error 24
Too many open files. I bet anything I'm leaving an fd open after running rst2html.
...even when the page already exists.
.
{{Page#fragment}}
do it
Encode filenames so that they're safe for passing as args to exec and for storing in the file system. Probably just percent encoding is fine.
Implement rename group.
D'oh! ACLs are in effect as long as the server is up, but they're not written to file when edited and hence not restored on startup.
If there is a page named Code Examples then {{code examples}} should display as "code examples" but should link to the "Code Examples" page.
"title" isn't in the query values.
To reproduce it just go to a new, non-existing page and try to preview it.
Still storing passwords in cleartext. I meant to fix this when I was originally working on the git back-end code but forgot. (Hooray for not writing stuff down.)
Also, whatever mechanism is used to encode the password must not contain colons, given the storage format.
Also (but not closely related), put some verbiage on the registration page saying not to use secure passwords on this site.
If wiki markup contains a line break in the middle it can break the link. e.g.,
{{Dylan
Compilers}}
doesn't link to "Dylan Compilers". This can happen when the browser's textarea widget auto-wraps the line (which I believe can be fixed in the HTML) but also if someone is writing RST and hard-wraps the lines for readability. I think it's okay to convert all contiguous white space inside {{...}} to a single space.
If there is a reference to a non-existant page P, and then P is created, the reference doesn't get updated. The link will show a (?) even though the page exists and the link works.
File upload is important so that people have a place to store files (e.g., images) that they reference in their wiki pages.
Error with stack trace:
Cannot add-method {<simple-closure-method>: ??? (<case-insensitive-string-table>) => (<function>, <function>)} in {<library>} on {<incremental-generic-function>: table-protocol} because it is blocked by the sealed domain over {<simple-object-vector>: {<class>: <case-insensitive-string-table>}} defined in {<library>}.
Khandle_missed_dispatchVKgI+561 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
general_engine_node_n+63 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
Kdefault_handlerVKdMM1I+26 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
Khandle_missed_dispatchVKgI+561 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
general_engine_node_n+63 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
0xb7503fa9 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
0xb7504036 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
Khandle_missed_dispatchVKgI+561 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
general_engine_node_n_optionals+106 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
KerrorVKdMM0I+58 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
Khandle_missed_dispatchVKgI+561 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
general_engine_node_n_optionals+106 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
KbletchVKgMM1I+33 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
Khandle_missed_dispatchVKgI+561 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
general_engine_node_n+63 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
KPadd_a_methodVKnI+1080 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
_Init_wiki__X_wiki_for_user_4+38 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libwiki.so)
_Init_wiki__X_wiki_for_user+28 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libwiki.so)
0xb770dbeb (/home/user/dylan-foundry/wiki/_build/bin/../lib/libwiki.so)
0xb770da6b (/home/user/dylan-foundry/wiki/_build/bin/../lib/libwiki.so)
mps_tramp+53 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libdylan.so)
0xb770dae5 (/home/user/dylan-foundry/wiki/_build/bin/../lib/libwiki.so)
0x80488e0 (_build/bin/wiki)
__libc_start_main+243 (/lib/i386-linux-gnu/libc.so.6)
Segmentation fault (core dumped)
Saving the FAQ page (which is the largest so far) takes a crazy amount of time. ~30 seconds. Need to track down the problem.
While the Options menu seems to remove clutter, when I'm editing "in anger" I find it far too annoying to have to go find the "edit" menu item every time. Perhaps it's enough to add an "edit" link/icon near the page title when applicable. Perhaps a horizontal menu that is always visible would be better. IIRC that tiny little Options link on the right wasn't at all obvious when I first started using Turbo's wiki.
Need to maintain back links to pages for ease of finding referrers, and for rename page.
See this commit:
I changed {{Home}} to have the content "Home..." and it looks as though that content only overwrote the first part of the old content rather than replacing it.
In particular, the examples in the "Help" page are tiny and should have a slightly different color for the background, to set them off.
Lovelace has git 1.5, which has different output formats than 1.7, so some tweaking needs to be done to the screen scraping. (I know, screen scraping sucks...can look at libgit2 later.)
First check whether we can just upgrade git on Lovelace.
It drives me crazy when I read a blog or other web pages and start to realize the info may be out of date but they don't say when they were written.
Currently page diffs just show the raw output from git diff. See if there's some reusable code, e.g., for the github commit diffs.
Implement delete group
Currently the only wiki markup that works (other than RST) is {{Page}}.
Implement at least these for initial launch:
{{page: Foo, text: Bar}} -- link text "Bar" to page "Foo"
{{Foo,Bar}} -- shorthand for {{page:Foo,text:Bar}}
{{Foo}} -- shorthand for {{page:Foo,text:Foo}}
{{page: "x,y"}} -- names may be quoted
{{page: 'The "x" Page'}} -- single or double quotes work.
{{user: cgay, text: Carl}} -- a user link
{{group: group}} -- a group link
Test issue
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.