<?xml version="1.0" encoding="utf-8"?>
<!--RSS generated by Flaimo.com RSS Builder [2026-08-26 09:19:12]-->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"><channel><docs>https://mantisbt.org/bugs/</docs><link>https://mantisbt.org/bugs/</link><description><![CDATA[MantisBT - Issues]]></description><title>MantisBT - Issues</title><image><title>MantisBT - Issues</title><url>https://mantisbt.org/bugs/images/mantis_logo.png</url><link>https://mantisbt.org/bugs/</link><description><![CDATA[MantisBT - Issues]]></description></image><language>en</language><category>All Projects</category><ttl>10</ttl><dc:language>en</dc:language><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><item><title>0037359: Admin check reports false FAIL when Graphviz path is outside open_basedir</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37359</link><description><![CDATA[## Summary&lt;br /&gt;
&lt;br /&gt;
On a clean MantisBT 2.28.4 installation, the admin installation check reports multiple `FAIL` results when PHP `open_basedir` restricts access to the default Graphviz path `/usr/bin/`.&lt;br /&gt;
&lt;br /&gt;
One of the reported failures appears to be misleading:&lt;br /&gt;
&lt;br /&gt;
`absolute_path configuration option has a trailing directory separator`&lt;br /&gt;
&lt;br /&gt;
The `absolute_path` value is correct and the corresponding condition evaluates to `true`.&lt;br /&gt;
&lt;br /&gt;
## Environment&lt;br /&gt;
&lt;br /&gt;
* MantisBT: 2.28.4&lt;br /&gt;
* PHP: with `open_basedir` enabled&lt;br /&gt;
* Example `open_basedir`:&lt;br /&gt;
&lt;br /&gt;
  ```text&lt;br /&gt;
  /var/www/example.com&lt;br /&gt;
  ```&lt;br /&gt;
* Default Graphviz path:&lt;br /&gt;
&lt;br /&gt;
  ```php&lt;br /&gt;
  $g_graphviz_path = '/usr/bin/';&lt;br /&gt;
  ```&lt;br /&gt;
* Relationship graphs:&lt;br /&gt;
&lt;br /&gt;
  ```php&lt;br /&gt;
  $g_relationship_graph_enable = OFF;&lt;br /&gt;
  ```&lt;br /&gt;
&lt;br /&gt;
## Steps to reproduce&lt;br /&gt;
&lt;br /&gt;
1. Install a clean MantisBT 2.28.4 release.&lt;br /&gt;
2. Configure PHP with an `open_basedir` restriction, for example:&lt;br /&gt;
&lt;br /&gt;
   ```text&lt;br /&gt;
   open_basedir = /var/www/example.com&lt;br /&gt;
   ```&lt;br /&gt;
3. Leave the default Graphviz configuration unchanged:&lt;br /&gt;
&lt;br /&gt;
   ```php&lt;br /&gt;
   $g_graphviz_path = '/usr/bin/';&lt;br /&gt;
   ```&lt;br /&gt;
4. Open the MantisBT Admin → Check Installation page.&lt;br /&gt;
&lt;br /&gt;
## Actual result&lt;br /&gt;
&lt;br /&gt;
The following checks are reported as `FAIL`:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
absolute_path configuration option has a trailing directory separator&lt;br /&gt;
&lt;br /&gt;
graphviz_path configuration option points to a valid directory&lt;br /&gt;
The path '/usr/bin/' is not a valid directory.&lt;br /&gt;
&lt;br /&gt;
graphviz_path configuration option points to an accessible directory&lt;br /&gt;
The path '/usr/bin/' is not accessible.&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
The Graphviz failures are understandable because `/usr/bin/` is outside the configured `open_basedir`.&lt;br /&gt;
&lt;br /&gt;
However, the `absolute_path` check is also marked as `FAIL`, even though its value is correct.&lt;br /&gt;
&lt;br /&gt;
Example runtime value:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
/var/www/example.com/public_html/mantisbt-2.28.4/&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
The exact condition used by the admin check:&lt;br /&gt;
&lt;br /&gt;
```php&lt;br /&gt;
substr( $t_path['config_value'], -1, 1 ) == DIRECTORY_SEPARATOR&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
evaluates to:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
bool(true)&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
## Additional investigation&lt;br /&gt;
&lt;br /&gt;
Calling:&lt;br /&gt;
&lt;br /&gt;
```php&lt;br /&gt;
realpath('/usr/bin/');&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
results in an `open_basedir` restriction warning and returns:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
bool(false)&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
The admin check function contains:&lt;br /&gt;
&lt;br /&gt;
```php&lt;br /&gt;
$t_unhandled = check_unhandled_errors_exist();&lt;br /&gt;
&lt;br /&gt;
if( $p_pass &amp;&amp; !$t_unhandled ) {&lt;br /&gt;
    $t_result = GOOD;&lt;br /&gt;
} elseif( $p_warning &amp;&amp; !$t_unhandled || $t_unhandled == E_DEPRECATED ) {&lt;br /&gt;
    $t_result = WARN;&lt;br /&gt;
} else {&lt;br /&gt;
    $t_result = BAD;&lt;br /&gt;
}&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
This appears to allow a successful check (`$p_pass === true`) to be displayed as `FAIL` when an unrelated unhandled warning is present.&lt;br /&gt;
&lt;br /&gt;
## Expected result&lt;br /&gt;
&lt;br /&gt;
* The `absolute_path` check should report `PASS`.&lt;br /&gt;
* A Graphviz-related warning or failure should not change the result of unrelated configuration checks.&lt;br /&gt;
* Ideally, the Graphviz path should not be validated as a required path when Graphviz functionality is disabled:&lt;br /&gt;
&lt;br /&gt;
  ```php&lt;br /&gt;
  $g_relationship_graph_enable = OFF;&lt;br /&gt;
  ```&lt;br /&gt;
&lt;br /&gt;
## Notes&lt;br /&gt;
&lt;br /&gt;
The issue is reproducible with a clean MantisBT 2.28.4 installation, so it does not appear to be caused by modified or leftover files from an upgrade.&lt;br /&gt;
&lt;br /&gt;
All paths in this report are anonymized examples.]]></description><category>bugtracker</category><pubDate>Wed, 26 Aug 2026 08:23:50 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37359</guid><comments>https://mantisbt.org/bugs/view.php?id=37359#bugnotes</comments></item><item><title>0037355: Message-ID of a submit notification is inherited by subsequent notifications for unrelated issues</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37355</link><description><![CDATA[MantisBT reuses one global PHPMailer instance for all messages sent within a process. Only notifications for newly submitted issues set a Message-ID header (email_bug_info_to_one_user()); every other notification carries In-Reply-To instead. The cleanup between messages clears recipients, attachments, reply-to addresses and custom headers, but not PHPMailer::$MessageID.&lt;br /&gt;
&lt;br /&gt;
The value therefore survives on the shared object, and every following message that does not set its own Message-ID is sent with it. As a result, notifications belonging to different issues go out under an identical Message-ID.&lt;br /&gt;
&lt;br /&gt;
Consequences observed downstream:&lt;br /&gt;
- Mail servers that deduplicate by Message-ID discard messages silently. This is the same failure mode already described in issue 0011123.&lt;br /&gt;
- Ticket systems that resolve In-Reply-To against stored message IDs attach follow-ups to whichever issue happens to own the colliding ID, so notes for issue B end up filed under issue A.&lt;br /&gt;
&lt;br /&gt;
The impact scales with $g_email_send_using_cronjob. With queued delivery the whole queue is flushed in a single process, so one submit notification can propagate its Message-ID to every later message in that run.]]></description><category>email</category><pubDate>Tue, 25 Aug 2026 06:38:42 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37355</guid><comments>https://mantisbt.org/bugs/view.php?id=37355#bugnotes</comments></item><item><title>0037354: Category auto-assign doesn't check if user is enabled and has handler access level</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37354</link><description><![CDATA[If a user that is set to be auto-assigned issue of a category later gets disabled or no longer has the access level to handle issues, they are still assigned newly created issues.]]></description><category>bugtracker</category><pubDate>Sun, 23 Aug 2026 04:26:05 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37354</guid><comments>https://mantisbt.org/bugs/view.php?id=37354#bugnotes</comments></item><item><title>0037353: PHP 8.4: Passing E_USER_ERROR to trigger_error() is deprecated since 8.4</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37353</link><description><![CDATA[error_api.php L106&lt;br /&gt;
&lt;br /&gt;
can be reproduced by writing text in add relationship text box.]]></description><category>code cleanup</category><pubDate>Sat, 22 Aug 2026 11:07:49 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37353</guid><comments>https://mantisbt.org/bugs/view.php?id=37353#bugnotes</comments></item><item><title>0037352: REST API to Move an Issue + EVENT_MOVE_BUG event</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37352</link><description><![CDATA[Add REST API + Command to move an issue with an optional note.&lt;br /&gt;
&lt;br /&gt;
- Implements IssueMoveCommand and leverages it to expose a new REST API.&lt;br /&gt;
- Change Web UI to leverage the new command.&lt;br /&gt;
- Add an trigger `EVENT_MOVE_BUG` event after the move.]]></description><category>api rest</category><pubDate>Sun, 23 Aug 2026 15:22:33 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37352</guid><comments>https://mantisbt.org/bugs/view.php?id=37352#bugnotes</comments></item><item><title>0037351: Update ADOdb to 5.22.12</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37351</link><description><![CDATA[Improve PHP 8.5 / 8.6 compatibility (see &lt;a href=&quot;https://mantisbt.org/bugs/view.php?id=37349&quot;&gt;0037349&lt;/a&gt; / &lt;a href=&quot;https://github.com/ADOdb/ADOdb/issues/1250&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/ADOdb/ADOdb/issues/1250&lt;/a&gt;).]]></description><category>db schema</category><pubDate>Fri, 21 Aug 2026 06:11:53 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37351</guid><comments>https://mantisbt.org/bugs/view.php?id=37351#bugnotes</comments></item><item><title>0037349: Function is_integer() is deprecated since 8.6, use is_int() instead</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37349</link><description><![CDATA[Running test suite on PHP 8.6 throws numerous deprecation warnings&lt;br /&gt;
&lt;br /&gt;
Reference: &lt;a href=&quot;https://wiki.php.net/rfc/deprecations_php_8_6#deprecate_is_integer&quot; rel=&quot;noopener,nofollow&quot;&gt;https://wiki.php.net/rfc/deprecations_php_8_6#deprecate_is_integer&lt;/a&gt;]]></description><category>code cleanup</category><pubDate>Fri, 21 Aug 2026 06:11:48 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37349</guid><comments>https://mantisbt.org/bugs/view.php?id=37349#bugnotes</comments></item><item><title>0037348: Impossible to unset product version</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37348</link><description><![CDATA[When an Issue has *Product Version* defined, it is not possible to remove it, error message is :&lt;br /&gt;
&lt;br /&gt;
APPLICATION ERROR 1601&lt;br /&gt;
Version &quot;0&quot; not found.]]></description><category>bugtracker</category><pubDate>Tue, 18 Aug 2026 11:05:45 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37348</guid><comments>https://mantisbt.org/bugs/view.php?id=37348#bugnotes</comments></item><item><title>0037343: validation error check mismatches return types</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37343</link><description><![CDATA[bug_actiongroup_ext.php checks for failed id's by matching the type of the value returned from validation function to not null:&lt;br /&gt;
```&lt;br /&gt;
$t_failed_ids = array();&lt;br /&gt;
&lt;br /&gt;
foreach( $t_projects_bugs as $t_project_id =&gt; $t_bugs ) {&lt;br /&gt;
	$g_project_override = $t_project_id;&lt;br /&gt;
	foreach( $t_bugs as $t_bug_id ) {&lt;br /&gt;
		$t_fail_reason = bug_group_action_validate( $f_action, $t_bug_id );&lt;br /&gt;
		if( $t_fail_reason !== null ) {&lt;br /&gt;
			$t_failed_ids[$t_bug_id] = $t_fail_reason;&lt;br /&gt;
		}&lt;br /&gt;
		if( !isset( $t_failed_ids[$t_bug_id] ) ) {&lt;br /&gt;
			$t_fail_reason = bug_group_action_process( $f_action, $t_bug_id );&lt;br /&gt;
			if( $t_fail_reason !== null ) {&lt;br /&gt;
				$t_failed_ids[$t_bug_id] = $t_fail_reason;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
```&lt;br /&gt;
However, the validation function is supposed to return either true on success or a key=&gt;value array with reasons for validation failure:&lt;br /&gt;
```&lt;br /&gt;
/**&lt;br /&gt;
 * Validates the combination of an action and a bug.  This ends up calling&lt;br /&gt;
 * action_&lt;action&gt;_validate() from bug_actiongroup_&lt;action&gt;_inc.php&lt;br /&gt;
 *&lt;br /&gt;
 * &lt;span class=&quot;mention&quot;&gt;&lt;a href=&quot;https://mantisbt.org/bugs/view_user_page.php?id=31304&quot;&gt;@param&lt;/a&gt;&lt;/span&gt; string  $p_action The custom action name without the &quot;EXT_&quot; prefix.&lt;br /&gt;
 * &lt;span class=&quot;mention&quot;&gt;&lt;a href=&quot;https://mantisbt.org/bugs/view_user_page.php?id=31304&quot;&gt;@param&lt;/a&gt;&lt;/span&gt; integer $p_bug_id The id of the bug to validate the action on.&lt;br /&gt;
 *&lt;br /&gt;
 * @return boolean|array true if action can be applied or array of ( bug_id =&gt; reason for failure to validate )&lt;br /&gt;
 */&lt;br /&gt;
function bug_group_action_validate( $p_action, $p_bug_id ) {&lt;br /&gt;
	$t_function_name = 'action_' . $p_action . '_validate';&lt;br /&gt;
	return $t_function_name( $p_bug_id );&lt;br /&gt;
}&lt;br /&gt;
```]]></description><category>plug-ins</category><pubDate>Tue, 18 Aug 2026 11:06:21 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37343</guid><comments>https://mantisbt.org/bugs/view.php?id=37343#bugnotes</comments></item><item><title>0037342: Generate Bruno collection from OpenAPI spec</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37342</link><description><![CDATA[Generate Bruno collection from the OpenAPI spec which is the source of truth beyond the code.]]></description><category>api rest</category><pubDate>Sat, 15 Aug 2026 04:33:36 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37342</guid><comments>https://mantisbt.org/bugs/view.php?id=37342#bugnotes</comments></item><item><title>0037341: Project-specific stored_query_use_threshold is ignored when retrieving available filters</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37341</link><description><![CDATA[MantisBT does not consistently evaluate stored_query_use_threshold in the requested project context. If a project-specific value permits a user to use saved filters while the global value is higher, the filters API incorrectly returns no filters.&lt;br /&gt;
&lt;br /&gt;
Steps to reproduce&lt;br /&gt;
&lt;br /&gt;
1. Create two projects.&lt;br /&gt;
2. Create a Reporter-level user with access to one project.&lt;br /&gt;
3. Set the global stored_query_use_threshold value to Developer.&lt;br /&gt;
4. Set the selected project’s `stored_query_use_threshold` value to Reporter.&lt;br /&gt;
5. Create a public named filter associated with that project.&lt;br /&gt;
6. Authenticate as the Reporter-level user and request GET /api/rest/filters?project_id=.&lt;br /&gt;
7. Observe that no filters are returned.&lt;br /&gt;
&lt;br /&gt;
Expected result&lt;br /&gt;
The project’s public named filter is returned because the project-specific stored_query_use_threshold permits Reporter-level access.&lt;br /&gt;
&lt;br /&gt;
For ALL_PROJECTS, filters should only be returned from accessible projects whose effective stored_query_use_threshold permits access, together with global filters.]]></description><category>filters</category><pubDate>Sat, 22 Aug 2026 13:15:46 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37341</guid><comments>https://mantisbt.org/bugs/view.php?id=37341#bugnotes</comments></item><item><title>0037340: Remove swagger API definition in favor of OpenAPI spec</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37340</link><description><![CDATA[The goal is to move to a single source of truth beyond code for REST API definition.]]></description><category>api rest</category><pubDate>Tue, 18 Aug 2026 10:48:17 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37340</guid><comments>https://mantisbt.org/bugs/view.php?id=37340#bugnotes</comments></item><item><title>0037339: Generate Postman collection from OpenAPI spec</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37339</link><description><![CDATA[Avoid maintaining a parallel Postman collection and generate it from the OpenAPI spec which is the source of truth beyond the code.]]></description><category>api rest</category><pubDate>Tue, 11 Aug 2026 14:11:53 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37339</guid><comments>https://mantisbt.org/bugs/view.php?id=37339#bugnotes</comments></item><item><title>0037338: Include generated SOAP API documentation in release distributions</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37338</link><description><![CDATA[The release publishing script should include the SOAP API docs in the output artifact.]]></description><category>api soap</category><pubDate>Tue, 11 Aug 2026 14:11:53 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37338</guid><comments>https://mantisbt.org/bugs/view.php?id=37338#bugnotes</comments></item><item><title>0037337: Include generated REST API documentation in release distributions</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37337</link><description><![CDATA[The release publishing script should include the REST API docs in the output artifact.]]></description><category>api rest</category><pubDate>Sat, 15 Aug 2026 04:33:36 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37337</guid><comments>https://mantisbt.org/bugs/view.php?id=37337#bugnotes</comments></item><item><title>0037336: Generate REST API documentation from OpenAPI spec</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37336</link><description><![CDATA[1. Use OpenAPI spec as the source of truth.&lt;br /&gt;
2. Generate static documentation from the spec.&lt;br /&gt;
3. Retire the use of Postman collection published on Postman catalog.]]></description><category>api rest</category><pubDate>Sat, 15 Aug 2026 04:33:36 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37336</guid><comments>https://mantisbt.org/bugs/view.php?id=37336#bugnotes</comments></item><item><title>0037333: Accept optional Bearer prefix on API token in Authorization header</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37333</link><description><![CDATA[The REST API only accepts the API token bare (Authorization: &lt;token&gt;). It rejects Authorization: Bearer &lt;token&gt;, which is the RFC 6750 convention and the default for most HTTP clients, SDKs, API tools, and AI agents. Users routinely send the Bearer form and get an authentication failure with no indication of the cause.&lt;br /&gt;
&lt;br /&gt;
Proposal: strip an optional, case-insensitive Bearer  prefix before token lookup. The bare form remains fully supported, so the change is additive. Other schemes (e.g. Basic) are unaffected. Invalid tokens fail identically with or without the prefix, so no new failure path is introduced.]]></description><category>api rest</category><pubDate>Wed, 05 Aug 2026 23:37:44 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37333</guid><comments>https://mantisbt.org/bugs/view.php?id=37333#bugnotes</comments></item><item><title>0037332: dfghj</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37332</link><description><![CDATA[sdfghjk]]></description><category>time tracking</category><pubDate>Mon, 27 Jul 2026 05:23:28 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37332</guid><comments>https://mantisbt.org/bugs/view.php?id=37332#bugnotes</comments></item><item><title>0037330: test</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37330</link><description><![CDATA[test]]></description><category>Infrastructure</category><pubDate>Sun, 26 Jul 2026 08:44:53 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37330</guid><comments>https://mantisbt.org/bugs/view.php?id=37330#bugnotes</comments></item><item><title>0037324: Dev Guide: the Example plugin should use constants for config</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37324</link><description><![CDATA[Better practice than repeating a hardcoded string multiple times.&lt;br /&gt;
&lt;br /&gt;
GitHub repo &lt;a href=&quot;https://github.com/mantisbt-plugins/Example&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/mantisbt-plugins/Example&lt;/a&gt; should be updated too.]]></description><category>documentation</category><pubDate>Thu, 23 Jul 2026 12:25:28 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37324</guid><comments>https://mantisbt.org/bugs/view.php?id=37324#bugnotes</comments></item><item><title>0037320: Cannot submit bug when selecting any product version</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37320</link><description><![CDATA[Since mantisBT 2.28.4, when trying to submit a bug, when a user selects ANY Product Version mantis will reject the bug saying invalid version. I already missed several bug reports due to this.&lt;br /&gt;
&lt;br /&gt;
Oh and this issue is also present on this/your very bugtracker. I just had to retype my whole bug report because of it :-)&lt;br /&gt;
&lt;br /&gt;
If you have like DEVELOPER level then the bug does not occur. If you select NO product version then the bug does not occur.&lt;br /&gt;
&lt;br /&gt;
The fix in &quot;Additional Information&quot; or a workaround is setting: $g_report_issues_for_unreleased_versions_threshold = REPORTER;&lt;br /&gt;
&lt;br /&gt;
Thanks for fixing this. We are happy to use mantis since 2002 :)]]></description><category>bugtracker</category><pubDate>Tue, 21 Jul 2026 18:33:08 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37320</guid><comments>https://mantisbt.org/bugs/view.php?id=37320#bugnotes</comments></item><item><title>0037319: Duplicated code in MantisGraph plugin's graph_api.php</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37319</link><description><![CDATA[*create_developer_resolved_summary()* and *create_developer_open_summary()* functions are nearly identical, differing only by a condition in the SQL query where clause.&lt;br /&gt;
&lt;br /&gt;
Duplicated code should be factored out.]]></description><category>code cleanup</category><pubDate>Mon, 20 Jul 2026 13:54:45 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37319</guid><comments>https://mantisbt.org/bugs/view.php?id=37319#bugnotes</comments></item><item><title>0037318: get_gd_version() should return the complete version number</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37318</link><description><![CDATA[Currently, the function is returning the major GD version as an int (1 or 2) based on the presence of *imagegd2()*, or GD if the extension is not available.&lt;br /&gt;
&lt;br /&gt;
This is a legacy from early PHP 4 days, when gd_info() did not exist (it was introduced in PHP 4.3.0). &lt;br /&gt;
&lt;br /&gt;
We should simply call gd_info() and return the actual version number.]]></description><category>code cleanup</category><pubDate>Mon, 20 Jul 2026 12:40:59 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37318</guid><comments>https://mantisbt.org/bugs/view.php?id=37318#bugnotes</comments></item><item><title>0037317: no-op upgrade step in plugin_upgrade() not working properly</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37317</link><description><![CDATA[The no-op schema operations for plugins implemented in &lt;a href=&quot;https://mantisbt.org/bugs/view.php?id=23367&quot;&gt;0023367&lt;/a&gt; are not working as expected.&lt;br /&gt;
&lt;br /&gt;
plugin_upgrade() is throwing&lt;br /&gt;
SYSTEM WARNING: Trying to access array offset on value of type null in '.../core/plugin_api.php' line 835]]></description><category>plug-ins</category><pubDate>Tue, 18 Aug 2026 11:08:07 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37317</guid><comments>https://mantisbt.org/bugs/view.php?id=37317#bugnotes</comments></item><item><title>0037316: New error code: ERROR_PLUGIN_ENTITY_NOT_FOUND</title><author></author><link>https://mantisbt.org/bugs/view.php?id=37316</link><description><![CDATA[This follows a suggestion by &lt;span class=&quot;mention&quot;&gt;&lt;a href=&quot;https://mantisbt.org/bugs/view_user_page.php?id=3081&quot;&gt;@vboctor&lt;/a&gt;&lt;/span&gt; in a TODO in the Snippets plugin [[1]]:&lt;br /&gt;
&lt;br /&gt;
&gt; ideally we should have a generic ENTITY_NOT_FOUND error to trigger 404 http status code&lt;br /&gt;
&gt; low priority since this is not used by the UI.&lt;br /&gt;
&lt;br /&gt;
[1]: &lt;a href=&quot;https://github.com/mantisbt-plugins/Snippets/commit/f1e2cac7ce27e751919051bf054d9f1b1ff6b656#diff-02e954a8c250ad93b560d6cd5659b22bb84236ca86e1320299e9ae55a878735aR78-R80&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/mantisbt-plugins/Snippets/commit/f1e2cac7ce27e751919051bf054d9f1b1ff6b656#diff-02e954a8c250ad93b560d6cd5659b22bb84236ca86e1320299e9ae55a878735aR78-R80&lt;/a&gt;]]></description><category>plug-ins</category><pubDate>Sat, 18 Jul 2026 13:08:27 -0400</pubDate><guid>https://mantisbt.org/bugs/view.php?id=37316</guid><comments>https://mantisbt.org/bugs/view.php?id=37316#bugnotes</comments></item></channel></rss>
