Version 16 (modified by 10 years ago) ( diff ) | ,
---|
Documenting API changes since 1.1.1
The next stable version of Trac will be named 1.2 and will contain the cumulative changes made in the successive 1.1.x releases.
These notes reflect the current status for 1.1.2, in trunk.
Proposed changes are prefixed with an OPEN mark and the paragraph is written in italics.
Summary
- Prerequisites
- Detailed List of Developer Visible Changes
- Other Modifications made to the 1.0 API
- New in the 1.1.2 API
Prerequisites
Only Python versions 2.6 and 2.7 are supported.
Modified Dependencies
jQuery and jQuery UI (bundled)
The bundled version of jQuery will be 1.9 / 2.0 instead of 1.8.3 in Trac 1.1.1.
See jQuery release notes for the corresponding major updates:
OPEN The bundled version of the full minified jQuery UI package will be 1.10.1. See #11019.
Babel (optional)
The internationalization support (i18) for Trac is depending on Babel, version 0.9.5 and later. Support has been added for Babel 1.0 through 1.3 (the most recent at the time of this release).
Genshi (mandatory)
Genshi 0.6.x and 0.7 are supported.
Subversion (optional)
Subversion 1.6 - 1.8 are supported.
Git (optional)
Git 1.5.6 - 2.0 are supported.
New Dependencies
None!
Detailed List of Developer Visible Changes
Ticket | Summary |
---|---|
#10994 | Add drag and drop and other dynamic behavior to the admin panels containing enum lists |
API Changes |
The function |
#11519 | Allow default_handler to be set from the Basic Settings admin page |
API Changes |
The |
Component: database backend (1 match) |
|
Ticket | Summary |
#11581 | Add an abstract base class for connection classes |
API Changes |
Added an abstract base class |
Component: general (10 matches) |
|
Ticket | Summary |
#11056 | Disable submit buttons if required items are not selected |
API Changes |
To add a datepicker or datetimepicker to an element, add the
To disable a submit button associated with a set of checkboxes or a file selector, add the In both cases there is no need to add any specific JavaScript code to the page. |
#11129 | Handle CSS as text/css type |
API Changes |
The rendering |
#11406 | diff.css is added twice on the diff_view page |
API Changes |
Plugins using |
#11494 | Remove deprecated functions and methods from 0.10 and earlier |
API Changes |
Removed functions and methods that have been deprecated since Trac 0.11 or earlier.
Removed functions and methods that were deprecated and scheduled for removal in Trac 1.0 or earlier:
|
#11565 | Reduce code duplication in about and error pages |
API Changes |
|
#11568 | All Trac exceptions should inherit from a base class in Trac |
API Changes |
All exceptions defined in Trac inherit from |
#11587 | Implement ISystemInfoProvider in git connector and database connection classes |
API Changes |
The db, web server and git version info are not directly appended to |
#11600 | Remove Python 2.5 compatibility |
API Changes |
Removed Python 2.5 compatibility:
Utilized Python 2.6 features:
The function |
#11605 | Remove deprecated db parameters |
API Changes |
|
#11609 | Add realm attribute to Model classes |
API Changes |
Added |
Component: notification (1 match) |
|
Ticket | Summary |
#11636 | Refactoring of trac.notification |
API Changes |
|
Component: rendering (2 matches) |
|
Ticket | Summary |
#11126 | Some templates could override layout (and theme) stylesheets with own stylesheets |
API Changes |
|
#11169 | `render_resource_link` should add the "missing" class if the resource doesn't exist |
API Changes |
When
Added assertion with error message to check that the first argument to |
Component: report system (2 matches) |
|
Ticket | Summary |
#11246 | Having keywords in reports be followable |
API Changes |
|
#11697 | ReportModule uses magic number -1 where None should be used |
API Changes |
Added class attribute |
Component: ticket system (2 matches) |
|
Ticket | Summary |
#11145 | wrap author information for ticket change comments in a span to make them stylable |
API Changes |
|
#11499 | Eliminate redundant code in milestone and admin milestone templates / modules |
API Changes |
Added methods to
Added function
New template |
Component: version control (1 match) |
|
Ticket | Summary |
#11610 | Move Changeset, Node and Repository classes to model.py |
API Changes |
|
Component: wiki system (3 matches) |
|
Ticket | Summary |
#10834 | Option to add line numbers to code blocks |
API Changes |
The WikiProcessor argument parser supports dashes in the argument value. |
#11244 | Permissions: setting a Wiki page "read-only" does not restrict adding attachments |
API Changes |
Added methods |
#11544 | Version argument in Resource object is ignored when initializing a WikiPage |
API Changes |
|
Other Modifications made to the 1.0 API
Take the will be removed in version 1.1.1 comments in the code seriously. The earlier the planned API changes in 1.1.x, the better (gives more time to plugin authors to adapt). TODO
Database API Changes
Environment.get_db_cnx
has been removed
Following the deprecation made in 0.12, the method Environment.get_db_cnx
has been removed.
One should now only use the context managers for retrieving a database Connection in read or write mode.
- a read-only Connection can be used to form queries:
a
with env.db_query as db: ...
db
instance obtained the above way should only be used for executing SELECT queries - a writable Connection can be used to modify the database content in a transaction:
a
with env.db_transaction as db: ...
db
instance obtained the above way can be used to execute INSERT/UPDATE/DELETE queries; they will be committed when the last such automatic transaction in the control flow completes successfully. See DatabaseApi for the full details.
Environment.get_read_db
and the decorators @with_transaction(env)
and env.with_transaction()
have been deprecated since Trac 1.0 and will be removed in Trac 1.3.1.
db
parameters removed from function and method signatures
With the introduction of @with_transaction(env)
decorators in 0.12 and continuing with the introduction of the database connection context managers in 1.0, the db
parameters passed as function and method arguments became deprecated.
The db
parameters have been removed from nearly all function and method signatures. The db
arguments are still present on methods of IEnvironmentParticipant
implementations, but are deprecated and should no longer be used. They will be removed in 1.3.1.
ConnectionBase
class
The ConnectionBase
class defines an abstract interface that database backends must adhere to when implementing a Connection
class.
Template and CSS changes
tt
tags are not support in HTML5 and have been replaced with code
tags in Trac (#11094). The styling of tt
and code
tags is the same in Trac , but code
tags should be used since the styling for tt
tags will be removed in a future version of Trac.
The about.css
stylesheet has been removed and the rules contained in that stylesheet have been moved to trac.css
. The table of environment information on the Error and About pages have been extracted to a new template environment_info.html
and the markup and associated rules in the stylesheet have been significantly changed.
Many more changes to be added, depending on how details we want to get. TracUpgrade#CustomizedTemplates claims that changes to id
s and CSS class
es will be documented in ApiChanges.
New in the 1.1.2 API
Be sure to have a look at the new ApiDocs (for latest trunk).
This is a work in progress - coverage is still not yet complete.