Modified: bloodhound/vendor/trac/current/trac/locale/tracini.pot URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/locale/tracini.pot?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/locale/tracini.pot (original) +++ bloodhound/vendor/trac/current/trac/locale/tracini.pot Fri Nov 14 11:06:23 2014 @@ -1,14 +1,14 @@ # Translations template for Trac. -# Copyright (C) 2013 Edgewall Software +# Copyright (C) 2014 Edgewall Software # This file is distributed under the same license as the Trac project. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2013. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2014. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Trac 1.0.2\n" "Report-Msgid-Bugs-To: trac-...@googlegroups.com\n" -"POT-Creation-Date: 2013-03-21 22:54+0100\n" +"POT-Creation-Date: 2014-09-01 12:43+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <l...@li.org>\n" @@ -51,11 +51,11 @@ msgid "" "(''since 0.10'')." msgstr "" -#: tracopt/perm/authz_policy.py:132 +#: tracopt/perm/authz_policy.py:134 msgid "Location of authz policy configuration file." msgstr "" -#: tracopt/perm/config_perm_provider.py:24 +#: tracopt/perm/config_perm_provider.py:27 msgid "" "This section provides a way to add arbitrary permissions to a\n" "Trac environment. This can be useful for adding new permissions to use\n" @@ -66,17 +66,21 @@ msgid "" "and a comma-separated list of permissions. For example:\n" "{{{\n" "[extra-permissions]\n" -"extra_admin = extra_view, extra_modify, extra_delete\n" +"EXTRA_ADMIN = EXTRA_VIEW, EXTRA_MODIFY, EXTRA_DELETE\n" "}}}\n" "This entry will define three new permissions `EXTRA_VIEW`,\n" "`EXTRA_MODIFY` and `EXTRA_DELETE`, as well as a meta-permissions\n" "`EXTRA_ADMIN` that grants all three permissions.\n" "\n" +"The permissions are created in upper-case characters regardless of\n" +"the casing of the definitions in `trac.ini`. For example, the\n" +"definition `extra_view` would create the permission `EXTRA_VIEW`.\n" +"\n" "If you don't want a meta-permission, start the meta-name with an\n" "underscore (`_`):\n" "{{{\n" "[extra-permissions]\n" -"_perms = extra_view, extra_modify\n" +"_perms = EXTRA_VIEW, EXTRA_MODIFY\n" "}}}" msgstr "" @@ -113,68 +117,68 @@ msgstr "" msgid "Send ticket change notification when updating a ticket." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:169 +#: tracopt/versioncontrol/git/git_fs.py:269 msgid "Enable persistent caching of commit tree." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:172 +#: tracopt/versioncontrol/git/git_fs.py:272 msgid "Wrap `GitRepository` in `CachedRepository`." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:175 +#: tracopt/versioncontrol/git/git_fs.py:275 msgid "" "The length at which a sha1 should be abbreviated to (must\n" "be >= 4 and <= 40)." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:180 +#: tracopt/versioncontrol/git/git_fs.py:280 msgid "" "The minimum length of an hex-string for which\n" "auto-detection as sha1 is performed (must be >= 4 and <= 40)." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:185 +#: tracopt/versioncontrol/git/git_fs.py:285 msgid "" "Enable reverse mapping of git email addresses to trac user ids\n" "(costly if you have many users)." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:189 +#: tracopt/versioncontrol/git/git_fs.py:289 msgid "" "Use git-committer id instead of git-author id for the\n" "changeset ''Author'' field." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:194 +#: tracopt/versioncontrol/git/git_fs.py:294 msgid "" "Use git-committer timestamp instead of git-author timestamp\n" "for the changeset ''Timestamp'' field." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:199 +#: tracopt/versioncontrol/git/git_fs.py:299 msgid "Define charset encoding of paths within git repositories." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:202 +#: tracopt/versioncontrol/git/git_fs.py:302 msgid "Path to the git executable." msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:752 +#: tracopt/versioncontrol/git/git_fs.py:879 msgid "Path to a gitweb-formatted projects.list" msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:755 +#: tracopt/versioncontrol/git/git_fs.py:882 msgid "Path to the base of your git projects" msgstr "" -#: tracopt/versioncontrol/git/git_fs.py:758 +#: tracopt/versioncontrol/git/git_fs.py:885 #, python-format msgid "" "Template for project URLs. %s will be replaced with the repo\n" "name" msgstr "" -#: tracopt/versioncontrol/svn/svn_fs.py:253 +#: tracopt/versioncontrol/svn/svn_fs.py:265 msgid "" "Comma separated list of paths categorized as branches.\n" "If a path ends with '*', then all the directory entries found below\n" @@ -182,7 +186,7 @@ msgid "" "Example: `/trunk, /branches/*, /projectAlpha/trunk, /sandbox/*`" msgstr "" -#: tracopt/versioncontrol/svn/svn_fs.py:260 +#: tracopt/versioncontrol/svn/svn_fs.py:272 msgid "" "Comma separated list of paths categorized as tags.\n" "\n" @@ -191,6 +195,18 @@ msgid "" "Example: `/tags/*, /projectAlpha/tags/A-1.0, /projectAlpha/tags/A-v1.1`" msgstr "" +#: tracopt/versioncontrol/svn/svn_fs.py:280 +msgid "" +"End-of-Line character sequences when `svn:eol-style` property is\n" +"`native`.\n" +"\n" +"If `native` (the default), substitute with the native EOL marker on\n" +"the server. Otherwise, if `LF`, `CRLF` or `CR`, substitute with the\n" +"specified EOL marker.\n" +"\n" +"(''since 1.0.2'')" +msgstr "" + #: tracopt/versioncontrol/svn/svn_prop.py:37 msgid "" "The TracBrowser for Subversion can interpret the `svn:externals`\n" @@ -236,20 +252,18 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/attachment.py:430 -msgid "" -"Maximum allowed file size (in bytes) for ticket and wiki\n" -"attachments." +#: trac/attachment.py:438 +msgid "Maximum allowed file size (in bytes) for attachments." msgstr "" -#: trac/attachment.py:434 +#: trac/attachment.py:441 msgid "" "Maximum allowed total size (in bytes) for an attachment list to be\n" "downloadable as a `.zip`. Set this to -1 to disable download as `.zip`.\n" "(''since 1.0'')" msgstr "" -#: trac/attachment.py:439 +#: trac/attachment.py:446 msgid "" "Whether attachments should be rendered in the browser, or\n" "only made downloadable.\n" @@ -262,7 +276,7 @@ msgid "" "recommended to leave this option disabled (which is the default)." msgstr "" -#: trac/env.py:123 +#: trac/env.py:124 msgid "" "This section is used to enable or disable components\n" "provided by plugins, as well as by Trac itself. The component\n" @@ -298,7 +312,7 @@ msgid "" "See also: TracPlugins" msgstr "" -#: trac/env.py:158 +#: trac/env.py:159 msgid "" "Path to the //shared plugins directory//.\n" "\n" @@ -309,7 +323,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/env.py:167 +#: trac/env.py:168 msgid "" "Reference URL for the Trac deployment.\n" "\n" @@ -319,7 +333,7 @@ msgid "" "resources in notification e-mails." msgstr "" -#: trac/env.py:175 +#: trac/env.py:176 msgid "" "Optionally use `[trac] base_url` for redirects.\n" "\n" @@ -332,7 +346,7 @@ msgid "" "as redirects are frequently used. ''(since 0.10.5)''" msgstr "" -#: trac/env.py:187 +#: trac/env.py:188 msgid "" "Restrict cookies to HTTPS connections.\n" "\n" @@ -342,26 +356,26 @@ msgid "" "0.11.2'')" msgstr "" -#: trac/env.py:195 +#: trac/env.py:196 msgid "Name of the project." msgstr "" -#: trac/env.py:198 +#: trac/env.py:199 msgid "Short description of the project." msgstr "" -#: trac/env.py:201 +#: trac/env.py:202 msgid "" "URL of the main project web site, usually the website in\n" "which the `base_url` resides. This is used in notification\n" "e-mails." msgstr "" -#: trac/env.py:206 +#: trac/env.py:207 msgid "E-Mail address of the project's administrator." msgstr "" -#: trac/env.py:209 +#: trac/env.py:210 msgid "" "Base URL of a Trac instance where errors in this Trac\n" "should be reported.\n" @@ -371,36 +385,36 @@ msgid "" "buttons. (''since 0.11.3'')" msgstr "" -#: trac/env.py:218 +#: trac/env.py:219 msgid "Page footer text (right-aligned)." msgstr "" -#: trac/env.py:223 +#: trac/env.py:224 msgid "URL of the icon of the project." msgstr "" -#: trac/env.py:226 +#: trac/env.py:227 msgid "" "Logging facility to use.\n" "\n" "Should be one of (`none`, `file`, `stderr`, `syslog`, `winlog`)." msgstr "" -#: trac/env.py:231 +#: trac/env.py:232 msgid "" "If `log_type` is `file`, this should be a path to the\n" "log-file. Relative paths are resolved relative to the `log`\n" "directory of the environment." msgstr "" -#: trac/env.py:236 +#: trac/env.py:237 msgid "" "Level of verbosity in log.\n" "\n" "Should be one of (`CRITICAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`)." msgstr "" -#: trac/env.py:241 +#: trac/env.py:242 msgid "" "Custom logging format.\n" "\n" @@ -425,7 +439,7 @@ msgid "" "''(since 0.10.5)''" msgstr "" -#: trac/notification.py:50 +#: trac/notification.py:52 msgid "" "Name of the component implementing `IEmailSender`.\n" "\n" @@ -435,59 +449,59 @@ msgid "" "executable. (''since 0.12'')" msgstr "" -#: trac/notification.py:59 +#: trac/notification.py:61 msgid "Enable email notification." msgstr "" -#: trac/notification.py:62 +#: trac/notification.py:64 msgid "Sender address to use in notification emails." msgstr "" -#: trac/notification.py:65 +#: trac/notification.py:67 msgid "Sender name to use in notification emails." msgstr "" -#: trac/notification.py:68 +#: trac/notification.py:70 msgid "" "Use the action author as the sender of notification emails.\n" "(''since 1.0'')" msgstr "" -#: trac/notification.py:72 +#: trac/notification.py:74 msgid "Reply-To address to use in notification emails." msgstr "" -#: trac/notification.py:75 +#: trac/notification.py:77 msgid "" "Email address(es) to always send notifications to,\n" "addresses can be seen by all recipients (Cc:)." msgstr "" -#: trac/notification.py:79 +#: trac/notification.py:81 msgid "" "Email address(es) to always send notifications to,\n" "addresses do not appear publicly (Bcc:). (''since 0.10'')" msgstr "" -#: trac/notification.py:83 +#: trac/notification.py:85 msgid "" "Default host/domain to append to address that do not specify\n" "one." msgstr "" -#: trac/notification.py:87 +#: trac/notification.py:89 msgid "" "Comma-separated list of domains that should not be considered\n" "part of email addresses (for usernames with Kerberos domains)." msgstr "" -#: trac/notification.py:91 +#: trac/notification.py:93 msgid "" "Comma-separated list of domains that should be considered as\n" "valid for email addresses (such as localdomain)." msgstr "" -#: trac/notification.py:95 +#: trac/notification.py:97 msgid "" "Specifies the MIME encoding scheme for emails.\n" "\n" @@ -497,7 +511,7 @@ msgid "" "(''since 0.10'')" msgstr "" -#: trac/notification.py:103 +#: trac/notification.py:105 msgid "" "Recipients can see email addresses of other CC'ed recipients.\n" "\n" @@ -505,7 +519,7 @@ msgid "" "(''since 0.10'')" msgstr "" -#: trac/notification.py:109 +#: trac/notification.py:111 msgid "" "Permit email address without a host/domain (i.e. username only).\n" "\n" @@ -513,7 +527,7 @@ msgid "" "a FQDN or use local delivery. (''since 0.10'')" msgstr "" -#: trac/notification.py:115 +#: trac/notification.py:117 msgid "" "Text to prepend to subject line of notification emails.\n" "\n" @@ -522,27 +536,27 @@ msgid "" "will disable it. (''since 0.10.1'')" msgstr "" -#: trac/notification.py:133 +#: trac/notification.py:135 msgid "SMTP server hostname to use for email notifications." msgstr "" -#: trac/notification.py:136 +#: trac/notification.py:138 msgid "SMTP server port to use for email notification." msgstr "" -#: trac/notification.py:139 +#: trac/notification.py:141 msgid "Username for SMTP server. (''since 0.9'')" msgstr "" -#: trac/notification.py:142 +#: trac/notification.py:144 msgid "Password for SMTP server. (''since 0.9'')" msgstr "" -#: trac/notification.py:145 +#: trac/notification.py:147 msgid "Use SSL/TLS to send notifications over SMTP. (''since 0.10'')" msgstr "" -#: trac/notification.py:189 +#: trac/notification.py:200 msgid "" "Path to the sendmail executable.\n" "\n" @@ -550,13 +564,13 @@ msgid "" " (''since 0.12'')" msgstr "" -#: trac/perm.py:312 +#: trac/perm.py:310 msgid "" "Name of the component implementing `IPermissionStore`, which is used\n" "for managing user and group permissions." msgstr "" -#: trac/perm.py:317 +#: trac/perm.py:315 msgid "" "List of components implementing `IPermissionPolicy`, in the order in\n" "which they will be applied. These components manage fine-grained access\n" @@ -566,30 +580,30 @@ msgid "" "ones)" msgstr "" -#: trac/db/api.py:227 +#: trac/db/api.py:228 msgid "" "Database connection\n" "[wiki:TracEnvironment#DatabaseConnectionStrings string] for this\n" "project" msgstr "" -#: trac/db/api.py:232 +#: trac/db/api.py:233 msgid "Database backup location" msgstr "" -#: trac/db/api.py:235 +#: trac/db/api.py:236 msgid "" "Timeout value for database connection, in seconds.\n" "Use '0' to specify ''no timeout''. ''(Since 0.11)''" msgstr "" -#: trac/db/api.py:239 +#: trac/db/api.py:240 msgid "" "Show the SQL queries in the Trac log, at DEBUG level.\n" "''(Since 0.11.5)''" msgstr "" -#: trac/db/mysql_backend.py:78 +#: trac/db/mysql_backend.py:83 msgid "Location of mysqldump for MySQL database backups" msgstr "" @@ -597,25 +611,25 @@ msgstr "" msgid "Location of pg_dump for Postgres database backups" msgstr "" -#: trac/db/sqlite_backend.py:143 +#: trac/db/sqlite_backend.py:145 msgid "" "Paths to sqlite extensions, relative to Trac environment's\n" "directory or absolute. (''since 0.12'')" msgstr "" -#: trac/mimeview/api.py:613 +#: trac/mimeview/api.py:619 msgid "Charset to be used when in doubt." msgstr "" -#: trac/mimeview/api.py:616 +#: trac/mimeview/api.py:622 msgid "Displayed tab width in file preview. (''since 0.9'')" msgstr "" -#: trac/mimeview/api.py:619 +#: trac/mimeview/api.py:625 msgid "Maximum file size for HTML preview. (''since 0.9'')" msgstr "" -#: trac/mimeview/api.py:622 +#: trac/mimeview/api.py:628 msgid "" "List of additional MIME types and keyword mappings.\n" "Mappings are comma-separated, and for each MIME type,\n" @@ -623,7 +637,7 @@ msgid "" "or file extensions. (''since 0.10'')" msgstr "" -#: trac/mimeview/api.py:629 +#: trac/mimeview/api.py:635 msgid "" "List of additional MIME types associated to filename patterns.\n" "Mappings are comma-separated, and each mapping consists of a MIME type\n" @@ -631,7 +645,7 @@ msgid "" "(\":\"). (''since 1.0'')" msgstr "" -#: trac/mimeview/api.py:636 +#: trac/mimeview/api.py:642 msgid "" "Comma-separated list of MIME types that should be treated as\n" "binary data. (''since 0.11.5'')" @@ -654,11 +668,11 @@ msgid "" "Pygments render." msgstr "" -#: trac/search/web_ui.py:49 +#: trac/search/web_ui.py:48 msgid "Minimum length of query string allowed when performing a search." msgstr "" -#: trac/search/web_ui.py:52 +#: trac/search/web_ui.py:51 msgid "" "Specifies which search filters should be disabled by\n" "default on the search page. This will also restrict the\n" @@ -672,19 +686,19 @@ msgid "" "(since 0.12)" msgstr "" -#: trac/ticket/api.py:166 +#: trac/ticket/api.py:175 msgid "" "In this section, you can define additional fields for tickets. See\n" "TracTicketsCustomFields for more details." msgstr "" -#: trac/ticket/api.py:170 +#: trac/ticket/api.py:179 msgid "" "Ordered list of workflow controllers to use for ticket actions\n" "(''since 0.11'')." msgstr "" -#: trac/ticket/api.py:176 +#: trac/ticket/api.py:185 msgid "" "Make the owner field of tickets use a drop-down menu.\n" "Be sure to understand the performance implications before activating\n" @@ -697,57 +711,57 @@ msgid "" "(''since 0.9'')" msgstr "" -#: trac/ticket/api.py:187 +#: trac/ticket/api.py:196 msgid "Default version for newly created tickets." msgstr "" -#: trac/ticket/api.py:190 +#: trac/ticket/api.py:199 msgid "Default type for newly created tickets (''since 0.9'')." msgstr "" -#: trac/ticket/api.py:193 +#: trac/ticket/api.py:202 msgid "Default priority for newly created tickets." msgstr "" -#: trac/ticket/api.py:196 +#: trac/ticket/api.py:205 msgid "Default milestone for newly created tickets." msgstr "" -#: trac/ticket/api.py:199 +#: trac/ticket/api.py:208 msgid "Default component for newly created tickets." msgstr "" -#: trac/ticket/api.py:202 +#: trac/ticket/api.py:211 msgid "Default severity for newly created tickets." msgstr "" -#: trac/ticket/api.py:205 +#: trac/ticket/api.py:214 msgid "Default summary (title) for newly created tickets." msgstr "" -#: trac/ticket/api.py:208 +#: trac/ticket/api.py:217 msgid "Default description for newly created tickets." msgstr "" -#: trac/ticket/api.py:211 +#: trac/ticket/api.py:220 msgid "Default keywords for newly created tickets." msgstr "" -#: trac/ticket/api.py:214 +#: trac/ticket/api.py:223 msgid "Default owner for newly created tickets." msgstr "" -#: trac/ticket/api.py:217 +#: trac/ticket/api.py:226 msgid "Default cc: list for newly created tickets." msgstr "" -#: trac/ticket/api.py:220 +#: trac/ticket/api.py:229 msgid "" "Default resolution for resolving (closing) tickets\n" "(''since 0.11'')." msgstr "" -#: trac/ticket/default_workflow.py:105 +#: trac/ticket/default_workflow.py:108 msgid "" "The workflow for tickets is controlled by plugins. By default,\n" "there's only a `ConfigurableTicketWorkflow` component in charge.\n" @@ -757,23 +771,23 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/ticket/notification.py:36 +#: trac/ticket/notification.py:38 msgid "Always send notifications to the ticket owner (''since 0.9'')." msgstr "" -#: trac/ticket/notification.py:40 +#: trac/ticket/notification.py:42 msgid "" "Always send notifications to any address in the ''reporter''\n" "field." msgstr "" -#: trac/ticket/notification.py:46 +#: trac/ticket/notification.py:48 msgid "" "Always send notifications to the person who causes the ticket\n" "property change and to any previous updater of that ticket." msgstr "" -#: trac/ticket/notification.py:51 +#: trac/ticket/notification.py:53 msgid "" "A Genshi text template snippet used to get the notification subject.\n" "\n" @@ -782,7 +796,7 @@ msgid "" "''(since 0.11)''" msgstr "" -#: trac/ticket/notification.py:59 +#: trac/ticket/notification.py:61 msgid "" "Like ticket_subject_template but for batch modifications.\n" "\n" @@ -790,7 +804,7 @@ msgid "" "''(since 1.0)''" msgstr "" -#: trac/ticket/notification.py:66 +#: trac/ticket/notification.py:68 msgid "" "Which width of ambiguous characters (e.g. 'single' or\n" "'double') should be used in the table of notification mail.\n" @@ -801,7 +815,7 @@ msgid "" "0.12.2)''" msgstr "" -#: trac/ticket/query.py:824 +#: trac/ticket/query.py:838 msgid "" "The default query for authenticated users. The query is either\n" "in [TracQuery#QueryLanguage query language] syntax, or a URL query\n" @@ -810,7 +824,7 @@ msgid "" "(''since 0.11.2'')" msgstr "" -#: trac/ticket/query.py:832 +#: trac/ticket/query.py:846 msgid "" "The default query for anonymous users. The query is either\n" "in [TracQuery#QueryLanguage query language] syntax, or a URL query\n" @@ -819,25 +833,25 @@ msgid "" "(''since 0.11.2'')" msgstr "" -#: trac/ticket/query.py:840 +#: trac/ticket/query.py:854 msgid "" "Number of tickets displayed per page in ticket queries,\n" "by default (''since 0.11'')" msgstr "" -#: trac/ticket/report.py:116 +#: trac/ticket/report.py:117 msgid "" "Number of tickets displayed per page in ticket reports,\n" "by default (''since 0.11'')" msgstr "" -#: trac/ticket/report.py:120 +#: trac/ticket/report.py:121 msgid "" "Number of tickets displayed in the rss feeds for reports\n" "(''since 0.11'')" msgstr "" -#: trac/ticket/roadmap.py:144 +#: trac/ticket/roadmap.py:145 msgid "" "As the workflow for tickets is now configurable, there can\n" "be many ticket states, and simply displaying closed tickets\n" @@ -901,36 +915,38 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/ticket/roadmap.py:388 +#: trac/ticket/roadmap.py:396 msgid "" "Name of the component implementing `ITicketGroupStatsProvider`,\n" "which is used to collect statistics on groups of tickets for display\n" "in the roadmap views." msgstr "" -#: trac/ticket/roadmap.py:590 +#: trac/ticket/roadmap.py:598 msgid "" "Name of the component implementing `ITicketGroupStatsProvider`,\n" "which is used to collect statistics on groups of tickets for display\n" "in the milestone views." msgstr "" -#: trac/ticket/web_ui.py:75 +#: trac/ticket/web_ui.py:73 msgid "" "Enable the display of all ticket changes in the timeline, not only\n" "open / close operations (''since 0.9'')." msgstr "" -#: trac/ticket/web_ui.py:79 +#: trac/ticket/web_ui.py:77 msgid "" -"Don't accept tickets with a too big description.\n" -"(''since 0.11'')." +"Maximum allowed description size in characters.\n" +"(//since 0.11//)." msgstr "" -#: trac/ticket/web_ui.py:83 -msgid "" -"Don't accept tickets with a too big comment.\n" -"(''since 0.11.2'')" +#: trac/ticket/web_ui.py:81 +msgid "Maximum allowed comment size in characters. (//since 0.11.2//)." +msgstr "" + +#: trac/ticket/web_ui.py:84 +msgid "Maximum allowed summary size in characters. (//since 1.0.2//)." msgstr "" #: trac/ticket/web_ui.py:87 @@ -988,7 +1004,7 @@ msgid "" "allowed. (''since 0.12.1'')" msgstr "" -#: trac/versioncontrol/api.py:284 +#: trac/versioncontrol/api.py:293 msgid "" "One of the alternatives for registering new repositories is to\n" "populate the `[repositories]` section of the `trac.ini`.\n" @@ -1004,7 +1020,7 @@ msgid "" "(''since 0.12'')" msgstr "" -#: trac/versioncontrol/api.py:298 +#: trac/versioncontrol/api.py:307 msgid "" "Default repository connector type. (''since 0.10'')\n" "\n" @@ -1013,7 +1029,7 @@ msgid "" "\"Repositories\" admin panel. (''since 0.12'')" msgstr "" -#: trac/versioncontrol/api.py:306 +#: trac/versioncontrol/api.py:315 msgid "" "Path to the default repository. This can also be a relative path\n" "(''since 0.11'').\n" @@ -1023,7 +1039,7 @@ msgid "" "\"Repositories\" admin panel. (''since 0.12'')" msgstr "" -#: trac/versioncontrol/api.py:314 +#: trac/versioncontrol/api.py:323 msgid "" "List of repositories that should be synchronized on every page\n" "request.\n" @@ -1052,7 +1068,7 @@ msgid "" "repository. If left empty, the global section is used." msgstr "" -#: trac/versioncontrol/web_ui/browser.py:118 +#: trac/versioncontrol/web_ui/browser.py:117 msgid "" "Comma-separated list of version control properties to render\n" "as wiki content in the repository browser.\n" @@ -1060,7 +1076,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:125 +#: trac/versioncontrol/web_ui/browser.py:124 msgid "" "Comma-separated list of version control properties to render\n" "as oneliner wiki content in the repository browser.\n" @@ -1068,7 +1084,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:184 +#: trac/versioncontrol/web_ui/browser.py:183 msgid "" "List of repository paths that can be downloaded.\n" "\n" @@ -1082,7 +1098,7 @@ msgid "" "(''since 0.10'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:197 +#: trac/versioncontrol/web_ui/browser.py:196 msgid "" "Enable colorization of the ''age'' column.\n" "\n" @@ -1091,7 +1107,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:206 +#: trac/versioncontrol/web_ui/browser.py:205 msgid "" "(r,g,b) color triple to use for the color corresponding\n" "to the newest color, for the color scale used in ''blame'' or\n" @@ -1099,7 +1115,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:214 +#: trac/versioncontrol/web_ui/browser.py:213 msgid "" "(r,g,b) color triple to use for the color corresponding\n" "to the oldest color, for the color scale used in ''blame'' or\n" @@ -1107,7 +1123,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:220 +#: trac/versioncontrol/web_ui/browser.py:219 msgid "" "If set to a value between 0 and 1 (exclusive), this will be the\n" "point chosen to set the `intermediate_color` for interpolating\n" @@ -1115,7 +1131,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:226 +#: trac/versioncontrol/web_ui/browser.py:225 msgid "" "(r,g,b) color triple to use for the color corresponding\n" "to the intermediate color, if two linear interpolations are used\n" @@ -1125,7 +1141,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/browser.py:234 +#: trac/versioncontrol/web_ui/browser.py:233 msgid "" "Whether raw files should be rendered in the browser, or only made\n" "downloadable.\n" @@ -1138,14 +1154,14 @@ msgid "" "recommended to leave this option disabled (which is the default)." msgstr "" -#: trac/versioncontrol/web_ui/browser.py:246 +#: trac/versioncontrol/web_ui/browser.py:245 msgid "" "Comma-separated list of version control properties to hide from\n" "the repository browser.\n" "(''since 0.9'')" msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:129 +#: trac/versioncontrol/web_ui/changeset.py:131 msgid "" "Number of files to show (`-1` for unlimited, `0` to disable).\n" "\n" @@ -1153,7 +1169,7 @@ msgid "" "changed files. (since 0.11)." msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:136 +#: trac/versioncontrol/web_ui/changeset.py:138 msgid "" "Whether wiki-formatted changeset messages should be multiline or\n" "not.\n" @@ -1163,7 +1179,7 @@ msgid "" "some formatting (bullet points, etc)." msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:145 +#: trac/versioncontrol/web_ui/changeset.py:147 msgid "" "Whether consecutive changesets from the same author having\n" "exactly the same message should be presented as one event.\n" @@ -1171,20 +1187,20 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:152 +#: trac/versioncontrol/web_ui/changeset.py:154 msgid "" "Maximum number of modified files for which the changeset view will\n" "attempt to show the diffs inlined (''since 0.10'')." msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:156 +#: trac/versioncontrol/web_ui/changeset.py:158 msgid "" "Maximum total size in bytes of the modified files (their old size\n" "plus their new size) for which the changeset view will attempt to show\n" "the diffs inlined (''since 0.10'')." msgstr "" -#: trac/versioncontrol/web_ui/changeset.py:161 +#: trac/versioncontrol/web_ui/changeset.py:163 msgid "" "Whether wiki formatting should be applied to changeset messages.\n" "\n" @@ -1192,13 +1208,13 @@ msgid "" "pre-formatted text." msgstr "" -#: trac/versioncontrol/web_ui/log.py:47 +#: trac/versioncontrol/web_ui/log.py:46 msgid "" "Default value for the limit argument in the TracRevisionLog.\n" "(''since 0.11'')" msgstr "" -#: trac/versioncontrol/web_ui/log.py:51 +#: trac/versioncontrol/web_ui/log.py:50 msgid "" "Comma-separated list of colors to use for the TracRevisionLog\n" "graph display. (''since 1.0'')" @@ -1234,7 +1250,7 @@ msgid "" "the cookie. (''since 0.12'')" msgstr "" -#: trac/web/chrome.py:342 +#: trac/web/chrome.py:350 msgid "" "Path to the //shared templates directory//.\n" "\n" @@ -1244,7 +1260,7 @@ msgid "" "(''since 0.11'')" msgstr "" -#: trac/web/chrome.py:350 +#: trac/web/chrome.py:358 msgid "" "Path to the //shared htdocs directory//.\n" "\n" @@ -1257,11 +1273,11 @@ msgid "" "(''since 1.0'')" msgstr "" -#: trac/web/chrome.py:361 +#: trac/web/chrome.py:369 msgid "Automatically reload template files after modification." msgstr "" -#: trac/web/chrome.py:364 +#: trac/web/chrome.py:372 msgid "" "The maximum number of templates that the template loader will cache\n" "in memory. The default value is 128. You may want to choose a higher\n" @@ -1270,7 +1286,7 @@ msgid "" "memory." msgstr "" -#: trac/web/chrome.py:371 +#: trac/web/chrome.py:379 msgid "" "Base URL for serving the core static resources below\n" "`/chrome/common/`.\n" @@ -1287,7 +1303,7 @@ msgid "" "rules will be needed in the web server." msgstr "" -#: trac/web/chrome.py:386 +#: trac/web/chrome.py:394 msgid "" "Location of the jQuery !JavaScript library (version 1.7.2).\n" "\n" @@ -1301,7 +1317,7 @@ msgid "" "(''since 1.0'')" msgstr "" -#: trac/web/chrome.py:398 +#: trac/web/chrome.py:406 msgid "" "Location of the jQuery UI !JavaScript library (version 1.8.21).\n" "\n" @@ -1315,7 +1331,7 @@ msgid "" "(''since 1.0'')" msgstr "" -#: trac/web/chrome.py:410 +#: trac/web/chrome.py:418 msgid "" "Location of the theme to be used with the jQuery UI !JavaScript\n" "library (version 1.8.21).\n" @@ -1334,23 +1350,23 @@ msgid "" "(''since 1.0'')" msgstr "" -#: trac/web/chrome.py:425 +#: trac/web/chrome.py:433 msgid "" "Order of the items to display in the `metanav` navigation bar,\n" "listed by IDs. See also TracNavigation." msgstr "" -#: trac/web/chrome.py:430 +#: trac/web/chrome.py:438 msgid "" "Order of the items to display in the `mainnav` navigation bar,\n" "listed by IDs. See also TracNavigation." msgstr "" -#: trac/web/chrome.py:436 +#: trac/web/chrome.py:444 msgid "URL to link to, from the header logo." msgstr "" -#: trac/web/chrome.py:439 +#: trac/web/chrome.py:447 msgid "" "URL of the image to use as header logo.\n" "It can be absolute, server relative or relative.\n" @@ -1363,44 +1379,50 @@ msgid "" "Only specifying `your-logo.png` is equivalent to the latter." msgstr "" -#: trac/web/chrome.py:450 +#: trac/web/chrome.py:458 msgid "Alternative text for the header logo." msgstr "" -#: trac/web/chrome.py:454 +#: trac/web/chrome.py:462 msgid "Width of the header logo image in pixels." msgstr "" -#: trac/web/chrome.py:457 +#: trac/web/chrome.py:465 msgid "Height of the header logo image in pixels." msgstr "" -#: trac/web/chrome.py:460 +#: trac/web/chrome.py:468 msgid "" "Show email addresses instead of usernames. If false, we obfuscate\n" "email addresses. (''since 0.11'')" msgstr "" -#: trac/web/chrome.py:464 +#: trac/web/chrome.py:472 msgid "" "Never obfuscate `mailto:` links explicitly written in the wiki,\n" "even if `show_email_addresses` is false or the user has not the\n" "EMAIL_VIEW permission (''since 0.11.6'')." msgstr "" -#: trac/web/chrome.py:470 +#: trac/web/chrome.py:478 msgid "" "Show IP addresses for resource edits (e.g. wiki).\n" "(''since 0.11.3'')" msgstr "" -#: trac/web/chrome.py:474 +#: trac/web/chrome.py:482 msgid "" "Make `<textarea>` fields resizable. Requires !JavaScript.\n" "(''since 0.12'')" msgstr "" -#: trac/web/chrome.py:478 +#: trac/web/chrome.py:486 +msgid "" +"Add a simple toolbar on top of Wiki `<textarea>`s.\n" +"(''since 1.0.2'')" +msgstr "" + +#: trac/web/chrome.py:490 msgid "" "Inactivity timeout in seconds after which the automatic wiki preview\n" "triggers an update. This option can contain floating-point values. The\n" @@ -1409,7 +1431,7 @@ msgid "" "(''since 0.12'')" msgstr "" -#: trac/web/chrome.py:485 +#: trac/web/chrome.py:497 msgid "" "The date information format. Valid options are 'relative' for\n" "displaying relative format and 'absolute' for displaying absolute\n" @@ -1487,7 +1509,7 @@ msgid "" "(''since 0.11.8'')" msgstr "" -#: trac/wiki/intertrac.py:36 +#: trac/wiki/intertrac.py:35 msgid "" "This section configures InterTrac prefixes. Options in this section\n" "whose name contain a \".\" define aspects of the InterTrac prefix\n" @@ -1508,7 +1530,7 @@ msgid "" " it doesn't know how to dispatch an InterTrac link, and it's up to\n" " the local Trac to prepare the correct link. Not all links will work\n" " that way, but the most common do. This is called the compatibility\n" -" mode, and is `true` by default.\n" +" mode, and is `false` by default.\n" " * If you know that the remote Trac knows how to dispatch InterTrac\n" " links, you can explicitly disable this compatibility mode and then\n" " ''any'' TracLinks can become InterTrac links.\n" @@ -1543,6 +1565,6 @@ msgid "" msgstr "" #: trac/wiki/web_ui.py:64 -msgid "Maximum allowed wiki page size in bytes. (''since 0.11.2'')" +msgid "Maximum allowed wiki page size in characters. (''since 0.11.2'')" msgstr ""
Modified: bloodhound/vendor/trac/current/trac/mimeview/api.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/mimeview/api.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/mimeview/api.py (original) +++ bloodhound/vendor/trac/current/trac/mimeview/api.py Fri Nov 14 11:06:23 2014 @@ -107,7 +107,7 @@ class RenderingContext(object): set up nested contexts for each matching ticket that will be used for rendering the ticket descriptions. - :since: version 0.11 + :since: version 1.0 """ def __init__(self, resource, href=None, perm=None): @@ -131,7 +131,9 @@ class RenderingContext(object): @staticmethod def from_request(*args, **kwargs): - """:deprecated: since 1.0, use `web_context` instead.""" + """:deprecated: since 1.0, use `web_context` instead. Will be removed + in release 1.3.1. + """ from trac.web.chrome import web_context return web_context(*args, **kwargs) @@ -279,7 +281,10 @@ class RenderingContext(object): class Context(RenderingContext): - """:deprecated: old name kept for compatibility, use `RenderingContext`.""" + """ + :deprecated: since 1.0, use `RenderingContext` instead. `Context` is + kept for compatibility and will be removed release 1.3.1. + """ # Some common MIME types and their associated keywords and/or file extensions @@ -867,7 +872,8 @@ class Mimeview(Component): ) def get_max_preview_size(self): - """:deprecated: use `max_preview_size` attribute directly.""" + """:deprecated: since 0.10, use `max_preview_size` attribute directly. + """ return self.max_preview_size def get_charset(self, content='', mimetype=None): Modified: bloodhound/vendor/trac/current/trac/mimeview/tests/api.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/mimeview/tests/api.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/mimeview/tests/api.py (original) +++ bloodhound/vendor/trac/current/trac/mimeview/tests/api.py Fri Nov 14 11:06:23 2014 @@ -14,11 +14,10 @@ import doctest import unittest from StringIO import StringIO -import sys +import trac.tests.compat from trac.core import * from trac.test import EnvironmentStub -from trac.tests import compat from trac.mimeview import api from trac.mimeview.api import get_mimetype, IContentConverter, Mimeview, \ _group_lines Modified: bloodhound/vendor/trac/current/trac/mimeview/tests/patch.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/mimeview/tests/patch.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/mimeview/tests/patch.html (original) +++ bloodhound/vendor/trac/current/trac/mimeview/tests/patch.html Fri Nov 14 11:06:23 2014 @@ -36,26 +36,26 @@ </thead> <tbody class="unmod"> <tr> - <th>1</th><th>1</th><td class="l"><span>----</span>Â </td> + <th>1</th><th>1</th><td class="l"><span>----</span></td> </tr> </tbody><tbody class="mod"> <tr class="first"> - <th>2</th><th>Â </th><td class="l"><span>b<del>as</del>e</span>Â </td> + <th>2</th><th>Â </th><td class="l"><span>b<del>as</del>e</span></td> </tr><tr> - <th>3</th><th>Â </th><td class="l"><span><del></del>base</span>Â </td> + <th>3</th><th>Â </th><td class="l"><span><del></del>base</span></td> </tr><tr> - <th>4</th><th>Â </th><td class="l"><span>base<del></del></span>Â </td> + <th>4</th><th>Â </th><td class="l"><span>base<del></del></span></td> </tr> <tr> - <th>Â </th><th>2</th><td class="r"><span>b<ins></ins>e</span>Â </td> + <th>Â </th><th>2</th><td class="r"><span>b<ins></ins>e</span></td> </tr><tr> - <th>Â </th><th>3</th><td class="r"><span><ins>the </ins>base</span>Â </td> + <th>Â </th><th>3</th><td class="r"><span><ins>the </ins>base</span></td> </tr><tr class="last"> - <th>Â </th><th>4</th><td class="r"><span>base<ins>Â modified</ins></span>Â </td> + <th>Â </th><th>4</th><td class="r"><span>base<ins>Â modified</ins></span></td> </tr> </tbody><tbody class="unmod"> <tr> - <th>5</th><th>5</th><td class="l"><span>.</span>Â </td> + <th>5</th><th>5</th><td class="l"><span>.</span></td> </tr> </tbody> </table> @@ -88,12 +88,12 @@ </thead> <tbody class="mod"> <tr class="first"> - <th>1</th><th> </th><td class="l"><span>ONELINE</span> </td> + <th>1</th><th> </th><td class="l"><span>ONELINE</span></td> </tr><tr> - <th>2</th><th> </th><td class="l"><span><em> No newline at end of file</em></span> </td> + <th>2</th><th> </th><td class="l"><span><em> No newline at end of file</em></span></td> </tr> <tr class="last"> - <th> </th><th>1</th><td class="r"><span>ONELINE</span> </td> + <th> </th><th>1</th><td class="r"><span>ONELINE</span></td> </tr> </tbody> </table> @@ -126,12 +126,12 @@ </thead> <tbody class="mod"> <tr class="first"> - <th>1</th><th>Â </th><td class="l"><span>ONELINE</span>Â </td> + <th>1</th><th>Â </th><td class="l"><span>ONELINE</span></td> </tr> <tr> - <th>Â </th><th>1</th><td class="r"><span>ONELINE</span>Â </td> + <th>Â </th><th>1</th><td class="r"><span>ONELINE</span></td> </tr><tr class="last"> - <th>Â </th><th>2</th><td class="r"><span><em> No newline at end of file</em></span>Â </td> + <th>Â </th><th>2</th><td class="r"><span><em> No newline at end of file</em></span></td> </tr> </tbody> </table> Modified: bloodhound/vendor/trac/current/trac/mimeview/tests/patch.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/mimeview/tests/patch.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/mimeview/tests/patch.py (original) +++ bloodhound/vendor/trac/current/trac/mimeview/tests/patch.py Fri Nov 14 11:06:23 2014 @@ -17,7 +17,7 @@ import unittest from genshi.core import Stream from genshi.input import HTMLParser, XML -from trac.mimeview.api import Mimeview, RenderingContext +from trac.mimeview.api import Mimeview from trac.mimeview.patch import PatchRenderer from trac.test import EnvironmentStub, Mock, MockPerm from trac.web.chrome import Chrome, web_context Modified: bloodhound/vendor/trac/current/trac/mimeview/tests/pygments.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/mimeview/tests/pygments.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/mimeview/tests/pygments.py (original) +++ bloodhound/vendor/trac/current/trac/mimeview/tests/pygments.py Fri Nov 14 11:06:23 2014 @@ -23,11 +23,11 @@ try: except ImportError: have_pygments = False -from trac.mimeview.api import Mimeview, RenderingContext +import trac.tests.compat +from trac.mimeview.api import Mimeview if have_pygments: from trac.mimeview.pygments import PygmentsRenderer from trac.test import EnvironmentStub, Mock -from trac.tests import compat from trac.web.chrome import Chrome, web_context from trac.web.href import Href Modified: bloodhound/vendor/trac/current/trac/notification.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/notification.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/notification.py (original) +++ bloodhound/vendor/trac/current/trac/notification.py Fri Nov 14 11:06:23 2014 @@ -245,7 +245,7 @@ class Notify(object): self.data = Chrome(self.env).populate_data(None, {'CRLF': CRLF}) def notify(self, resid): - (torcpts, ccrcpts) = self.get_recipients(resid) + torcpts, ccrcpts = self.get_recipients(resid) self.begin_send() self.send(torcpts, ccrcpts) self.finish_send() @@ -357,26 +357,38 @@ class NotifyEmail(Notify): # when passing `LazyProxy` object to `Fragment` tag.p(to_fragment(tag_( "Neither %(from_)s nor %(reply_to)s are specified in the " - "configuration.", from_=tag.b('[notification] smtp_from'), - reply_to=tag.b('[notification] smtp_replyto'))))) + "configuration.", + from_=tag.strong('[notification] smtp_from'), + reply_to=tag.strong('[notification] smtp_replyto'))))) raise TracError(message, _('SMTP Notification Error')) Notify.notify(self, resid) + _mime_encoding_re = re.compile(r'=\?[^?]+\?[bq]\?[^?]+\?=', re.IGNORECASE) + def format_header(self, key, name, email=None): from email.Header import Header maxlength = MAXHEADERLEN-(len(key)+2) # Do not sent ridiculous short headers if maxlength < 10: raise TracError(_("Header length is too short")) - try: - tmp = name.encode('ascii') - header = Header(tmp, 'ascii', maxlinelen=maxlength) - except UnicodeEncodeError: - header = Header(name, self._charset, maxlinelen=maxlength) + # when it matches mime-encoding, encode as mime even if only + # ascii characters + header = None + if not self._mime_encoding_re.search(name): + try: + tmp = name.encode('ascii') + header = Header(tmp, 'ascii', maxlinelen=maxlength) + except UnicodeEncodeError: + pass + if not header: + header = Header(name.encode(self._charset.output_codec), + self._charset, maxlinelen=maxlength) if not email: return header else: + header = str(header).replace('\\', r'\\') \ + .replace('"', r'\"') return '"%s" <%s>' % (header, email) def add_headers(self, msg, headers): Modified: bloodhound/vendor/trac/current/trac/perm.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/perm.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/perm.py (original) +++ bloodhound/vendor/trac/current/trac/perm.py Fri Nov 14 11:06:23 2014 @@ -30,7 +30,7 @@ from trac.resource import Resource, get_ from trac.util import file_or_std from trac.util.text import path_to_unicode, print_table, printout, \ stream_encoding, to_unicode, wrap -from trac.util.translation import _ +from trac.util.translation import _, N_ __all__ = ['IPermissionRequestor', 'IPermissionStore', 'IPermissionPolicy', 'IPermissionGroupProvider', 'PermissionError', 'PermissionSystem'] @@ -39,29 +39,27 @@ __all__ = ['IPermissionRequestor', 'IPer class PermissionError(StandardError): """Insufficient permissions to complete the operation""" + title = N_("Forbidden") + def __init__ (self, action=None, resource=None, env=None, msg=None): - StandardError.__init__(self) self.action = action self.resource = resource self.env = env - self.msg = msg - - def __unicode__ (self): if self.action: if self.resource: - return _('%(perm)s privileges are required to perform ' - 'this operation on %(resource)s. You don\'t have the ' - 'required permissions.', - perm=self.action, - resource=get_resource_name(self.env, self.resource)) + msg = _("%(perm)s privileges are required to perform " + "this operation on %(resource)s. You don't have the " + "required permissions.", + perm=self.action, + resource=get_resource_name(self.env, self.resource)) else: - return _('%(perm)s privileges are required to perform this ' - 'operation. You don\'t have the required ' - 'permissions.', perm=self.action) - elif self.msg: - return self.msg - else: - return _('Insufficient privileges to perform this operation.') + msg = _("%(perm)s privileges are required to perform this " + "operation. You don't have the required " + "permissions.", perm=self.action) + elif msg is None: + msg = _("Insufficient privileges to perform this operation.") + self.msg = msg + StandardError.__init__(self, msg) class IPermissionRequestor(Interface): @@ -573,10 +571,14 @@ class PermissionCache(object): __contains__ = has_permission - def require(self, action, realm_or_resource=None, id=False, version=False): + def require(self, action, realm_or_resource=None, id=False, version=False, + message=None): resource = self._normalize_resource(realm_or_resource, id, version) if not self._has_permission(action, resource): - raise PermissionError(action, resource, self.env) + if message is None: + raise PermissionError(action, resource, self.env) + else: + raise PermissionError(msg=message) assert_permission = require def permissions(self): Modified: bloodhound/vendor/trac/current/trac/prefs/__init__.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/__init__.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/__init__.py (original) +++ bloodhound/vendor/trac/current/trac/prefs/__init__.py Fri Nov 14 11:06:23 2014 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright (C) 2006-2013 Edgewall Software +# Copyright (C) 2006-2014 Edgewall Software # All rights reserved. # # This software is licensed as described in the file COPYING, which Modified: bloodhound/vendor/trac/current/trac/prefs/api.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/api.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/api.py (original) +++ bloodhound/vendor/trac/current/trac/prefs/api.py Fri Nov 14 11:06:23 2014 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright (C)2006-2009 Edgewall Software +# Copyright (C) 2006-2014 Edgewall Software # All rights reserved. # # This software is licensed as described in the file COPYING, which Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_advanced.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_advanced.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_advanced.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_advanced.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_datetime.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_datetime.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_datetime.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_datetime.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_general.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_general.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_general.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_general.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_keybindings.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_keybindings.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_keybindings.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_keybindings.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_language.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_language.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_language.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_language.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2008-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_pygments.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_pygments.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_pygments.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_pygments.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/templates/prefs_userinterface.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/templates/prefs_userinterface.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/templates/prefs_userinterface.html (original) +++ bloodhound/vendor/trac/current/trac/prefs/templates/prefs_userinterface.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2012-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/prefs/tests/functional.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/tests/functional.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/tests/functional.py (original) +++ bloodhound/vendor/trac/current/trac/prefs/tests/functional.py Fri Nov 14 11:06:23 2014 @@ -42,7 +42,7 @@ class RegressionTestRev5785(FunctionalTw """Test for regression of the fix in r5785""" self._tester.go_to_preferences() tc.submit('logout', 'logout') - tc.notfind(internal_error) # See [5785] + tc.notfind(internal_error) # See [5785] tc.follow('Login') @@ -104,6 +104,48 @@ class RegressionTestTicket11337(Function self._tester.login('admin') +class RegressionTestTicket11515(FunctionalTwillTestCaseSetup): + def runTest(self): + """Test for regression of http://trac.edgewall.org/ticket/11515 + Show a notice message with new language setting after it is changed. + """ + from trac.util.translation import has_babel, get_available_locales + + if not has_babel: + return + for second_locale in (locale for locale in get_available_locales() + if not locale.startswith('en_')): + break + else: + return + + try: + self._tester.go_to_preferences('Language') + tc.formvalue('userprefs', 'language', second_locale) + tc.submit() + tc.notfind('Your preferences have been saved') + finally: + tc.formvalue('userprefs', 'language', '') # revert to default + tc.submit() + tc.find('Your preferences have been saved') + + +class RegressionTestTicket11531(FunctionalTwillTestCaseSetup): + """Test for regression of http://trac.edgewall.org/ticket/11531 + PreferencesModule can be set as the default_handler.""" + def runTest(self): + default_handler = self._testenv.get_config('trac', 'default_handler') + self._testenv.set_config('trac', 'default_handler', + 'PreferencesModule') + try: + tc.go(self._tester.url) + tc.notfind(internal_error) + tc.find(r"\bPreferences\b") + finally: + self._testenv.set_config('trac', 'default_handler', + default_handler) + + def functionalSuite(suite=None): if not suite: import trac.tests.functional @@ -112,6 +154,8 @@ def functionalSuite(suite=None): suite.addTest(RegressionTestRev5785()) suite.addTest(RegressionTestTicket5765()) suite.addTest(RegressionTestTicket11337()) + suite.addTest(RegressionTestTicket11515()) + suite.addTest(RegressionTestTicket11531()) return suite Modified: bloodhound/vendor/trac/current/trac/prefs/web_ui.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/prefs/web_ui.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/prefs/web_ui.py (original) +++ bloodhound/vendor/trac/current/trac/prefs/web_ui.py Fri Nov 14 11:06:23 2014 @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright (C) 2004-2009 Edgewall Software +# Copyright (C) 2004-2014 Edgewall Software # Copyright (C) 2004-2005 Daniel Lundin <dan...@edgewall.com> # All rights reserved. # @@ -17,20 +17,16 @@ import pkg_resources import re -try: - from babel.core import Locale -except ImportError: - Locale = None - from genshi.builder import tag from trac.core import * from trac.prefs.api import IPreferencePanelProvider from trac.util.datefmt import all_timezones, get_timezone, localtz -from trac.util.translation import _, get_available_locales -from trac.web import HTTPNotFound, IRequestHandler -from trac.web.chrome import add_notice, add_stylesheet, \ - INavigationContributor, ITemplateProvider +from trac.util.translation import _, Locale, deactivate,\ + get_available_locales, make_activable +from trac.web.api import HTTPNotFound, IRequestHandler +from trac.web.chrome import INavigationContributor, ITemplateProvider, \ + add_notice, add_stylesheet class PreferencesModule(Component): @@ -44,7 +40,7 @@ class PreferencesModule(Component): 'newsid', 'name', 'email', 'tz', 'lc_time', 'dateinfo', 'language', 'accesskeys', 'ui.use_symbols', 'ui.hide_help', - ] + ] # INavigationContributor methods @@ -52,8 +48,8 @@ class PreferencesModule(Component): return 'prefs' def get_navigation_items(self, req): - yield ('metanav', 'prefs', - tag.a(_('Preferences'), href=req.href.prefs())) + yield 'metanav', 'prefs', tag.a(_("Preferences"), + href=req.href.prefs()) # IRequestHandler methods @@ -68,7 +64,7 @@ class PreferencesModule(Component): if xhr and req.method == 'POST' and 'save_prefs' in req.args: self._do_save_xhr(req) - panel_id = req.args['panel_id'] + panel_id = req.args.get('panel_id') panels = [] chosen_provider = None @@ -79,8 +75,8 @@ class PreferencesModule(Component): chosen_provider = provider panels.append((name, label)) if not chosen_provider: - self.log.warn('Unknown preference panel %r', panel_id) - raise HTTPNotFound(_('Unknown preference panel')) + self.log.warn("Unknown preference panel %r", panel_id) + raise HTTPNotFound(_("Unknown preference panel")) template, data = chosen_provider.render_preference_panel(req, panel_id) data.update({'active_panel': panel_id, 'panels': panels}) @@ -91,14 +87,14 @@ class PreferencesModule(Component): # IPreferencePanelProvider methods def get_preference_panels(self, req): - yield (None, _('General')) - yield ('datetime', _('Date & Time')) - yield ('keybindings', _('Keyboard Shortcuts')) - yield ('userinterface', _('User Interface')) + yield (None, _("General")) + yield ('datetime', _("Date & Time")) + yield ('keybindings', _("Keyboard Shortcuts")) + yield ('userinterface', _("User Interface")) if Locale or 'TRAC_ADMIN' in req.perm: - yield ('language', _('Language')) + yield ('language', _("Language")) if not req.authname or req.authname == 'anonymous': - yield ('advanced', _('Advanced')) + yield ('advanced', _("Advanced")) def render_preference_panel(self, req, panel): if req.method == 'POST': @@ -109,8 +105,10 @@ class PreferencesModule(Component): req.redirect(req.href.prefs(panel or None)) data = { - 'settings': {'session': req.session, 'session_id': req.session.sid}, - 'timezones': all_timezones, 'timezone': get_timezone, + 'settings': {'session': req.session, + 'session_id': req.session.sid}, + 'timezones': all_timezones, + 'timezone': get_timezone, 'localtz': localtz, 'has_babel': False } @@ -148,6 +146,7 @@ class PreferencesModule(Component): req.send_no_content() def _do_save(self, req): + language = req.session.get('language') for field in self._form_fields: val = req.args.get(field, '').strip() if val: @@ -163,11 +162,16 @@ class PreferencesModule(Component): elif field in req.session and (field in req.args or field + '_cb' in req.args): del req.session[field] - add_notice(req, _('Your preferences have been saved.')) + if Locale and req.session.get('language') != language: + # reactivate translations with new language setting when changed + del req.locale # for re-negotiating locale + deactivate() + make_activable(lambda: req.locale, self.env.path) + add_notice(req, _("Your preferences have been saved.")) def _do_load(self, req): if req.authname == 'anonymous': oldsid = req.args.get('loadsid') if oldsid: req.session.get_session(oldsid) - add_notice(req, _('The session has been loaded.')) + add_notice(req, _("The session has been loaded.")) Modified: bloodhound/vendor/trac/current/trac/search/templates/search.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/search/templates/search.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/search/templates/search.html (original) +++ bloodhound/vendor/trac/current/trac/search/templates/search.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/search/web_ui.py URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/search/web_ui.py?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/search/web_ui.py (original) +++ bloodhound/vendor/trac/current/trac/search/web_ui.py Fri Nov 14 11:06:23 2014 @@ -21,7 +21,6 @@ from genshi.builder import tag from trac.config import IntOption, ListOption from trac.core import * -from trac.mimeview import RenderingContext from trac.perm import IPermissionRequestor from trac.search.api import ISearchSource from trac.util.datefmt import format_datetime, user_time @@ -29,7 +28,7 @@ from trac.util.html import find_element from trac.util.presentation import Paginator from trac.util.text import quote_query_string from trac.util.translation import _ -from trac.web import IRequestHandler +from trac.web.api import IRequestHandler from trac.web.chrome import (INavigationContributor, ITemplateProvider, add_link, add_stylesheet, add_warning, web_context) Modified: bloodhound/vendor/trac/current/trac/templates/about.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/about.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/about.html (original) +++ bloodhound/vendor/trac/current/trac/templates/about.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> @@ -12,7 +22,9 @@ <script type="text/javascript"> //<![CDATA[ jQuery(document).ready(function ($) { - $("#systeminfo table").append("<tr><th>jQuery</th><td>"+$().jquery+"</td></tr>"); + $("#systeminfo table").append("<tr><th>jQuery</th><td>"+$().jquery+"</td></tr>" + + "<tr><th>jQuery UI</th><td>"+$.ui.version+"</td></tr>" + + "<tr><th>jQuery Timepicker</th><td>"+$.timepicker.version+"</td></tr>"); }); //]]> </script> Modified: bloodhound/vendor/trac/current/trac/templates/attach_file_form.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/attach_file_form.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/attach_file_form.html (original) +++ bloodhound/vendor/trac/current/trac/templates/attach_file_form.html Fri Nov 14 11:06:23 2014 @@ -1,4 +1,13 @@ -<!--! +<!--! Copyright (C) 2010-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. + Conditionally render an ''Attach File'' button. Arguments: Modified: bloodhound/vendor/trac/current/trac/templates/attachment.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/attachment.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/attachment.html (original) +++ bloodhound/vendor/trac/current/trac/templates/attachment.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Modified: bloodhound/vendor/trac/current/trac/templates/diff_div.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/diff_div.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/diff_div.html (original) +++ bloodhound/vendor/trac/current/trac/templates/diff_div.html Fri Nov 14 11:06:23 2014 @@ -1,39 +1,48 @@ -<!--! - changes - a list of diff items, each being a dict containing information about - changes for one file: - .href - link for the title (optional) - .title - tooltip for the title link (optional) - .comments - annotation for the change (optional) - .new and .old - information about the files being diffed - .path - path of the file - .rev - rev of the file (for 'sidebyside') - .shortrev - abbreviated form of rev of the file (for 'inline') - .href - link to the full file (optional) - .props - a list of property changes - .name - name of the property - .diff - rendered difference - .old - old value of the property - .new - new value for the property - (both .old and .new have .name, .value and .rendered properties) - .diffs - a sequence of list of blocks - - Each block being a dict: - .type - one of 'unmod', 'add', 'rem' or 'mod' - .base and .changed - information about lines from old and new content - .lines - the lines - .offset - position within the file - - .diffs_title - a sequence of titles for the list of blocks - Note: integrate this into .diffs for 0.12 or 1.0. - - diff - dict specifying diff style and options - .style - can be 'sidebyside' (4 columns) or 'inline' (3 columns) - .options - contexlines, various ignore... - - longcol - "long" column header; e.g. 'Revision' or 'File' or '' (for 'sidebyside') - shortcol - "short" column header: e.g. 'r' or '' (for 'inline') - no_id - skip generation of id attributes in h2 headings +<!--! Copyright (C) 2006-2014 Edgewall Software + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. + +Arguments: + - changes - a list of diff items, each being a dict containing information about + changes for one file: + .href - link for the title (optional) + .title - tooltip for the title link (optional) + .comments - annotation for the change (optional) + .new and .old - information about the files being diffed + .path - path of the file + .rev - rev of the file (for 'sidebyside') + .shortrev - abbreviated form of rev of the file (for 'inline') + .href - link to the full file (optional) + .props - a list of property changes + .name - name of the property + .diff - rendered difference + .old - old value of the property + .new - new value for the property + (both .old and .new have .name, .value and .rendered properties) + .diffs - a sequence of list of blocks + + Each block being a dict: + .type - one of 'unmod', 'add', 'rem' or 'mod' + .base and .changed - information about lines from old and new content + .lines - the lines + .offset - position within the file + + .diffs_title - a sequence of titles for the list of blocks + Note: integrate this into .diffs for 0.12 or 1.0. + + - diff - dict specifying diff style and options + .style - can be 'sidebyside' (4 columns) or 'inline' (3 columns) + .options - contexlines, various ignore... + + - longcol - "long" column header; e.g. 'Revision' or 'File' or '' (for 'sidebyside') + - shortcol - "short" column header: e.g. 'r' or '' (for 'inline') + - no_id - skip generation of id attributes in h2 headings --> <div xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://genshi.edgewall.org/" @@ -132,11 +141,11 @@ clines = block.changed.lines"> <py:choose test="diff.style"> <py:when test="'sidebyside'"> - <th>$from_n</th><td class="l"><span>$line</span> </td> - <th>$to_n</th><td class="r"><span>${clines[idx] if idx < len(clines) else None}</span> </td> + <th>$from_n</th><td class="l"><span>$line</span></td> + <th>$to_n</th><td class="r"><span>${clines[idx] if idx < len(clines) else None}</span></td> </py:when> <py:when test="'inline'"> - <th>$from_n</th><th>$to_n</th><td class="l"><span>$line</span> </td> + <th>$from_n</th><th>$to_n</th><td class="l"><span>$line</span></td> </py:when> </py:choose> </py:with> @@ -149,11 +158,11 @@ <py:with vars="to_n = block.changed.offset+idx+1"> <py:choose test="diff.style"> <py:when test="'sidebyside'"> - <th> </th><td class="l"> </td> - <th>$to_n</th><td class="r"><ins>$line</ins> </td> + <th> </th><td class="l"></td> + <th>$to_n</th><td class="r"><ins>$line</ins></td> </py:when> <py:when test="'inline'"> - <th> </th><th>$to_n</th><td class="r"><ins>$line</ins> </td> + <th> </th><th>$to_n</th><td class="r"><ins>$line</ins></td> </py:when> </py:choose> </py:with> @@ -166,11 +175,11 @@ <py:with vars="from_n = block.base.offset+idx+1"> <py:choose test="diff.style"> <py:when test="'sidebyside'"> - <th>$from_n</th><td class="l"><del>$line</del> </td> - <th> </th><td class="r"> </td> + <th>$from_n</th><td class="l"><del>$line</del></td> + <th> </th><td class="r"></td> </py:when> <py:when test="'inline'"> - <th>$from_n</th><th> </th><td class="l"><del>$line</del> </td> + <th>$from_n</th><th> </th><td class="l"><del>$line</del></td> </py:when> </py:choose> </py:with> @@ -184,10 +193,10 @@ <py:when test="len(block.base.lines) >= len(block.changed.lines)"> <tr py:for="idx, line in enumerate(block.base.lines)"> <th>${block.base.offset+idx+1}</th> - <td class="l"><span>$line</span> </td> + <td class="l"><span>$line</span></td> <py:with vars="within_change = idx < len(block.changed.lines)"> <th>${block.changed.offset + idx + 1 if within_change else ' '}</th> - <td class="r"><span py:if="within_change">${block.changed.lines[idx]}</span> </td> + <td class="r"><span py:if="within_change">${block.changed.lines[idx]}</span></td> </py:with> </tr> </py:when> @@ -195,10 +204,10 @@ <tr py:for="idx, line in enumerate(block.changed.lines)"> <py:with vars="within_change = idx < len(block.base.lines)"> <th>${block.base.offset + idx + 1 if within_change else ' '}</th> - <td class="l"><span py:if="within_change">${block.base.lines[idx]}</span> </td> + <td class="l"><span py:if="within_change">${block.base.lines[idx]}</span></td> </py:with> <th>${block.changed.offset + idx + 1}</th> - <td class="r"><span>$line</span> </td> + <td class="r"><span>$line</span></td> </tr> </py:otherwise> </py:choose> @@ -207,12 +216,12 @@ <!--! First show the "old" lines --> <tr py:for="idx, line in enumerate(block.base.lines)" class="${'first' if idx == 0 else None}"> - <th>${block.base.offset + idx + 1}</th><th> </th><td class="l"><span>$line</span> </td> + <th>${block.base.offset + idx + 1}</th><th> </th><td class="l"><span>$line</span></td> </tr> <!--! Then show the "new" lines --> <tr py:for="idx, line in enumerate(block.changed.lines)" class="${'last' if idx + 1 == len(block.changed.lines) else None}"> - <th> </th><th>${block.changed.offset + idx + 1}</th><td class="r"><span>$line</span> </td> + <th> </th><th>${block.changed.offset + idx + 1}</th><td class="r"><span>$line</span></td> </tr> </py:when> </py:choose> Modified: bloodhound/vendor/trac/current/trac/templates/diff_options.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/diff_options.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/diff_options.html (original) +++ bloodhound/vendor/trac/current/trac/templates/diff_options.html Fri Nov 14 11:06:23 2014 @@ -1,6 +1,17 @@ -<!--! Add diff option fields (to be used inside a form) +<!--! Copyright (C) 2009-2014 Edgewall Software - `diff` the datastructure which contains diff options + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. + +Add diff option fields (to be used inside a form) + +Arguments: + - `diff` the datastructure which contains diff options --> <div xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://genshi.edgewall.org/" Modified: bloodhound/vendor/trac/current/trac/templates/diff_view.html URL: http://svn.apache.org/viewvc/bloodhound/vendor/trac/current/trac/templates/diff_view.html?rev=1639602&r1=1639601&r2=1639602&view=diff ============================================================================== --- bloodhound/vendor/trac/current/trac/templates/diff_view.html (original) +++ bloodhound/vendor/trac/current/trac/templates/diff_view.html Fri Nov 14 11:06:23 2014 @@ -1,3 +1,13 @@ +<!--! Copyright (C) 2006-2014 Edgewall Software + + This software is licensed as described in the file COPYING, which + you should have received as part of this distribution. The terms + are also available at http://trac.edgewall.com/license.html. + + This software consists of voluntary contributions made by many + individuals. For the exact contribution history, see the revision + history and logs, available at http://trac.edgewall.org/. +--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> @@ -18,16 +28,16 @@ <py:when test="old_version"><i18n:msg params="old, new, name">Changes between <a href="${old_url or url_of(resource, version=old_version)}">Version $old_version</a> and <a href="${new_url or url_of(resource, version=new_version)}">Version $new_version</a> of - <a href="${url or url_of(resource)}">${name or name_of(resource)}</a> + <a href="${url or url_of(resource, version=None)}">${name or name_of(resource)}</a> </i18n:msg></py:when> <py:when test="old_version == 0"><i18n:msg params="new, name">Changes between <a href="${old_url or url_of(resource, version=0)}">Initial Version</a> and <a href="${new_url or url_of(resource, version=new_version)}">Version $new_version</a> of - <a href="${url or url_of(resource)}">${name or name_of(resource)}</a> + <a href="${url or url_of(resource, version=None)}">${name or name_of(resource)}</a> </i18n:msg></py:when> <py:otherwise><i18n:msg params="new, name">Changes from <a href="${new_url or url_of(resource, version=new_version)}">Version $new_version</a> of - <a href="${url or url_of(resource)}">${name or name_of(resource)}</a> + <a href="${url or url_of(resource, version=None)}">${name or name_of(resource)}</a> </i18n:msg></py:otherwise> </h1> <form method="post" id="prefs" action="${diff_url or url_of(resource)}">