Creating a new version for a project (Joomla extension)
How to create a version for a Joomla extension in the SW Project component, upload the archive of the extension installation file, specify the Joomla version, fill in the list of changes (changelog) for this version. SEO settings.
What is the version in SW JProjects?
During the development of the project (your Joomla extension), new versions are released with bug fixes and new functionality added. Each version has its version number 1.0.0. This numbering follows semantic versioning (server, server).
Semantic Versioning (semver)
The principle of semantic versioning allows the developer to meaningfully specify the version number so that it is understood by other developers and webmasters working with sites. And also with the help of semver, you can plan and distribute various types of changes in the code by versions, among which one of the most important places is a violation of backward compatibility - when a new version of an extension has changed so much that it is impossible to simply update the previous version of the program to the next, but only with the help of migration and additional actions on the part of the user.
To quote the documentation:
Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes
MINOR version when you add functionality in a backward compatible manner
PATCH version when you make backward compatible bug fixes
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.
The fourth digit of the version in the family is allowed, but not required. It is often called hotfix (hot fix, quick patch). Developers can release hotfix versions when some mistake was made in the released release that requires immediate correction, but some users have already downloaded and started using it. In such cases, the release of a patch version allows you to update the program (Joomla extension) and at the same time not violate the release plan (development plan, release plan) and not change the version numbering inside this plan.
The first version of the extension usually has version 1.0.0.
- Major version of the Joomla extension
- It is used for the first version and when there is an inevitable breakdown of backward compatibility. For example, the new version has been rewritten to a new file and class architecture and the module/plugin previously available for Joomla 3 can no longer work with it, but only with Joomla 4+.
- Minor version
- It is used when new functionality appears or a large accumulated number of changes are noticeable to end users. For example, changing the extension interface.
- Patch version
- It is used most often. Any small changes, minor bug fixes, code refactoring, corrected the comment in the PHP Doc block, changed the code style, etc. - this is a patch version.
You can also get acquainted with the software release life cycle (Wiki)the software release life cycle (Wiki). This will help you inform your customers about the status of the expansion version and the degree of its availability (alpha, beta, RC...).
Creating a version
To create a project, go to the menu in the admin panel - Components - SW JProjects - Versions. Click the create button.
A window opens to fill in the version data. First of all, specify which project this version is being created for. A search is running in the drop-down list of projects.
Then specify the version and select the stage (stable, RC, Beta, etc.). Download the installation file of your Joomla extension.
After you have selected the project, another field becomes available below - the Joomla version. This is the minimum required version of Joomla for your extension to work. Specify the numbers separated by the dot symbol - "."
If you need to replace the downloaded file, set the "Delete file" checkbox and click "Save". The file will be deleted and you can upload a new one.
List of changes (Changelog)
It is advisable to fill in a list of changes for each version. It will allow you to evaluate the work done, and your users to find out about all the changes in the new version.
Starting with the 4th branch, Joomla has the ability to view the list of changes directly in the admin panel immediately before updating the extension. And also in the list of all installed extensions.
According to the documentation Adding changelog to your manifest file Joomla assumes the following types of changes:
- security: Any security issues that have been fixed
- fix: Any bugs that have been fixed
- language: This is for language changes
- addition: Any new features added
- change: Any changes
- remove: Any features removed
- note: Any extra information to inform the user
Fill in the list of changes for the new version.
SEO Settings
Usually, the version pages are closed from indexing by search engines, since they contain less unique information compared to the project or documentation page. But you can set a unique value for each version for the <title>
of the page, meta description, and specify an image for the Open Graph markup.