magesuite / theme-creativeshop

Open Software License 3.0
38 stars 24 forks source link

theme and child theme upgrade #40

Open thomas7467 opened 3 years ago

thomas7467 commented 3 years ago

Hi devTeam,

Just a stupid question : what is the way to upgrade the previous creativeshop version ie the child theme?

Just copy the src folder content in themes directories?

thks Thomas

Monoget commented 3 years ago

Create your own theme folder in app/code directory with theme.xmland registration.php and inherit creativeshop as a parent theme.

mborkowski commented 3 years ago

For more details you can go to official documentation. Remember to never override anything directly in theme-creativeshop, if you do so you will either lose possibility of getting new versions or if you decide to update - you will lose all your changes

fritzmg commented 3 years ago

@Monoget @mborkowski that's not really what @thomas7467 is asking, as far as I understand it. The question is: if a new version of the package creativestyle/theme-creativeshop is released, what do you have to do to update your actual child theme? Do you e.g. simply run composer update to update the dependencies (and thus your own theme + creativestyle/theme-creativeshop) and then you run yarn build in your theme again? But wouldn't that override something?

mborkowski commented 3 years ago

The first thing is to run composer update. Next, you rebuild Creativeshop with yarn build. As every update, update of theme-creativeshop can also break something.

"But wouldn't that override something?" - no, if you avoid overrides of original theme-creativeshop package. All changes should be always done in your theme.

We follow semver rules to keep things clear. Every major update is by rule introducing some breaking changes and you have to re-test your theme and check diff of the release to make sure your project won't get into production with some bugs caused by customizations in your theme. Breaking change means that implementation of given component changed, and actual customization won't work anymore if any (customization) was made in affected area.