Re: [Trac] Re: TracHtmlNotificationPlugin only sends text/plain

Jun Omae <[email protected]> Mon, 22 Jun 2026 22:05:23 +0900
Newsgroups gmane.comp.version-control.subversion.trac.general
Message-ID <CAEVLMahJEchBf--4OODdo_UsecKgUDcFW9qvSfrUHg+Fe2NfgQ@mail.gmail.com>
Trying to reproduce it on fresh Ubuntu 26.04 environment on a
container but it is unable to reproduce.

I suspect that your PYTHON_EGG_CACHE directory has old files which are
extracted from old egg files. If PYTHON_EGG_CACHE directory is used,
try to make the directory empty.

See also https://trac.edgewall.org/wiki/TracModWSGI#Thetrac.wsgiscript

If PYTHON_EGG_CACHE directory is used, I don't recommend to install
egg files to plugins directory of the project. Instead, I recommend to
install to "lib" directory of venv. Otherwise, extract the egg files
to plugins/<name>.egg directory.

e.g.
$ unzip -x dist/TracHtmlNotificationPlugin-0.12.0.4-py3.14.egg -d
tracenv/plugins/TracHtmlNotificationPlugin-0.12.0.4-py3.14.egg


On Mon, Jun 22, 2026 at 4:55=E2=80=AFPM Manuel Bilderbeek
<[email protected]> wrote:
>
> Hi,
>
> Here is the requested information.
>
> System Information
>
> User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 =
(KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36
>
>
> PackageVersion
> Trac1.6
> Babel2.17.0
> Docutils0.22.4
> GIT2.53.0
> Jinja23.1.6
> mod_wsgi5.0.2 (WSGIProcessGroup WSGIApplicationGroup %{GLOBAL})
> Pygments2.19.2
> pysqlite2.6.0
> Python3.14.4 (main, Apr 8 2026, 04:02:31) [GCC 15.2.0]
> pytz2025.2
> setuptools78.1.1
> SQLite3.46.1
> Subversion1.14.5 (r1922182)
> jQuery3.7.1
> jQuery UI1.13.2
> jQuery Timepicker1.6.3
> Installed Plugins
> NameVersionLocation
> acct-mgr.adminN/A/usr/lib/python3/dist-packages/acct_mgr/admin.py
> acct-mgr.apiN/A/usr/lib/python3/dist-packages/acct_mgr/api.py
> acct-mgr.dbN/A/usr/lib/python3/dist-packages/acct_mgr/db.py
> acct-mgr.guardN/A/usr/lib/python3/dist-packages/acct_mgr/guard.py
> acct-mgr.htfileN/A/usr/lib/python3/dist-packages/acct_mgr/htfile.py
> acct-mgr.httpN/A/usr/lib/python3/dist-packages/acct_mgr/http.py
> acct-mgr.macrosN/A/usr/lib/python3/dist-packages/acct_mgr/macros.py
> acct-mgr.modelN/A/usr/lib/python3/dist-packages/acct_mgr/model.py
> acct-mgr.notificationN/A/usr/lib/python3/dist-packages/acct_mgr/notificat=
ion.py
> acct-mgr.pwhashN/A/usr/lib/python3/dist-packages/acct_mgr/pwhash.py
> acct-mgr.registerN/A/usr/lib/python3/dist-packages/acct_mgr/register.py
> acct-mgr.svnserveN/A/usr/lib/python3/dist-packages/acct_mgr/svnserve.py
> acct-mgr.web-uiN/A/usr/lib/python3/dist-packages/acct_mgr/web_ui.py
> customfieldadmin.adminN/A/usr/lib/python3/dist-packages/customfieldadmin/=
admin.py
> customfieldadmin.apiN/A/usr/lib/python3/dist-packages/customfieldadmin/ap=
i.py
> TicketValidator0.2.dev0/srv/trac/projects/swdev/plugins/TicketValidator-0=
.2.dev0-py3.14.egg
> trac.aboutN/A/usr/lib/python3/dist-packages/trac/about.py
> trac.admin.apiN/A/usr/lib/python3/dist-packages/trac/admin/api.py
> trac.admin.consoleN/A/usr/lib/python3/dist-packages/trac/admin/console.py
> trac.admin.web-uiN/A/usr/lib/python3/dist-packages/trac/admin/web_ui.py
> trac.attachmentN/A/usr/lib/python3/dist-packages/trac/attachment.py
> trac.cacheN/A/usr/lib/python3/dist-packages/trac/cache.py
> trac.configN/A/usr/lib/python3/dist-packages/trac/config.py
> trac.db.apiN/A/usr/lib/python3/dist-packages/trac/db/api.py
> trac.db.sqlite-backendN/A/usr/lib/python3/dist-packages/trac/db/sqlite_ba=
ckend.py
> trac.envN/A/usr/lib/python3/dist-packages/trac/env.py
> trac.mimeview.apiN/A/usr/lib/python3/dist-packages/trac/mimeview/api.py
> trac.mimeview.patchN/A/usr/lib/python3/dist-packages/trac/mimeview/patch.=
py
> trac.mimeview.pygmentsN/A/usr/lib/python3/dist-packages/trac/mimeview/pyg=
ments.py
> trac.mimeview.rstN/A/usr/lib/python3/dist-packages/trac/mimeview/rst.py
> trac.notification.apiN/A/usr/lib/python3/dist-packages/trac/notification/=
api.py
> trac.notification.mailN/A/usr/lib/python3/dist-packages/trac/notification=
/mail.py
> trac.notification.prefsN/A/usr/lib/python3/dist-packages/trac/notificatio=
n/prefs.py
> trac.permN/A/usr/lib/python3/dist-packages/trac/perm.py
> trac.prefs.web-uiN/A/usr/lib/python3/dist-packages/trac/prefs/web_ui.py
> trac.resourceN/A/usr/lib/python3/dist-packages/trac/resource.py
> trac.search.web-uiN/A/usr/lib/python3/dist-packages/trac/search/web_ui.py
> trac.ticket.adminN/A/usr/lib/python3/dist-packages/trac/ticket/admin.py
> trac.ticket.apiN/A/usr/lib/python3/dist-packages/trac/ticket/api.py
> trac.ticket.batchN/A/usr/lib/python3/dist-packages/trac/ticket/batch.py
> trac.ticket.default-workflowN/A/usr/lib/python3/dist-packages/trac/ticket=
/default_workflow.py
> trac.ticket.modelN/A/usr/lib/python3/dist-packages/trac/ticket/model.py
> trac.ticket.notificationN/A/usr/lib/python3/dist-packages/trac/ticket/not=
ification.py
> trac.ticket.queryN/A/usr/lib/python3/dist-packages/trac/ticket/query.py
> trac.ticket.reportN/A/usr/lib/python3/dist-packages/trac/ticket/report.py
> trac.ticket.roadmapN/A/usr/lib/python3/dist-packages/trac/ticket/roadmap.=
py
> trac.ticket.web-uiN/A/usr/lib/python3/dist-packages/trac/ticket/web_ui.py
> trac.timeline.web-uiN/A/usr/lib/python3/dist-packages/trac/timeline/web_u=
i.py
> trac.versioncontrol.adminN/A/usr/lib/python3/dist-packages/trac/versionco=
ntrol/admin.py
> trac.versioncontrol.apiN/A/usr/lib/python3/dist-packages/trac/versioncont=
rol/api.py
> trac.versioncontrol.svn-authzN/A/usr/lib/python3/dist-packages/trac/versi=
oncontrol/svn_authz.py
> trac.versioncontrol.web-ui.browserN/A/usr/lib/python3/dist-packages/trac/=
versioncontrol/web_ui/browser.py
> trac.versioncontrol.web-ui.changesetN/A/usr/lib/python3/dist-packages/tra=
c/versioncontrol/web_ui/changeset.py
> trac.versioncontrol.web-ui.logN/A/usr/lib/python3/dist-packages/trac/vers=
ioncontrol/web_ui/log.py
> trac.web.authN/A/usr/lib/python3/dist-packages/trac/web/auth.py
> trac.web.chromeN/A/usr/lib/python3/dist-packages/trac/web/chrome.py
> trac.web.mainN/A/usr/lib/python3/dist-packages/trac/web/main.py
> trac.web.sessionN/A/usr/lib/python3/dist-packages/trac/web/session.py
> trac.wiki.adminN/A/usr/lib/python3/dist-packages/trac/wiki/admin.py
> trac.wiki.apiN/A/usr/lib/python3/dist-packages/trac/wiki/api.py
> trac.wiki.intertracN/A/usr/lib/python3/dist-packages/trac/wiki/intertrac.=
py
> trac.wiki.interwikiN/A/usr/lib/python3/dist-packages/trac/wiki/interwiki.=
py
> trac.wiki.macrosN/A/usr/lib/python3/dist-packages/trac/wiki/macros.py
> trac.wiki.parserN/A/usr/lib/python3/dist-packages/trac/wiki/parser.py
> trac.wiki.web-apiN/A/usr/lib/python3/dist-packages/trac/wiki/web_api.py
> trac.wiki.web-uiN/A/usr/lib/python3/dist-packages/trac/wiki/web_ui.py
> TracChildTickets2.6.0.dev0/srv/trac/projects/swdev/plugins/TracChildTicke=
ts-2.6.0.dev0-py3.14.egg
> TracDragDrop0.12.0.18/srv/trac/projects/swdev/plugins/TracDragDrop-0.12.0=
.18-py3.14.egg
> TracHtmlNotificationPlugin0.12.0.4/srv/trac/projects/swdev/plugins/TracHt=
mlNotificationPlugin-0.12.0.4-py3.14.egg
> tracopt.perm.authz-policyN/A/usr/lib/python3/dist-packages/tracopt/perm/a=
uthz_policy.py
> tracopt.perm.config-perm-providerN/A/usr/lib/python3/dist-packages/tracop=
t/perm/config_perm_provider.py
> tracopt.ticket.cloneN/A/usr/lib/python3/dist-packages/tracopt/ticket/clon=
e.py
> tracopt.ticket.commit-updaterN/A/usr/lib/python3/dist-packages/tracopt/ti=
cket/commit_updater.py
> tracopt.ticket.deleterN/A/usr/lib/python3/dist-packages/tracopt/ticket/de=
leter.py
> tracopt.versioncontrol.git.git-fsN/A/usr/lib/python3/dist-packages/tracop=
t/versioncontrol/git/git_fs.py
> tracopt.versioncontrol.svn.svn-fsN/A/usr/lib/python3/dist-packages/tracop=
t/versioncontrol/svn/svn_fs.py
> tracopt.versioncontrol.svn.svn-propN/A/usr/lib/python3/dist-packages/trac=
opt/versioncontrol/svn/svn_prop.py
> TracPrivateTickets2.4.0.dev0/srv/trac/projects/swdev/plugins/TracPrivateT=
ickets-2.4.0.dev0-py3.14.egg
> TracTicketTemplate1.0.1.dev0/srv/trac/projects/swdev/plugins/TracTicketTe=
mplate-1.0.1.dev0-py3.14.egg
> tracwysiwygN/A/usr/lib/python3/dist-packages/tracwysiwyg/__init__.py
> Interface Customization
> Site templatessite.html
> Shared templates
> Site static resourceslogo-old.png logo.png siminst_admin_region_settings.=
png siminst_cmd_as_admin.png siminst_cmd_as_user.png siminst_extract_dialog=
.png siminst_extracting_progress_dialog.png siminst_formats_settings.png si=
minst_language_settings.png siminst_login_button.png siminst_main_language.=
png siminst_region_settings.png siminst_search_cmd.png siminst_settings.png=
 siminst_settings_for_time.png siminst_system_id.png siminst_system_locale_=
settings.png siminst_system_settings.png siminst_time_settings.png siminst_=
tools_button.png siminst_uninstall_dialog.png siminst_uninstall_prereq.png
> Shared static resources
>
> It looks like it got a little garbled when copy-pasting from the web page=
, but I guess it's clear enough? Let me know if you prefer plaintext pastin=
g.
>
> I will also paste trac.ini, but I had to remove some things that are bett=
er not put in the open due to company policies. These are marked with <REMO=
VED>. I'm glad this installation is not accessible from the internet ;-)
>
> # -*- coding: utf-8 -*-
>
> [account-manager]
> auth_init =3D enabled
> db_htdigest_realm =3D
> db_htpasswd_hash_type =3D crypt
> force_passwd_change =3D disabled
> hash_method =3D HtDigestHashMethod
> htpasswd_file =3D /srv/.htpasswd
> htpasswd_hash_type =3D crypt
> password_store =3D HtPasswdStore
> persistent_sessions =3D disabled
> refresh_passwd =3D disabled
> register_check =3D BasicCheck
> user_lock_max_time =3D 86400
> verify_email =3D disabled
>
> [attachment]
> max_size =3D 314572800
> render_unsafe_content =3D disabled
>
> [browser]
> color_scale =3D enabled
> downloadable_paths =3D /trunk,/branches/*,/tags/*
> hide_properties =3D svk:merge
> intermediate_color =3D
> intermediate_point =3D
> newest_color =3D (255, 136, 136)
> oldest_color =3D (136, 136, 255)
> oneliner_properties =3D trac:summary
> render_unsafe_content =3D disabled
> wiki_properties =3D trac:description
>
> [changeset]
> max_diff_bytes =3D 10000000
> max_diff_files =3D 0
> wiki_format_messages =3D enabled
>
> [childtickets]
> parent.defect.allow_child_tickets =3D True
> parent.defect.default_child_type =3D defect
> parent.defect.inherit =3D function,component,priority,version,milestone,k=
eywords
> parent.defect.restrict_child_type =3D enhancement,task (software),defect,=
obsolescence
> parent.defect.table_headers =3D status,component,summary,priority,milesto=
ne,owner,type
> parent.enhancement.allow_child_tickets =3D True
> parent.enhancement.default_child_type =3D enhancement
> parent.enhancement.inherit =3D function,component,priority,version,milest=
one,keywords
> parent.enhancement.restrict_child_type =3D enhancement,task (software),de=
fect,obsolescence
> parent.enhancement.table_headers =3D status,component,summary,priority,mi=
lestone,owner,type
> parent.obsolescence.allow_child_tickets =3D True
> parent.obsolescence.inherit =3D component,priority,version,milestone,keyw=
ords
> parent.obsolescence.restrict_child_type =3D obsolescence,defect,task (sof=
tware),enhancement
> parent.obsolescence.table_headers =3D status,component,summary,priority,m=
ilestone,owner,type
> parent.task (software).allow_child_tickets =3D True
> parent.task (software).default_child_type =3D task (software)
> parent.task (software).inherit =3D function,component,priority,version,mi=
lestone,keywords
> parent.task (software).restrict_child_type =3D enhancement,task (software=
),defect,obsolescence
> parent.task (software).table_headers =3D status,component,summary,priorit=
y,milestone,owner,type
>
> [components]
> tracdragdrop.* =3D enabled
> acct_mgr.admin.accountmanageradminpage =3D disabled
> acct_mgr.admin.accountmanageradminpanel =3D enabled
> acct_mgr.admin.configurationadminpanel =3D enabled
> acct_mgr.admin.useradminpanel =3D enabled
> acct_mgr.api.accountmanager =3D enabled
> acct_mgr.db.sessionstore =3D enabled
> acct_mgr.htfile.abstractpasswordfilestore =3D disabled
> acct_mgr.htfile.htdigeststore =3D disabled
> acct_mgr.htfile.htpasswdstore =3D enabled
> acct_mgr.http.httpauthstore =3D disabled
> acct_mgr.notification.accountchangelistener =3D disabled
> acct_mgr.notification.accountchangenotificationadminpanel =3D disabled
> acct_mgr.pwhash.htdigesthashmethod =3D enabled
> acct_mgr.pwhash.htpasswdhashmethod =3D enabled
> acct_mgr.register.basiccheck =3D enabled
> acct_mgr.register.registrationmodule =3D enabled
> acct_mgr.svnserve.svnservepasswordstore =3D disabled
> acct_mgr.web_ui.accountmodule =3D disabled
> acct_mgr.web_ui.emailverificationmodule =3D disabled
> acct_mgr.web_ui.loginmodule =3D disabled
> acct_mgr.web_ui.registrationmodule =3D disabled
> batchmod.web_ui.* =3D enabled
> batchmod.web_ui.batchmodifymodule =3D disabled
> childtickets.* =3D enabled
> childtickets.admin.childticketsadminpanel =3D enabled
> childtickets.childtickets.tracchildticketsmodule =3D enabled
> customfieldadmin.admin.customfieldadminpage =3D enabled
> customfieldadmin.api.customfields =3D enabled
> customfieldadmin.customfieldadmin.customfieldadminpage =3D enabled
> privatetickets.* =3D enabled
> ticketdelete.web_ui.* =3D enabled
> ticketdelete.web_ui.ticketdeleteplugin =3D disabled
> ticketmodifiedfiles.* =3D enabled
> ticketmodifiedfiles.ticketmodifiedfiles.ticketmodifiedfilesplugin =3D ena=
bled
> ticketstats.* =3D enabled
> ticketstats.ticketstats.ticketstatsplugin =3D enabled
> tickettemplate.* =3D enabled
> tickettemplate.ttadmin.tickettemplatemodule =3D enabled
> ticketvalidator.admin.ticketvalidatoradminpanelprovider =3D enabled
> ticketvalidator.core.requiredfieldvalidator =3D enabled
> trachtmlnotification.* =3D enabled
> tracopt.ticket.commit_updater.committicketupdater =3D enabled
> tracopt.ticket.commit_updater.committicketreferencemacro =3D enabled
> tracopt.versioncontrol.git.git_fs.csetpropertyrenderer =3D enabled
> tracopt.versioncontrol.git.git_fs.gitconnector =3D enabled
> tracopt.versioncontrol.git.git_fs.gitwebprojectsrepositoryprovider =3D en=
abled
> tracopt.versioncontrol.svn.svn_fs.subversionconnector =3D enabled
> tracopt.versioncontrol.svn.svn_prop.subversionmergepropertydiffrenderer =
=3D enabled
> tracopt.versioncontrol.svn.svn_prop.subversionmergepropertyrenderer =3D e=
nabled
> tracopt.versioncontrol.svn.svn_prop.subversionpropertyrenderer =3D enable=
d
> tracwysiwyg.templateprovider =3D enabled
> tracwysiwyg.wysiwygwikifilter =3D enabled
>
> [gitweb-repositories]
> projects_base =3D
> projects_list =3D
> projects_url =3D
> sync_per_request =3D
>
> [header_logo]
> alt =3D ASMPT ALSI Trac database
> src =3D site/logo.png
>
> [inherit]
> plugins_dir =3D /srv/trac/projects/
> templates_dir =3D
>
> [logging]
> log_file =3D trac.log
> log_level =3D WARN
> log_type =3D file
>
> [mainnav]
> browser.order =3D 4.0
> newticket.order =3D 6.0
> roadmap.order =3D 3.0
> search.order =3D 7.0
> tickets.order =3D 5.0
> timeline.order =3D 2.0
> wiki.order =3D 1.0
>
> [metanav]
> about.order =3D 5.0
> help.order =3D 4.0
> login.order =3D 1.0
> logout.order =3D 2.0
> prefs.order =3D 3.0
>
> [milestone]
> stats_provider =3D DefaultTicketGroupStatsProvider
>
> [mimeviewer]
> enscript_modes =3D text/x-dylan:dylan:4
> enscript_path =3D enscript
> max_preview_size =3D 12621440
> mime_map =3D text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
> php_path =3D php
> tab_width =3D 8
>
> [notification]
> admit_domains =3D
> default_format.email =3D text/html
> ignore_domains =3D
> mime_encoding =3D base64
> smtp_always_bcc =3D
> smtp_always_cc =3D
> smtp_default_domain =3D
> smtp_enabled =3D enabled
> smtp_from =3D <REMOVED>
> smtp_from_name =3D ASMPT Trac database
> smtp_password =3D
> smtp_port =3D 25
> smtp_replyto =3D [email protected]
> smtp_server =3D 127.0.0.1
> smtp_subject_prefix =3D __default__
> smtp_user =3D
> ticket_subject_template =3D ${prefix} #${ticket.id}: ${summary}
> use_public_cc =3D disabled
> use_short_addr =3D disabled
> use_tls =3D disabled
>
> [notification-subscriber]
> always_notify_cc =3D CarbonCopySubscriber
> always_notify_previous_updater =3D TicketPreviousUpdatersSubscriber
> always_notify_updater =3D TicketUpdaterSubscriber
>
> [privatetickets]
> group_blacklist =3D anonymous,authenticated
>
> [project]
> admin =3D
> descr =3D Ticketing system for ASMPT ALSI
> footer =3D Visit the Trac open source project at<br /><a href=3D"http://t=
rac.edgewall.org/">http://trac.edgewall.org/</a>
> icon =3D common/trac.ico
> name =3D ASMPT ALSI Development
> url =3D
>
> [query]
> default_anonymous_query =3D status!=3Dclosed&cc~=3D$USER
> default_query =3D status!=3Dclosed&owner=3D$USER
> items_per_page =3D 100
>
> [report]
> items_per_page =3D 100
> items_per_page_rss =3D 0
>
> [repositories]
> .dir =3D /srv/svn/SVN_LSS_REPOS
>
> [revisionlog]
> default_log_limit =3D 100
>
> [roadmap]
> stats_provider =3D DefaultTicketGroupStatsProvider
>
> [search]
> min_query_length =3D 3
>
> [svn]
> authz_file =3D
> authz_module_name =3D
> branches =3D trunk,branches/*
> tags =3D tags/*
>
> [ticket]
> commit_ticket_update_check_perms =3D disabled
> commit_ticket_update_commands.close =3D
> commit_ticket_update_commands.refs =3D <ALL>
> commit_ticket_update_envelope =3D []
> commit_ticket_update_notify =3D enabled
> default_cc =3D
> default_component =3D Unknown
> default_description =3D
> default_keywords =3D
> default_milestone =3D Unspecified
> default_owner =3D ccb
> default_priority =3D <not set>
> default_resolution =3D fixed
> default_severity =3D <not set>
> default_summary =3D
> default_type =3D defect
> default_version =3D All
> max_comment_size =3D 262144
> max_description_size =3D 262144
> preserve_newlines =3D default
> restrict_owner =3D enabled
> workflow =3D ConfigurableTicketWorkflow
>
> [ticket-custom]
> chance =3D select
> chance.label =3D Chance of occurrence
> chance.options =3D <REMOVED>
> chance.order =3D 5
> chance.value =3D Chance of occurence
> customer =3D select
> customer.label =3D Customer
> customer.options =3D <REMOVED>
> customer.order =3D 7
> customer.value =3D
> function =3D select
> function.label =3D Function
> function.options =3D <REMOVED>
> function.order =3D 1
> function.value =3D
> machinetype =3D select
> machinetype.label =3D Machine Type
> machinetype.options =3D <REMOVED>
> machinetype.order =3D 2
> machinetype.value =3D None
> parent =3D text
> parent.format =3D wiki
> parent.label =3D Parent ID
> parent.order =3D 3
> parent.value =3D
> project =3D select
> project.label =3D Project
> project.options =3D <REMOVED>
> project.order =3D 0
> project.value =3D
> supplier =3D select
> supplier.label =3D Supplier
> supplier.options =3D <REMOVED>
> supplier.order =3D 6
> supplier.value =3D None
> valuedriver =3D select
> valuedriver.label =3D Value Driver
> valuedriver.options =3D <REMOVED>
> valuedriver.order =3D 4
> valuedriver.value =3D None
>
> [ticket-workflow]
> analyse =3D new,reopened,analysed,solved,analysing -> analysing
> analyse.operations =3D set_owner
> analyse.permissions =3D TICKET_MODIFY
> analysed =3D analysing -> analysed
> analysed.operations =3D set_owner
> analysed.permissions =3D TICKET_MODIFY
> approved =3D new,analysed,solved -> closed
> approved.operations =3D set_resolution
> approved.permissions =3D TICKET_MODIFY
> create =3D <none> -> new
> create.default =3D 1
> leave =3D * -> *
> leave.default =3D 1
> leave.operations =3D leave_status
> reassign =3D new,analysed,solved,reopened,assigned -> assigned
> reassign.operations =3D set_owner
> reassign.permissions =3D TICKET_MODIFY
> reopen =3D closed -> reopened
> reopen.operations =3D del_resolution
> reopen.permissions =3D TICKET_CREATE
> resolved =3D assigned -> solved
> resolved.operations =3D set_owner
> resolved.permissions =3D TICKET_MODIFY
>
> [tickettemplate]
> enable_custom =3D enabled
> field_list =3D summary,description,reporter,owner,priority,cc,milestone,c=
omponent,version,type
>
> [ticketvalidator]
> assigned.required =3D project, summary, customer, supplier, function, sev=
erity, priority, valuedriver, machinetype
> new.required =3D project, summary, customer, supplier, function, severity=
, priority, valuedriver, machinetype
>
> [timeline]
> abbreviated_messages =3D enabled
> changeset_collapse_events =3D disabled
> changeset_long_messages =3D disabled
> changeset_show_files =3D 0
> default_daysback =3D 30
> max_daysback =3D 90
> newticket_formatter =3D oneliner
> ticket_show_details =3D disabled
>
> [trac]
> auto_reload =3D disabled
> base_url =3D https://alsi-lnx.alsi.local/trac/swdev
> check_auth_ip =3D disabled
> database =3D sqlite:db/trac.db
> default_charset =3D iso-8859-15
> default_date_format =3D
> default_dateinfo_format =3D relative
> default_handler =3D WikiModule
> default_language =3D
> default_timezone =3D
> htdocs_location =3D
> ignore_auth_case =3D disabled
> permission_policies =3D DefaultWikiPolicy,DefaultTicketPolicy,DefaultPerm=
issionPolicy,LegacyAttachmentPolicy
> permission_store =3D DefaultPermissionStore
> secure_cookies =3D disabled
> show_email_addresses =3D disabled
> timeout =3D 20
> use_base_url_for_redirect =3D disabled
>
> [versioncontrol]
> default_repository_type =3D svn
>
> [wiki]
> ignore_missing_pages =3D disabled
> max_size =3D 262144
> render_unsafe_content =3D disabled
> split_page_names =3D disabled
>
> Thanks again for your continuous support.
> Op zondag 21 juni 2026 om 07:34:49 UTC+2 schreef Jun Omae:
>>
>> On Fri, Jun 19, 2026 at 11:46=E2=80=AFPM Manuel Bilderbeek
>> <[email protected]> wrote:
>> >
>> > Where should that be?
>> >
>> > alsi-lnx:/srv/trac/projects/swdev$ ls -la templates/
>> > total 12
>> > drwxr-xr-x 2 www-data www-data 4096 Jun 14 2013 .
>> > drwxrwxr-x 12 www-data www-data 4096 Apr 15 2025 ..
>> > -rw-r--r-- 1 www-data www-data 154 Mar 19 2009 site.html
>> > alsi-lnx:/srv/trac/projects/swdev$
>> >
>> > There is only site.html there, nothing else.... am I looking at the wr=
ong place?
>>
>> Hm, it seems that you have no custom htmlnotification_ticket.html but
>> it is unable to reproduce the issue with Trac 1.6, this plugin and
>> fresh Trac Environment.
>>
>> Please share the following information if possible:
>>
>> * System Information, Installed Plugins and Interface Customization
>> from /about page in your Trac
>> * trac.ini
>>
>> --
>> Jun Omae <[email protected]> (=E5=A4=A7=E5=89=8D =E6=BD=A4)
>
> --
> You received this message because you are subscribed to the Google Groups=
 "Trac Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an=
 email to trac-users+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected]
> To view this discussion visit https://groups.google.com/d/msgid/trac-user=
s/80ff24ca-c201-4cb8-8f50-0a934c225acfn%40googlegroups.com.



--=20
Jun Omae <[email protected]> (=E5=A4=A7=E5=89=8D =E6=BD=A4)

--=20
You received this message because you are subscribed to the Google Groups "=
Trac Users" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to trac-users+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected]
To view this discussion visit https://groups.google.com/d/msgid/trac-users/=
CAEVLMahJEchBf--4OODdo_UsecKgUDcFW9qvSfrUHg%2BFe2NfgQ%40mail.gmail.com.