Edgewall Software

1.1 | 1.3

Release Notes for Trac 1.2 Hermes Release

Trac 1.2 is a stable version of Trac.
These notes reflect the final status.

Highlights

  • Extensible notification system (#3517)
  • Notification preference panel (#4056)
  • Usernames replaced with full names (#7339)
  • Restyled ticket changelog (#11835)
  • Workflow controls on the New Ticket page (#2045)
  • Editable wiki page version comments (#6573)
  • Datetime custom fields (#1942)

Maintenance Releases

Overview

1.2.6

6 / 6

1.2.5

4 / 4

1.2.4

9 / 9

1.2.3

26 / 26

1.2.2

22 / 22

1.2.1

33 / 33

Tickets with release notes

Milestone: 1.2.6 (2 matches)

Ticket Release Notes
#13209

Modified text of error message when permission not granted because user with PERMISSION_GRANT doesn't possess the permission.

#13298

Fixed ticket autopreview triggering without a form change.

Milestone: 1.2.5 (3 matches)

Ticket Release Notes
#13178

Fix unit-test failing with non en_US locale.

#13192

Fixed KeyError in log file due to invalid query filter request.

#11002

List owner, reporter and updater of the ticket in To header, when [notification] use_public_cc option is enabled.

Milestone: 1.2.4 (8 matches)

Ticket Release Notes
#13121

Fixed TracError exception and preserve log level and log file options when the log type is changed to none.

#13061

Improved error message when environment is incorrect version.

#13062

Modified trac-pre-commit-hook to use Trac 1.0 database API.

#13063
  • TracStandalone checks for existence of environment and authorization file paths.
  • Fixed absolute path not used for pidfile.
#13078

Fix an error raised when custom field of type time is constrained by range on PostgreSQL.

#13079

Do not translate custom field's labels.

#13114

Fixed margins around quoted lines containing bullet points.

#12946

Fixed instance of empty comment block in timeline.

Milestone: 1.2.3 (22 matches)

Ticket Release Notes
#6613

Added a notification subscriber for new tickets.

#11841

Fixed poor layout of Basic Settings admin page.

#11846

A module in the plugins directory that raises SystemExit exception will no longer disable the Trac instance.

#12029

Query system returns None for time field being NULL rather than an empty string and fix query system crashing when time and/or changetime columns are NULL and saved query exists in the user's session.

#12158

Components that failed to load due to missing required dependencies would still show on the plugin admin page.

#12641

Empty configuration sections are listed in command completion output of trac-admin interactive mode.

#12803

LF is always used as separator when generating HTML rather than using platform-dependent line separator.

#12829

Fixed failure to save default version from admin panel when trac.ini was not writable.

#12838

Use public schema by default for the Postgres database.

#12855

Workflow action is not shown for set_owner_to_self operation when ticket status is equal to the new state and ticket owner is the logged-in user.

#12864

Fix incorrect None bytes in repository browser when Node.content_length is None.

#12875

Fixed wiki formatting hint not visible for ticket description when wiki toolbars disabled.

#12890

Removed unintended fieldset around ticket description field.

#12892

The Release field on the Version edit page is no longer populated with the current datetime when the version release date is not set.

#12913

Fixed incorrect logging of negated permission as invalid in AuthzPolicy.

#12916

Fixed incorrect rendering of TracError message containing a div.

#12938

Fixed some actions not available on batch modify page.

#12962

The 'summary' metadata is read for single file plugins.

#12964

Request headers are configurable through the [http-headers] section of trac.ini.

#12989

The psycopg2-binary package satisfies requirements for using the PostgreSQL database backend.

#13015

Fix ProgrammingError raised on postgresql when query sorting by custom time field.

#13041

Fixed incorrect rendering of child preference panels.

Milestone: 1.2.2 (19 matches)

Ticket Release Notes
#8790

Invalid logging configuration can no longer disable the Trac instance when saving the configuration through the WebAdmin. Invalid configuration changes are not saved and a warning is displayed with the exception message.

#11949

The ticket author is used in the notification from field when [notification] smtp_from_author = enabled, rather than the ticket reporter. This changes the behavior for users with TICKET_ADMIN, since they are allowed to edit the Reporter field.

#12218

Filename, module or package can be passed to make pylint.

#12688

Updated TracQuery documentation to clarify the results returned by querying a modified date range.

#12724

Fixed incorrect CC field when full name but not email set in preferences.

#12737

Message is printed to console when synchronizing a non-cached repository using trac-admin.

#12744

Extra entries and comments in htpasswd and htdigest files are ignored.

#12759

Fix a regression of #12658, ticket notification not sending for authenticated users without email.

#12761

Render message in place of diff when changeset is not rendered due to exceeding [changeset] max_diff_bytes or [changeset] max_diff_files.

#12764

Fix [notification] use_short_addr and smtp_default_domain options being ignored for subscriptions without email address.

#12775

Fix signature lines in notification mails.

#12797

Error message differs for Git control files not found vs path does not exist.

#12818

The post_process_request method can redirect during exception handling from an exception raised in process_request (fix for regression in r14604).

#12823

Workflow hint is not added in transition to *, which restores the behavior prior to Trac 1.2. The behavior is utilized by the AdvancedTicketWorkflowPlugin's triage operation.

#12834

The positional arguments of the initenv trac-admin command are optional when using the --config switch.

#12837

Fixed poor error message when resource id is empty or None.

#12841

Fixed missing report heading in first group when value is empty

#12762

Fix incorrectly stripping [ and ] characters from the filename given to Image macro.

#12779

Fixed [logging] log_level and log_type were incorrectly case-sensitive after Trac 1.1.3.

Milestone: 1.2.1 (29 matches)

Ticket Release Notes
#10316

Fixed recursive directory copies with the trac-admin deploy command. The target directory cannot be equal to or below any of the source directories (e.g. $env/htdocs is not allowed as a target).

#11928
  • Fix unable to save notification format with no subscription rules in prefs/notification.
  • Add Default format in prefs/notification.
  • Add [notification] default_format.email option.
#12597

Fixed recursion in permission policy checks.

#12608

Fixed ValueError when version or old_version argument to WikiModule not an int.

#12617

Fix ValueError from datetime with local timezone when the offset isn't a whole number of minutes.

#12633

Add section and option named arguments which do glob matching to [[TracIni]] macro.

#12637

A ConfigurationError exception is raised when there is an error parsing the authz file for AuthzSourcePolicy, or if the file can't be found.

#12638

Fix invalid xhtml being generated for definition list after paragraph.

#12654

AuthzPolicy will only raise a ConfigurationError if it's in the list of permission_policies.

#12658

Fix email address not resolving for user without email.

#12660

EmailDistributor.resolvers returns only configured resolvers.

#12668

The TracAdmin upgrade command documentation specifies that the backup location is governed by [trac] backup_dir.

#12669

Replaced use of deprecated encrypt method from passlib library with hash.

#12671

Improve usability of Reply and Edit buttons associated with ticket comments

#12676

Fixed regression from r14208 for Pygments < 1.4.

#12691

Reduce logging level from error to warning for TracError: Session ID must be alphanumeric.

#12697

Error message is displayed rather than traceback when QuerySyntaxError is raised in TicketQuery macro.

#12700

Fixed failure to add always_notify_updater = TicketUpdaterSubscriber and always_notify_previous_updater = TicketPreviousUpdatersSubscriber to [notification-subscribers] in trac.ini when the default value of always_notify_updater was not present in trac.ini.

#12701

Added wikitext class to input fields that accept wiki markup.

#12707

Added shortcut for modifying state of Column checkboxes on Custom Query page.

#12708

VersionConflict and ImportError exceptions from single file plugins are logged at ERROR level. Previously a traceback would result.

#12709

Buttons in report view are available even when no query.

#12718

Improved logging for classes inheriting from EmailDistributor.

#12720

Milestone that exists but user does not have permission to view is not rendered in the missing style.

#12727

Directory listing in the Browser and Revision Log views label the date column as Date when Time format is Absolute. The column is labeled as Age when Time format is Relative.

#12730

Fixed missing ticket field change conflict markers (regression).

#12734

Invalid actions in authz file are logged at warning level.

#12748

Fixed error when calling Image macro with no arguments: [[Image(,)]].

#9401

Added an anchor to each option and highlight the corresponding entry in [[TracIni]] macro.

Trac 1.2: Detailed User Visible Changes

Component: admin/web (5 matches)

Ticket Release Notes
#10994

Added Select All checkboxes to the admin Components, Milestones, Priorities, Repositories, Resolutions, Severities, Ticket Types and Versions tables.

#11099

Added a Copy Permissions form to the Permissions admin page.

#11417

Click on row label of Permissions admin page toggles all of the checkboxes in the group.

#11519

The [trac] default_handler option can be set from the Basic Settings admin page. A ConfigurationError is raised when navigating to the base url if [trac] default_handler is set to a class for which is_valid_default_handler is False.

#11661

The milestone table on the Milestone Admin page has a link from the ticket count to a query showing all tickets associated with the milestone, grouped by status. The link is only present when the ticket count is not zero.

Component: attachment (1 match)

Ticket Release Notes
#11395

Unicode control codes are replaced with spaces in attachment filenames.

Component: contrib (1 match)

Ticket Release Notes
#12044

Fixed htdigest appending newlines to every existing entry each time a new entry was added.

Component: database backend (4 matches)

Ticket Release Notes
#8396

Use mediumtext type for text columns on MySQL database since text type is too short.

#11969

Minimum version of pysqlite is enforced to be 2.4.1. Minimum version of SQLite is enforced to be 3.0.0.

#12028

Fixed regression in [13888] that resulted in KeyError when backing up a PostgreSQL database.

#12096

psycopg2 and MySQLdb are specified as dependencies in setup.py's extras_require.

Component: general (33 matches)

Ticket Release Notes
#6551

Fixed incorrect highlighting of unmodified values in the Configuration section of the About Trac page.

#9162

Preference panels are modular and can be individually enabled and disabled.

#11033

Handle case of report description being None for report variable substitution implemented in #10979.

#11056

Submit buttons are disabled if the required items are not selected.

#11094

Replaced HTML tt tags with code tags.

#11406

Removed duplicate linking of diff.css when rendering diff_view.html.

#11412

Moved inline styling in about.html template to external stylesheet, about.css.

#11416

Fix date/time picker not working with 24 hour time since updating to jquery-ui-addon v1.1.1

#11437
  • The default values of configuration options are written to trac.ini when a plugin is enabled through the web administration page or using TracAdmin, provided the options don't already exist in trac.ini or one of its parent configurations.
  • # option-name = <inherited> is not written to trac.ini when the option is specified in a parent configuration.
#11494

Removed old-style macro examples in sample-plugins directory.

#11529

Relative paths for the [authz_policy] authz_file option are resolved relative to the Environment's conf directory, rather than relative to the Environment directory.

#11532

Removed listing of default values from option documentation. The default values aren't needed in the description since the TracIni macro outputs a column with the default value, and removing them makes the documentation more accurate and easier to maintain.

#11542

List of attachments is shown on the wiki, ticket and milestone delete pages, along with a warning that the attachments will be deleted if the resource is deleted.

#11565

Reduced code duplication in the about.html and error.html templates.

#11573

The [trac] default_date_format and default_dateinfo_format, and the [logging] log_type and log_level options are now ChoiceOptions. A ConfigurationError exception will be raised if an invalid entry is specified for one of the options in trac.ini.

#11587

The GitConnector and SubversionConnector are required components when a repository of their type is configured. When required, the Component cannot be disabled from the plugin admin page and its version is displayed on the About and Error pages. With these changes the behavior of the repository connectors matches that of database connectors.

#11597

The default_handler can be set as a session preference.

#11600

Minimum required Python version is 2.6.

#11666

Submit buttons are consistently located below the fieldsets on forms (horizontal-forms excepted).

#11766

Model objects now use their name or id as part of their repr e.g. WikiPage u'StartPage@5'>.

#11813
  • Improved layout of elements on the Advanced, Date & Time and Language preferences panels.
  • Combined Date & Time and Language preference panels as Localization.
  • Moved default_handler from the General to the User Interface preferences panel.
  • Moved localization settings on the Basic Settings admin page to their own fieldset.
  • Renamed Date relative/absolute format label to Time format.
#11815

Fixed test execution failure when unit test components remained enabled in functional tests.

#11823
  • Removed deprecated compat attribute of InterTrac links.
  • Removed support for legacy admin pages contributed by the WebAdminPlugin (Trac < 0.11).
  • Removed support for Trac 0.10 ITimelineEventProviders.
#11824

Removed from documentation the version in which a configuration option was added for versions of Trac < 0.12.

#11830

Reduced size of editor symbols on wiki history page.

#11890

Removed support for missing email module (Python 2.1) and old module names (Python 2.4).

#11913

Replaced use of deprecated Environment.get_read_db() with transaction context manager db_query.

#11921

Fixed regression in [13323]: Default language was always selected even when a language had been set.

#11929

Replaced use of deprecated with_transaction decorator with transaction context manager.

#11956

The .order attributes of the options in the [mainnav] and [metanav] sections control navigation item sort order. The options [trac] mainnav and [trac] metanav have been removed.

#11982

Removed dependency on ConfigObj. The package was previously needed by AuthzPolicy.

#12008

Lazy attributes can be invalidated for re-evaluation even if not evaluated yet.

#12047

Replaced all print statements with print function calls.

Component: notification (14 matches)

Ticket Release Notes
#3517

Allow plugins to extend notification system.

#4056

Added a Notification preferences panel.

#11658

Updated notification options documentation using content that was previously on the TracNotification page.

#11853

Preference panels now support modular child panels.

#11854

Split up trac.notification module into a package of sub-modules.

#11869

Allow notification subscribers to watch individual resources etc.

#11875

Added a new [notification-subscriber] config section for general configuration of notification subscription defaults, and replacing the [notification] always_notify_* options. Added a new SubscriberListMacro.

#11926

Fix missing X-Trac-Ticket-URL and X-Trac-Ticket-ID headers in ticket notification mail.

#11927
  • Make EmailDistributor allow text/html format
  • Create always multipart/related message as root
  • Create multipart/alternative message with text/plain and text/html if text/html is preferred
  • Fallback to text/plain format when text/html formatter fails
#11933

Fixed regression in notification of previous owner when ticket is reassigned.

#11934
  • Fix not working smtp_always_cc and smtp_always_bcc options in [notification] section.
  • Fix not working smtp_from_author option in [notification] section.
#11941

Allow to reorder subscription rules using drag-and-drop and submit in bulk in notifications panel of preferences.

#12035

Fix issues with Add button in notifications panel.

  • Add button not working when no subscription rules.
  • Label of added rule is empty on Internet Explorer.
#12055

Fixed raising TypeError from parse_subscriber_config when an attribute is used in [notification-subscriptions].

Component: query system (1 match)

Ticket Release Notes
#11436

Added datepickers to time fields with the Relative format on the Query page. This change restores datepickers to the Created and Modified fields.

Component: rendering (1 match)

Ticket Release Notes
#11795

Removed support for SilverCity, Enscript and PhpRenderer syntax highlighters.

Component: report system (2 matches)

Ticket Release Notes
#10979

Dynamic variables can be used in the report title and description.

#11697
  • Fine-grained permissions can be used to restrict access to the Report List page using the resource id -1.
  • Fine-grained permission checks are implemented on the Report List resource (for ReportModule) and the ticket realm (for QueryModule) before displaying the mainnav and contextual navigation items.
  • Fine-grained permissions can be used to grant the REPORT_CREATE permission for the report realm (using [report:*] in the authz file).

Component: roadmap (1 match)

Ticket Release Notes
#11336

When editing or deleting a milestone and there are no tickets associated with the milestone, the retarget elements are not shown and a hint is shown in their place.

Component: ticket system (21 matches)

Ticket Release Notes
#1942

Added support for custom ticket fields of type time.

#10018

Added may_set_owner workflow operation which is like set_owner but the value defaults to the existing owner.

#10772
  • Added [ticket] allowed_empty_fields, which specifies ticket select fields for which an empty value is one of the selections. The option was named optional_fields prior to 1.1.6.
  • Added Clear Default button to the Component and Enum pages.
#10833

Fine-grained permission check is used to populate the list of owners when [ticket] restrict_owner = True.

#10853

In new tickets, custom time ticket fields may default to an absolute or relative date / time.

#10854

In TracBatchModify, custom time ticket fields can be changed with a date(time)picker popup control.

#10924

Fixed batch modification when no fields are changed.

#10984

The milestone select is hidden from the ticket form if the user doesn't have MILESTONE_VIEW. Previously an empty select would be rendered.

#11300

The default_milestone and default_version can be set to empty using the Clear default buttons on the corresponding Ticket System admin panels.

#11499
  • Changed styling of Milestone, Ticket System Admin and Repository Admin edit pages by removing fieldsets around the Descriptions.
  • When milestone edit validations fail on the Milestone Admin page, a warning is added rather than redirecting to the error page.
#11622

CommitTicketUpdater recognizes long-form ticket references with a trailing #comment:N or #comment:description in the token.

#11699

The usernames in the default workflow hints are wrapped in spans with class trac-author, trac-author-anonymous or trac-author-none.

#11717

The entire h3 is highlighted when linking to a ticket comment, rather than just the enclosed span.

#11794

The ticket prefs checkbox label was changed from Comments only to Show property changes.

#11828

Added label attribute to the TracWorkflow actions and deprecated the name attribute. If neither name nor label is specified, the label will be created from the action name by replacing underscores with whitespace.

If not specified, the label attribute of TracTicketsCustomFields will be created from the custom field name by replacing underscores with whitespace.

#11839

Groups and permissions can be specified in the comma-separated list of the set_owner workflow attribute.

#11931

The workflow controls in the batch modify section of the Query page are disabled until the associated action is selected.

#11944

Fixed: custom workflow attributes would raise a KeyError.

#11948

In the db33 upgrade step, the create_and_assign action is only added if the assigned state exists in the workflow.

#11960

Fixed warning The action "None" is not available when cloning a ticket.

#11996

Fixed: default milestone selected after ticket creation when milestone empty.

Component: timeline (5 matches)

Ticket Release Notes
#10885

Optionally display the component of tickets in their timeline entries ([timeline] ticket_show_component setting).

#11051

Milestone timeline filter label changed from Milestones reached to Milestones completed.

#11729

Reworded the timeline filter text.

#11986

Access to timeline can be controlled using TracFineGrainedPermissions.

#12048

Fixed timeline CSS rules interfering with styling of custom themes.

Component: version control (7 matches)

Ticket Release Notes
#3676

Add an auto-increment primary key to node_change table and indices (repos, rev, path) and (repos, path, rev).

#11610

Git and Mercurial raise a TracError rather than showing a traceback when attempting to view added and deleted files (#9775).

#11703

Removed deprecated [trac] repository_dir configuration option. An upgrade step attempts to move the configuration for the default repository to the [repositories] section.

#11776

The [trac] repository_sync_per_request option was removed and each repository now has a sync_per_request attribute. The default value of sync_per_request is False. An upgrade step handles the migration while preserving the behavior.

The sync_per_request attribute can be set on repositories defined in the database from the Repositories web admin page or using the trac-admin command. For repositories defined in the [repositories] section of trac.ini, the <name>.sync_per_request attribute can be edited.

#11849

Moved repository-related configuration options to new sections.

  • [trac] repository_type[versioncontrol] default_repository_type
  • [trac] authz_file[svn] authz_file
  • [trac] authz_module_name[svn] authz_module_name
#11885

Fixed regression in [13393] due to use of removed repository_sync_per_request attribute of RepositoryManager class.

#11995

Allow plugins to provide changeset bookmarks and render them in the browser, on the revision log and on the timeline.

Component: web frontend (2 matches)

Ticket Release Notes
#10976

jQuery upgraded to 1.8.3, jQuery UI upgraded to 1.9.2 and jQuery UI Timepicker upgraded to 1.1.1.

#11474

Fine-grained permission checks are implemented when rendering an author in the ticket workflow dialog.

Component: wiki system (7 matches)

Ticket Release Notes
#10442

Use some of the more common WikiCreole style markup in the wiki editor toolbar.

#10834

Line numbers and row highlighting can be specified for WikiProcessor code blocks.

#11244

The read-only attribute on wiki pages is now enforced using the ReadonlyWikiPolicy permission policy. ReadonlyWikiPolicy must be added to [trac] permission_policies before DefaultPermissionPolicy, LegacyAttachmentPolicy and, when present, after AuthzPermissionsPolicy. If additional permission policies are enabled, particular care should be given to the order of the policies when upgrading.

#11455

Added support for the prefix in TitleIndex macro to be resolved relative to current wiki page. (E.g. [[TitleIndex(./)]] lists all subpages.)

#11792

Comment and author boxes span width of forms on wiki edit and attachment pages.

#12002

Save notification on wiki page includes a link to the diff of the changes.

#12025

Image macro supports InterWiki prefixes.

Caveats

  • This release requires a database upgrade when upgrading from the 1.0.x series:
    trac-admin $TRAC_ENV upgrade
    

Developer-visible changes

A detailed view of the API changes since 1.0.x can be found in TracDev/ApiChanges/1.1.

Last modified 5 years ago Last modified on Aug 28, 2019, 6:28:44 AM
Note: See TracWiki for help on using the wiki.