MindTouch Developer Center > Deki > Release > Jay Cooke (8.05)

Jay Cooke (8.05)

Intro

Deki Wiki Jay Cooke (8.05) is a community-feature oriented release, coinciding with MindTouch's development for Mozilla's Developer Center. It contains wiki management features traditionally found in large public community wikis, such as IP address & user banning, multi-page restore, and polyglot support. This release also contains MindTouch's MediaWiki to Deki Wiki converter (licensed under the GPL).

Status

Released: July 31st, 2008 (8.05.2b), July 17th, 2008 (8.05.2a), July 2nd, 2008 (8.05.2), June 3rd, 2008 (8.05.1), May 27th, 2008 (8.05.1 RC1), May 6th, 2008 (8.05), April 28th, 2008 (8.05 RC2), April 22nd, 2008 (8.05 RC1)
Revision: MindTouch SVN r. 9723 (8.05.2b), r. 9562 (8.05.2a), r. 9320 (8.05.2), r. 8863, (8.05.1), r. 8733 (8.05.1 RC1), r. 8455 (8.05), r. 8323 (8.05 RC2), r.8230 (8.05 RC1)

Overview 

Deki Wiki Jay Cooke (v8.05) is the latest release from MindTouch. This release, driven by MindTouch’s development for Mozilla’s languages Developer Center, contains many features required to power and manage a vast, unique community like Mozilla’s.

Unlike other wiki deployments, Mozilla’s site is not in one language, but sixteen. This posed a unique challenge: how can Deki Wiki consolidate all the languages into one deployment while allowing users to effectively discover content in their native languages? The end result is that MindTouch Deki Wiki is the first polyglot wiki – the first wiki capable of effectively distinguishing between different languages within a single system – and we’re incredibly proud to release this work back to the community.

What exactly does it mean for a wiki to be polyglot? On a granular level, each page can be associated with a language – this language automagically localizes the user interface for that page. At a broader level, Deki Wiki allows you to filter content based on language (especially useful for search) with ease. In essence, we’ve taken all the technical complexity associated with multiple languages and simplified it for you. With a polyglot wiki, you no longer need to split up your infrastructure to support language barriers like you have in the past – run it from one instance of Deki Wiki!

Of course, polyglot support was not all we worked on for Mozilla; we also implemented some traditional features: user banning, transactional page restore, talk pages, and a “recent changes” filter.

As always, we place a great emphasis on user experience. As avid users of our own software, we’ve been perennially aggravated by the inability to attach files while editing a page. It’s perfectly reasonable to upload a screenshot when writing technical documentation. Well, you finally can! Not only that, but our new file uploader allows you to do multi-file selection uploads and shows a progress bar. This blows away the previous user experience for file uploads and sets a new bar for others.

We’ve also added preliminary support for OpenSearch, a common syndication format for searches that is backed by companies like Google, Yahoo, Amazon, and Mozilla. Search results from Deki Wiki can easily be accessed from your browser (like the Google quick search in Firefox), and Deki Wiki can also consume search results from other search engines.

One last note: being an alert, avid fan of Deki Wiki, you’ve probably noticed our versioning went from 1.9.0 (Itasca) to 8.05 (Jay Cooke). To quell any concerns: no, we didn’t secretly release 7 versions of our software that you’ve missed. We’ve decided to adopt the Ubuntu versioning scheme – the first two numbers correspond to the year and the month of each release. Since Jay Cooke officially distrosreleases in May, we’ve labeled it the 8.05 version. We feel that this is a more logical way to version releases, rather than using arbitrary numbers, which can be ambiguous. 

8.05.1 Overview

MindTouch Deki 8.05.1 is an incremental Jay Cooke release with a high focus on improving performance of Deki. Performance gains were realized primarily in the API to support the millions of pageviews per month for Mozilla's Developer Center. All of the performance development gains are documented; check it out for details and hard numbers.

MindTouch Deki 8.05.1 also includes new functionality like single sign-on utilizing Apache/IIS authentication modules (experimental) which this allows for easy integration with auth systems like NTLM. Extensions now digitally sign requests to extensions, and we can finally authenticate for private RSS feeds! All Javascript libraries that are shipped with Deki Wiki were updated to their latest versions (bug #3899): jQuery 1.2.3, YUI 2.5.1, FCKeditor 2.6.0, and Xinha 0.95.

After some discussion, we've decided to focus our attention on FCKeditor as our chosen editor. Starting with the Killen Woods (8.07) release, FCKeditor will be our default editor inside MindTouch Deki - this release further stabilized FCKeditor to be used in production systems for aggressive bug testing before we switch it on by default.

8.05.2 Overview

MindTouch Deki 8.05.2 is an incremental bug-fix release. Given the high number of breaking changes in Killen Woods, this release should be considered the last stabilizing release within the Jay Cooke family. The main driver of features for this minor release was the Topsan project,  which is a collaborative effort to describe proteins and their functions. The most notable feature is the addition of global templates - these are Deki templates which are loaded on every page. In combination with our skin template targeting in 8.05.1, this allows you to target any part of the skin on all pages with output from DekiScript. We've added more control over the default content of user pages - this'll let you embed templates and more personalized content whenever somebody joins your Deki community; this is a part of a long-term effort to emphasize features which assist user adoption.

Max has added a slew of new feature for our LDAP authentication service which adds more compatibility support for systems which use LDAPS and OpenLDAP - this underscores our commitment to making it as easy as possible to bridge between your existing systems. Beta testers of the LDAP upgrades are suggested to switch their SIDs upon upgrade.

From the reported bugs by our QA team, as well as the developer community, this release fixes the most common regressions from 8.05.1: the inability to add templates on new pagesand JavaScript output dying if the cache folder is not writable. Steve implemented a faster diffing algorithm, which will improve the comparison times for large documents. Bundled JavaScript libraries were also updated by Karen to their latest versions (YUI 2.5.2, jQuery 1.2.6, SWFUpload 2.1.0).

Courtesy of Damien, 8.05.2 comes with three new Fiesta skins: PRO, Maroon Flash, and MindTouch. The CSS structure for Fiesta has been greatly simplified with the usage of the CSS variables feature - this will make building new skins on top of the Fiesta platform much simpler. At our upcoming DekiCon, the documentation and style refactoring done in Fiesta will be highlighted to help you design your own skin based on Fiesta.

With the release of FireFox 3 (we love you, Mozilla!), our QA team rigorously tested the basic functionality of MindTouch Deki to ensure compatibility. We're happy to report that there should be no problems with using FF3 with MindTouch Deki!

8.05.2a

There were a few issues with internationalization that were raised in the 8.05.2 release, which were resolved for 8.05.2a if internationalization is not a big deal for you, this update will not be required since there were no new features added.

8.05.2b

8.05.2b is a stablization release to address a few regressions in the 8.05.2a release. This update is necessary if you applied 8.05.2a and ran into issues with group permissioning. If you're using FCKeditor, then also consider updating to this release to address corruption in titles with html entities.

Get the release!

8.05.2 Known Issues

FCKeditor

The setting for changing FCKeditor as your default editor has changed; in LocalSettings.php, set:

$wgEditor = "FCKeditor";
Fiesta Pro

If you installed Fiesta Pro before 8.05.1, please be sure to remove the folder before upgrading. Fiesta Pro ships with Deki, and will cause a conflict when upgrading your bits.

8.05 / 8.05.1 Known Issues

If your Javascript stops functioning after upgrade, please make sure your skins/common/cache is writable (chmod 775) and set to your operating system's correct Apache (web user) owner (i.e., chown to "apache", "nobody", "www-data", etc.). Due to some strict error handling, we will currently fail to serve up the proper JS files if the ownership is not correct. This has been fixed for a future release, but existing users will have to manually ensure this is correct. This problem tends to occur on source installs, where the user who is updating Deki Wiki is not the same user as Apache.

Features

  • Improved file uploader - make it easier to attach files to your Deki Wiki
  • IP Address/Username banning 
  • OpenSearch - utilizing the common open OpenSearch format, Deki Wiki search results can be syndicated to third parties while also pulling in search results from other locations
  • Search -Preview search results for pages and files
  • MediaWiki to Deki Wiki converter
  • Talk pages - similar to comments, but a wiki page attached to every page which allows for discussion about the main page
  • Display titles - Allow titles which aren't necessarily paths (currently, editing the title in the editor moves the page - this will allow you to set a display override)
  • Multiple language support - a single Deki Wiki instance can support content in multiple languages; having a language set will localize the interface to the proper language, and provide UI views by language (example: Search)
  • Page restore - treat deletions as a transaction, and allow undeleting by transaction of pages
  • DekiScript
    • added new date (21), number (32), string (23), and culture (4) functions
    • added meta (8) functions for adding meta tags to wiki pages
    • added new web-centric functions (6) for fetching data from text, xml, and html pages
    • added syntax for building maps with dynamic keys (e.g. { ("k" .. "e" .. "y"): "value" )
    • added support for concatenating lists and maps(e.g. { a: 1 } .. { b: 2 }; [ 1, 2 ] .. [ 3, 4 ])
    • added support for accessing xml elements (e.g. xml["//div[@id='content']"])
    • added new # operator for determining the length of lists, maps, strings, and xml selections (e.g. #[ 1, 2, 3], #"hi!" )
    • added new is operator for determing the type of a value (e.g. 123 is num; "hi" is str)
    • added new dekiscript xml elements:
      • <foreach var="id" in="collection">...</foreach>
      • <if test="condition">...</if>
        <elseif test="condition">...</elseif>
        <else>...</else>
      • <define var="id" value="expression">...</define>
    • added implicit environment when invoking extension; the implicit environment carries information about the page, user, and site
    • added new wiki (2) functions
    • enabled any dekiscript function to be defined as a content transform
    • enabled added <img>, <ol>, <ul>, <table>, <textarea> as targets for content transforms
    • enabled all functions in an xml extension to be called from other function inside the same extension
    • enabled execution of dekiscript in attributes (e.g. <a href="http://wiki.developer.mindtouch.com/MindTouch_Deki/Release/Jay_Cooke_(8.05)">Pag Linke</a>)
    • enabled autoconversion from xml to str, num, and bool types
    • enabled dekiscript block (i.e. ) to contain muliple statements separated by semi-colon (;)
    • enabled access to function arguments in xml functions without the "args." prefix (e.g. foo instead of args.foo)
    • improved display of error messages during execution
    • improved parsing of complex dekiscript expressions
    • improved function invocation performance
  • Page Composition Engine
    • added support for multiple content bodies
    • added support for lang attributes in non-template page content
    • improved detection of XSS attacks in dynamically embedded HTML
  • Service Management - new simplified SID scheme (e.g. sid://mindtouch.com/2007/12/dekiscript); previous SIDs remain compatible
  • 8.05.1: Single sign-on (trusted authentication) - put Deki Wiki into a trusted authentication mode where it accepts credentials from Apache/IIS; this allows for integration with systems like NTLM
  • 8.05.1: RSS private feed authentication
  • 8.05.1: Signed headers 

Changelog

MindTouch Deki 8.05.2b

Permalink

    

Bug# Summary Status Opened By Assigned To Severity
#4561 Correct scheme (http/https) not added to children in nav tree resolved crb RoyK minor
#4676 Comments not escaping HTML resolved RoyK RoyK major
#4666 Switching from HTML to WYS doesn't maintain an active toolbar resolved RoyK karena minor
#4562 Group’s permissions are not applied to restricted pages closed DmitryA DmitryA major
#4660 anonymous-output cache does not invalidate when anonymous user's role changes resolved RoyK MaxM minor
#4661 Add revision parameter to wiki.page resolved SteveB SteveB minor
#4645 Make extension icon more pronounced resolved RoyK karena minor
#4657 show path to element where the error message originate from resolved SteveB SteveB minor
#4647 Date.Calendar doesn't work as expected resolved SteveB SteveB minor
#4643 Title corrupts htmlentities resolved RoyK karena minor
#4620 String.Escape has wront return type resolved SteveB SteveB minor
#4635 Allow negative length in string.substr resolved SteveB SteveB minor
#4636 add string functions for character recognition resolved SteveB SteveB minor
#4641 Add json.parse resolved SteveB SteveB minor
#4610 wiki.PageExists must check for READ permission resolved SteveB SteveB minor
#4612 Invalid DekiScript is permanently embedded into a template page when saving resolved SteveB SteveB minor
#4593 having two span classes on a page, first one works, second one doesn't resolved coreyg SteveB minor
#4617 User.Gravatar: embed output as a URI instead of an XML document resolved SteveB SteveB minor
#4618 Add implicit __index variable in foreach loops resolved SteveB SteveB minor
#4603 Original content-types are not respected during restore and revert operations resolved SteveB SteveB minor

    

MindTouch Deki 8.05.2a

Permalink

       

Bug# Summary Status Opened By Assigned To Severity
#4552 createdb.sh: add options to specify tables.sql and data.sql resolved PeteE PeteE minor
#4551 add flag to createdb.sh to not requre storage settings resolved PeteE PeteE minor
#4536 Custom logo uri for dekiscript/extensions is not currently implemented resolved Guerric SteveB minor
#4543 The "Built-in Functions" link rendered in the GET:site/functions call is broken resolved Guerric SteveB minor
#4503 PUT:groups/{id} should allow local groups to be renamed resolved Guerric MaxM feature
#4546 Renamed admin users cannot login resolved MaxM MaxM major
#4523 Installer needs to set security/admin-user-for-impersonation resolved MaxM RoyK major
#4477 GET:pages/{pageid}/comments/{commentnumber}/content returns comment in a wrong encoding resolved daniils MaxM minor
#4516 Block quote button isn’t blocked for titles closed DmitryA karena major
#4519 define $PATH for index filters resolved PeteE mathieuo minor
#4522 docx indexing issue on Ubuntu 8.04 resolved mathieuo mathieuo minor
#4518 Session doesn't restore when flash uploader is used resolved karena karena minor
#4496 Unable to link to user pages from link dialog closed brigettek PeteE minor
#4502 Rename /skins/common/attach.php resolved RoyK karena minor
#4494 Bottom of FCK editor under Safari doesn’t displays on the load closed DmitryA karena minor
#4500 Comment encoding is being ignored resolved MaxM MaxM minor
#4499 DekiPlug should automatically encode At() params resolved RoyK RoyK minor
#4492 Navigation Tree resolved peterselejan RoyK tweak
#4450 Table tab indents do not work closed RoyK karena minor
#4454 Page doesn't update after uploading of a file in IE7 closed daniils karena minor

MindTouch Deki 8.05

Permalink

               

Bug# Summary Status Opened By Assigned To Severity
#3827 Editor isn’t containing titles of buttons in FF closed DmitryA karena minor
#3787 Consolidate Javascript JSON libraries to use YUI's JSON lib closed RoyK RoyK minor
#3892 Banned IPs are not enforced closed RoyK DmitryA major
#3824 Dialog page deletion confirmation is not localized to Russian closed DmitryA DmitryA minor
#3777 Need the ability to access page.parent resolved brigettek SteveB feature
#3923 Invoking a dekiscript extension injects invalid javascript markup resolved Guerric SteveB minor
#3835 Insert image returns the correct new image url but the url does not get written to existing image resolved Guerric karena minor
#3909 user registrations resolved RoyK DmitryA minor
#3597 If a huge hierarchy is deleted, there is no reversal mechanism resolved Guerric Guerric major
#3165 parent page with child pages can not be restored after deletion of the parent page. resolved guido Guerric minor
#3792 when making a link which contains a '#' character, everything after the '#' is left out of the page title resolved mstodd Guerric major
#3908 Taiwan is not a province of China, as indicated on installation guide resolved RoyK coreyg minor
#3901 Page history does not show details for head revision closed MaxM DmitryA major
#3864 It’s possible? to insert links to pages instead links to images closed DmitryA DmitryA major
#3654 List: add list functions resolved SteveB SteveB feature
#3889 configure LuceneService to run as remote service resolved PeteE PeteE minor
#3656 Xml: add functions to values from xml data-structures resolved SteveB SteveB feature
#3897 Better error message in multil-language mode after language selection for no results resolved RoyK DmitryA minor
#3898 search returns zero results for single-language site resolved PeteE PeteE minor
#3761 Fallback for new attach dialog resolved RoyK karena minor
#3894 Unclear path to classic uploader resolved RoyK karena minor
#3895 searching by language includes other languages resolved PeteE PeteE minor
#3494 Data loss occurs when merging conflicting edits resolved brigettek SteveB major
#3891 Bans and Restore do not show up in navigation resolved PeteE PeteE minor
#3874 Recent changes displays items with single quotes incorrectly resolved Guerric PeteE minor
#3477 SID: revised service instance definition URI format resolved SteveB SteveB tweak
#3687 Visual appearances page has visual defects in 800x600 screen resolution closed mozhechkov mozhechkov minor
#3890 search results displaying markup resolved PeteE PeteE minor
#3545 Required fields are not mandatory when sending email links closed merktnichts DmitryA minor
#3881 Editor becomes corrupt in HTML Full Screen mode closed DmitryA DmitryA major
#3336 Characters in configuration text fields converted to html codes closed rawlinc DmitryA minor
#3886 links passed to templates as arguments lead to unexpected results resolved brigettek SteveB minor
#3455 Creating a dekiscript extension with invalid markup requires a dekihost restart resolved Guerric SteveB crash
#3341 DekiScript: Need to be able to use template arguments in HTML tag attributes resolved brigettek SteveB minor
#3821 web.html needs to extract the <body> element as contents with markup resolved brigettek SteveB minor
#3862 noinclude is not getting scoped correctly resolved brigettek SteveB minor
#3318 Recent changes: allow to show changes beyond 7 days, by default always show changes if changes exist resolved SteveB SteveB minor
#3884 change opensearch ShortName to sitename resolved PeteE PeteE minor
#3582 Metadata for individual wiki pages resolved coreyg RoyK minor
#3879 Clicking the "Home" node in the navigator does not populate correct path closed RoyK mozhechkov major
#3880 Move dialog uses incorrect encoding for the title closed RoyK mozhechkov major
#3854 In double redirects page, table have a visual defect closed mozhechkov mozhechkov minor
#3865 Unable to insert link in MSIE closed DmitryA karena major
#3818 Flash uploader not showing status if you click on other file area closed coreyg karena minor
#3869 Move pages doesn't show a success message closed RoyK DmitryA minor
#3870 Change xpath notations to relative, not absolute closed RoyK                 minor
#3877 External logins throw an error resolved RoyK PeteE major
#3873 Restoring a page throws a conflict resolved RoyK MaxM minor
#3875 Creating a local user throws an error closed RoyK                 major
#3876 Restricting a page throws a 400 error closed RoyK                 major
#3871 Editing a page should not set the display title, unless necessary closed RoyK                 minor
#3866 Comment deletion produces a visual artifact resolved SteveB SteveB minor
#3830 Save to PDF feature doesn’t work closed DmitryA DmitryA major
#3729 Error with overlay of S on the save closed coreyg karena minor
#3853 Pages with two slash displays with one slash closed DmitryA DmitryA major
#3861 external link is not getting mapped to mediawiki.external resolved brigettek SteveB minor
#3859 2nd pass of mediawiki conversion should not convert [[]]'s inside of nowiki tags resolved brigettek SteveB minor
#3833 && and || operators seem to be reversed resolved brigettek SteveB minor
#3662 Double information after permissions updating closed DmitryA DmitryA minor
#3841 PrinceXML CJK support resolved PeteE PeteE minor
#3795 Page title's with question marks are not working closed Guerric Guerric minor
#3846 JavaScript error during page saving in FCKeditor closed DmitryA karena crash
#3766 Vertical scrollbar appeared during typing first symbol of list in the FCKeditor closed DmitryA karena minor
#3838 Yellow strip doesn’t hides after comment removing closed DmitryA DmitryA minor
#3844 Moving pages does not set correct parent closed RoyK daniils major
#3845 Mozilla: Need backlinks to be on a separate page closed RoyK                 minor
#3834 NullReferenceException in POST/PUT: groups when role isn't provided resolved MaxM MaxM minor
#3817 Dates in updates wrong closed RoyK DmitryA minor
#3820 Variable: bool for whether TOC shows up or not resolved RoyK RoyK minor
#3815 Nav pane is returning encoded ?, which causes problems for index.php?title=foobar links resolved RoyK brigettek major
#3797 Unexpected arrow during page creating closed DmitryA DmitryA minor
#3805 MediaWikiConverter: parametrized attributes are not properly processed resolved SteveB SteveB minor
#3462 MediaWiki Converter: Need equivalent DekiScript for {#ifexist:} resolved brigettek SteveB minor
#3617 MediaWiki Converter: < p > tag is sometimes not getting inserted where expected resolved brigettek SteveB minor
#3734 Need ability to control whether to show TOC resolved brigettek SteveB minor
#3782 links within brackets that are not links are not getting resolved resolved brigettek SteveB minor
#3446 MediaWiki Converter: We are losing the text inside of includeonly resolved brigettek SteveB minor
#3780 Anchor information is being dropped from interwiki links resolved brigettek SteveB minor
#3781 Related language namespaces are not getting localized resolved brigettek SteveB minor
#3785 Template link with []'s is not getting resolved resolved brigettek SteveB minor
#3802 Template argument is not getting recognized in link resolved brigettek SteveB minor
#3803 Clarify that the lookup does both a group and users lookup in restrict dialog resolved RoyK RoyK minor
#3790 Thinkfree extensions do not work resolved RoyK SteveB minor
#3783 Need to handle localized templates when they are included via the template dialog resolved brigettek SteveB minor
#3784 Need ability to retrieve page.language from mediawiki.internal extension resolved brigettek SteveB minor
#3646 Meta Data Extension closed Howleyda SteveB minor
#3791 Breadcrumbs doesn't encode titles properly closed RoyK DmitryA minor
#3788 /@api/deki/archive/pages?title=XXXX search does not work for namespaced pages closed Guerric DmitryA minor
#3458 MediaWiki Converter: Need a mechanism to get anchor encoding resolved brigettek brigettek minor
#3793 Not enough info displayed to user for status 410 in get: site/settings does not resolved MaxM MaxM minor
#3714 Page options closed RoyK RoyK minor
#3577 MediaWiki Converter: What to do with links to special pages that do not exist on Deki Wiki? resolved brigettek brigettek minor
#3250 Need to expose breadcrumbs navigation closed brigettek RoyK minor
#3240 Need to update search to incorporate page language closed brigettek RoyK minor
#3755 Error with Extension dialog closed coreyg DmitryA minor
#3762 Unexpected results when using date.DiffXXX resolved brigettek SteveB minor
#3772 grant create temporary tables to wikiuser account resolved PeteE PeteE major
#3713 Language loading closed RoyK RoyK minor
#3736 Multi-body responses closed RoyK RoyK minor
#3744 Show language list in skin closed RoyK RoyK minor
#3701 Some parts of Control panel shouldn’t have large letters closed DmitryA DmitryA minor
#3238 Talk page UI resolved brigettek brigettek minor
#3098