Over time, our work has been an e-commerce framework. Our usual software provided that we present SVN tags. We have grown and evolved over time. We have come up with products that assist developers globally. Such a new development needed more skills and we had to keep learning as much as possible to be able to grow the open source development to be a better version. The best way to start a release management process is to create a checklist. This is of great help when we get our product out. It helps us focus on every step of the process as we make all the necessary adjustments.
This is the server that holds together the monorepo. This server builds and checks the system. All the packages are passed through this system to test their functionality. All this is geared towards efficiency of packages on their own. They are all marked with green statuses.
2. New SVN Tag
Every new product needs new codes. This is how the new branch is created. They are named with the code ‘rc’ which means release candidate. The code is then followed by the number of version of the release.
3. Proper Communication to Avoid Merging into Master
While running the git we have to be in proper communication. Each member gets a message that the process is ongoing. This is to avoid any interruptions in the process. This is done on the team slack channel. Merging new features is not allowed as the release process is underway.
4. Composer Dependencies Examination
For this one, we use the caret version range. It helps with a definition of external dependencies. The non-standard dependencies need to be standardized so that they can be refurbished. The forked repositories can be replaced to the original if they are not working and are irrelevant.
5. Translation to Other Languages
Shopsys is in many distinct languages, all the text is run through Phing targets for translations. Through the process, anything that may be missing in the release can be added here. This is the time to do any corrections needed for translations.
6. Updates and Upgrades for the Changelogs
All intended changes must be filled as an unreleased file. They are added to the development process. The new to be given a number and release date once they are set for release.
7. Monorepo Dependencies
They need to be changed to the new version number. They need to be repackaged once more for them to fully function and get us the next version release. The composer updates may be marred by issues such as unwanted breaks. The Alpha stage of our Shopsys Framework is prone to BC breaks.
8. Verification Process
As we stated earlier this process tests the ability of the releases to function. The CI server ensures that any needed modifications are added before any releases.
The other steps required are getting the work reviewed, tested, check the release date, merge the feature into master, check the new release, Change the monorepo back, Update the release notes on the changelogs and the last and not least is to notify people of the release. When all this is done then you can celebrate the new git. These are the things that you need to follow to create that new version whether you just joined our team or you have been with us for a while.