Edgewall Software

Version 4 (modified by ErikRose, 18 years ago) ( diff )

Spam isn't an acronym.

Release Notes for Trac 0.10

Improved modularity

Trac now supports database and version control backends as third-party plugins.

It is now easier to add support for new database backends. In addition to the already existing support for SQLite and PostgreSQL, Trac now features experimental support for the MySQL database.

As for the version control systems, Trac still features best of breed Subversion support, but the dependency on the Subversion bindings and libraries is no longer mandatory. This will make life far easier for those wanting to use Trac without Subversion. Other version system backends are supported by the way of external plugins.

Improved notification system

Placeholder — manu, can you take care of this one?

Advanced diff support

The TracRevisionLog view can now be used to select two arbitrary revisions of a given path in the repository and see the differences between them, in the familiar TracChangeset view.

A related change is the possibility to navigate through a sequence of restricted changesets. A restricted changeset is the subset of changes within a changeset that are corresponding to a given path. One can easily start navigating such a sequence by following the new Last Change navigation link present for the currently browsed path.

It's even possible to compare two arbitrary paths (at any given revision). This can be useful to check the differences between a tagged version and the trunk, or to review the set of differences between two branches…

InterWiki and InterTrac support

An InterWiki link can be used for referring to a Wiki page located in another Wiki system, and by extension, to any object located in any other Web application, provided a simple URL mapping can be done.

An InterTrac link can be seen as a scoped TracLinks. It is used for referring to a Trac resource (Wiki page, changeset, ticket, …) located in another Trac environment. This makes it easier to work in a TracMultipleProjects setup, and seemlessly refer to resources from one Trac to another.

Use WSGI as web-frontend protocol

Placeholder — cmlenz, your take ;)

Better protection against Spam

Trac now has in place the internal hooks necessary to filter out spam content. In order to take benefit from this, the SpamFilter plugin must be installed and enabled.

We should probably package that plugin separately, but put it right besides the Trac packages, on the TracDownload page.

Wiki syntax improvements

Numerous improvements have been made on the WikiFormatting syntax.

  • Headings can optionally be given explicit id
  • MoinMoin ["internal free link"] syntax is now supported
  • Introduced citation syntax for the Wiki (e-mail style)
  • More robust parsing and formatting of Wiki lists and robust coupling of lists and quotes
  • Improve the way external links are displayed.
  • Lots of new ways to refer to specific repository views (diff:from//to, log:, [x:y], rx:y)
  • htdocs:, useful for refering to local resources in TracStandalone
  • MoinMoin-style syntax for description lists
  • Removed support for direct embedding of images using links: use the [[Image]] macro instead.

Developer visible changes

unicode everywhere

Trac used to handle text content by using str objects, in which bytes where encoding Unicode characters using the UTF-8 encoding. This lead to various problems with most non-western languages, and the decision was made to use the dedicated unicode datatype to be able to handle consistently text written in any language.

This removed all the problems we had when cutting UTF-8 encoded strings in the middle of a byte sequence for encoding one character.

Better way to programatically generate of HTML fragments

Placeholder: introduce briefly the Markup and Element classes

Note: See TracWiki for help on using the wiki.