diff --git a/.github/ISSUE_TEMPLATE/plugin-bug-report.md b/.github/ISSUE_TEMPLATE/plugin-bug-report.md deleted file mode 100644 index 40c76c04e..000000000 --- a/.github/ISSUE_TEMPLATE/plugin-bug-report.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -name: Plugin bug report -about: Create a report about a plugin to help us improve -title: '[PLUGIN BUG]' -labels: Plugin Bug -assignees: '' - ---- - -**Plugin name** -The name of the plugin having the bug - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -**Desktop (please complete the following information):** - - Device: [e.g. PC] - - OS: [e.g. Windows] - - OS Version (if applicable) [e.g. 11] - - Bombsquad Version [e.g. 1.7.37] - - Plugin Manager Version [e.g. 1.1.10] - - Plugin Version [e.g 2.0.1] - -**Smartphone (please complete the following information):** - - Device: [e.g. Mobile] - - OS: [e.g. Android] - - OS Version (if applicable) [e.g. 11] - - Bombsquad Version [e.g. 1.7.37] - - Plugin Manager Version [e.g. 1.1.10] - - Plugin Version [e.g 2.0.1] - -**Additional context** -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/plugin-bug-report.yml b/.github/ISSUE_TEMPLATE/plugin-bug-report.yml new file mode 100644 index 000000000..6d1f5bc5d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/plugin-bug-report.yml @@ -0,0 +1,89 @@ +name: Plugin Bug Report +description: Create a report about a plugin to help us improve. +title: '[PLUGIN BUG]: ' +labels: ['Plugin Bug'] + +body: + - type: input + id: plugin-name + attributes: + label: Plugin Name + description: The name of the plugin experiencing the bug. + placeholder: e.g. colorscheme + validations: + required: true + + - type: textarea + id: bug-description + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. + validations: + required: true + + - type: textarea + id: console-log + attributes: + label: Console Log + description: Goto settings -> advanced -> Dev Tools -> enable "Show dev console button" and reproduce the bug. Then copy and paste the console log here. + + - type: textarea + id: reproduction-steps + attributes: + label: To Reproduce + description: Steps to reproduce the behavior. + placeholder: | + 1. Go to '...' + 2. Click on '....' + 3. Scroll down to '....' + 4. See error + validations: + required: true + + - type: textarea + id: expected-behavior + attributes: + label: Expected behavior + description: A clear and concise description of what you expected to happen. + + - type: input + id: os-version + attributes: + label: OS with Version + placeholder: e.g. Windows 11 / Android 13 + + - type: input + id: bombsquad-version + attributes: + label: BombSquad Version + placeholder: e.g. v1.7.60 + validations: + required: true + + - type: input + id: plugin-manager-version + attributes: + label: Plugin Manager Version + placeholder: e.g. v1.1.10 + validations: + required: true + + - type: input + id: plugin-version + attributes: + label: Plugin Version + placeholder: e.g. 2.0.1 + validations: + required: true + + - type: textarea + id: screenshots + attributes: + label: Screenshots + description: Drag and drop screenshots here to help explain the problem. + + - type: textarea + id: additional-context + attributes: + label: Additional context + description: Add any other context about the problem here (logs, other plugins installed, etc). diff --git a/CHANGELOG.md b/CHANGELOG.md index 031ef8f46..3603c84e0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ ## Plugin Manager (dd-mm-yyyy) +### 1.1.7 (15-02-2026) + +- Added function to fill form details for plugin bug report button +- Added a new plugin bug report yaml template + ### 1.1.6 (26-01-2026) - Fix UI scaling for more window @@ -31,15 +36,15 @@ ### 1.1.1 (09-02-2025) - Added bomb spinner widget for loading animation. - + ### 1.1.0 (23-01-2025) -- Updated to bombsquad api 9. - +- Updated to bombsquad api 9. + ### 1.0.23 (13-01-2025) - Fixed a bug which wasn't letting older versions run Plugin Manager. - + ### 1.0.22 (07-08-2024) - Fixed a few Errors and UI Bugs. @@ -193,13 +198,11 @@ - Added New Option in settings for Notifying new plugins. - Added a Discord Button to join Bombsquad's Official Discord server. - ### 0.1.6 (15-09-2022) - Distinguish the settings button with a cyan color (previously was green) in plugin manager window. - Clean up some internal code. - ### 0.1.5 (08-09-2022) - Plugin files that export classes besides plugin or game, now work. diff --git a/index.json b/index.json index 2af4f5f2e..3ee912d22 100644 --- a/index.json +++ b/index.json @@ -1,6 +1,12 @@ { "plugin_manager_url": "https://github.com/bombsquad-community/plugin-manager/{content_type}/{tag}/plugin_manager.py", "versions": { + "1.1.7": { + "api_version": 9, + "commit_sha": "af881af", + "released_on": "15-02-2026", + "md5sum": "454cbacd47c813154f2f9cb0d2736067" + }, "1.1.6": { "api_version": 9, "commit_sha": "b0c463e", diff --git a/plugin_manager.py b/plugin_manager.py index 8bb30068e..7e5b8a29c 100644 --- a/plugin_manager.py +++ b/plugin_manager.py @@ -26,7 +26,7 @@ # Modules used for overriding AllSettingsWindow import logging -PLUGIN_MANAGER_VERSION = "1.1.6" +PLUGIN_MANAGER_VERSION = "1.1.7" REPOSITORY_URL = "https://github.com/bombsquad-community/plugin-manager" # Current tag can be changed to "staging" or any other branch in # plugin manager repo for testing purpose. @@ -35,8 +35,8 @@ _env = babase.env() _app_api_version = babase.app.env.api_version -PLUGIN_ISSUE_TEMPLATE = "plugin-bug-report.md" -GITHUB_ISSUE_META = "{repository_url}/issues/new?template={issue_template}" +PLUGIN_ISSUE_TEMPLATE = "plugin-bug-report.yml" +GITHUB_PLUGIN_ISSUE_META = "{repository_url}/issues/new?template={issue_template}" INDEX_META = "{repository_url}/{content_type}/{tag}/index.json" CHANGELOG_META = "{repository_url}/{content_type}/{tag}/CHANGELOG.md" HEADERS = { @@ -1798,8 +1798,10 @@ async def update(self): class MoreWindow: - def __init__(self, plugin, origin=None): + def __init__(self, plugin: Plugin, origin=None): _add_popup(self) + + self.plugin = plugin # collect info last_updated = None for value in plugin.info['versions'].values(): @@ -1912,13 +1914,7 @@ def __init__(self, plugin, origin=None): button_type='square', color=(0.6, 0.53, 0.63), label='', - on_activate_call=bui.CallPartial( - bui.open_url, - GITHUB_ISSUE_META.format( - repository_url=REPOSITORY_URL, - issue_template=PLUGIN_ISSUE_TEMPLATE - ) - ) + on_activate_call=self._open_bug_report_url ) bui.imagewidget( parent=self._root_widget, @@ -1985,6 +1981,36 @@ def __init__(self, plugin, origin=None): down_widget=source_button ) + def _open_bug_report_url(self): + import platform + import urllib.parse + import baenv + + LOGS_LENGTH_LIMIT = 5000 + _logs = "" + for entry in baenv._EnvGlobals.get().config.log_handler.get_cached().entries: + _logs += entry.message + "\n" + + # reduce this more if it's too long + error_logs = f"""```py +{_logs[:LOGS_LENGTH_LIMIT]} +```""" + + params = { + "title": "[PLUGIN BUG]: " + self.plugin.name, + "plugin-name": self.plugin.name, + "plugin-version": self.plugin.create_local().version if self.plugin.is_installed else 'Not Installed', + "plugin-manager-version": 'v' + PLUGIN_MANAGER_VERSION, + "bombsquad-version": 'v' + babase.app.env.engine_version + " (" + str(babase.app.env.engine_build_number) + ")", + "os-version": platform.platform() if platform else babase.app.env.platform.value + babase.app.env.os_version, + "console-log": error_logs + } + query_string = urllib.parse.urlencode(params, quote_via=urllib.parse.quote) + base_url = GITHUB_PLUGIN_ISSUE_META.format( + repository_url=REPOSITORY_URL, issue_template=PLUGIN_ISSUE_TEMPLATE) + final_url = f"{base_url}&{query_string}" + bui.open_url(final_url) + def _back(self) -> None: _remove_popup(self) bui.getsound('swish').play()