From b034d54055d5d1971fca8142c5e640aea4b2c5e9 Mon Sep 17 00:00:00 2001 From: master3395 Date: Tue, 20 Jan 2026 01:47:18 +0100 Subject: [PATCH] Standardize plugin version format to 1.0.0 and add semantic versioning explanation - Update examplePlugin and emailMarketing meta.xml to use 1.0.0 format - Add comprehensive semantic versioning section to plugin help page - Explain major/minor/patch version numbers with examples - Standardize all plugins to use three-number version format (X.Y.Z) - Improve version tracking and update clarity for plugin developers --- emailMarketing/meta.xml | 2 +- examplePlugin/meta.xml | 2 +- pluginHolder/templates/pluginHolder/help.html | 30 +++++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/emailMarketing/meta.xml b/emailMarketing/meta.xml index c2abe51a7..2c5d8e719 100644 --- a/emailMarketing/meta.xml +++ b/emailMarketing/meta.xml @@ -3,5 +3,5 @@ Email Marketing plugin Email Marketing plugin for CyberPanel. - 1.0 + 1.0.0 \ No newline at end of file diff --git a/examplePlugin/meta.xml b/examplePlugin/meta.xml index dfa949cd5..55990a577 100644 --- a/examplePlugin/meta.xml +++ b/examplePlugin/meta.xml @@ -3,6 +3,6 @@ examplePlugin plugin This is an example plugin - 1.0 + 1.0.0 usmannasir \ No newline at end of file diff --git a/pluginHolder/templates/pluginHolder/help.html b/pluginHolder/templates/pluginHolder/help.html index cfd8e1a0e..4624368ac 100644 --- a/pluginHolder/templates/pluginHolder/help.html +++ b/pluginHolder/templates/pluginHolder/help.html @@ -322,6 +322,7 @@
  • {% trans "Plugin Architecture Overview" %}
  • {% trans "Creating Your First Plugin" %}
  • {% trans "Plugin Structure & Files" %}
  • +
  • {% trans "Version Numbering (Semantic Versioning)" %}
  • {% trans "Core Components" %}
  • {% trans "Advanced Features" %}
  • {% trans "Best Practices" %}
  • @@ -476,6 +477,35 @@ def main_view(request):
  • static/ - {% trans "Optional" %} - {% trans "CSS, JS, images" %}
  • +

    {% trans "Version Numbering (Semantic Versioning)" %}

    +

    {% trans "CyberPanel plugins use semantic versioning (SemVer) with a three-number format (X.Y.Z) to help users understand the impact of each update:" %}

    + +
    +

    {% trans "Major Version (X.0.0)" %}

    +

    {% trans "Breaking changes that may require action from users. New major features, complete redesigns, or changes that break existing functionality." %}

    +

    {% trans "Example" %}: 2.8.0 → 3.0.0

    +
    + +
    +

    {% trans "Minor Version (0.X.0)" %}

    +

    {% trans "New features added in a backward-compatible manner. Enhancements and improvements that don't break existing functionality." %}

    +

    {% trans "Example" %}: 3.0.0 → 3.1.0

    +
    + +
    +

    {% trans "Patch Version (0.0.X)" %}

    +

    {% trans "Bug fixes and minor improvements. Backward-compatible fixes that address issues without adding new features." %}

    +

    {% trans "Example" %}: 3.1.0 → 3.1.1

    +
    + +
    + {% trans "Important" %}: {% trans "Always use the three-number format (X.Y.Z) in your meta.xml file. This makes it easier to track updates and understand the scope of changes. Start with version 1.0.0 for your first release." %} +
    + +

    {% trans "Version Format in meta.xml" %}

    +
    <version>1.0.0</version>
    +

    {% trans "Never use formats like '1.0' or 'v1.0'. Always use the full semantic version: '1.0.0'" %}

    +

    {% trans "Core Components" %}

    {% trans "1. Authentication & Security" %}

    {% trans "Always use the cyberpanel_login_required decorator:" %}