Keeping Roots.io up to date - how?

Hi

It seems we can update the projects dependencies fine with bower, but what is the best way of maintaining the roots core theme framework ? For instance, I’m on 7.0.1, and theres 7.0.3 available.

What ways do you keep your Roots core up to date?

Thanks

1 Like

Generally speaking, Roots is meant to be a starting point for a highly custom theme. What that means is once you start a project, it’s not really Roots anymore, its whatever you make it. It’s not really intended to be a “framework” or “parent theme”, which is why we generally suggest that it not be your first theme.

That being said, the thread I linked to above has some general suggestions on how you can do this. For a minor point update like 7.0.1 to 7.0.3, you could easily just look at the commits and implement anything that you think is important for you. Usually when we use Roots, we don’t do any major changes to core /lib files, and try to keep everything in our own custom php file that we just include via functions.php or extras.php. There is not a lot of CSS/LESS specific to Roots so your designs shouldn’t be impacted. Same should generally go for JS or Template Partials too.

2 Likes

Is the above response still valid as of September 2018? What would be the best way for me to keep my theme up-to-date with Roots Sage?

Also, is there a way I can see Sage Docs for a specific version?

Thanks.

Sage is a starting point: once you’ve built a theme with it, it’s not necessary to keep it “up to date.”

I don’t believe the docs are versioned, but you can look through previous revisions of them on github: https://github.com/roots/docs

Yes that’s what I thought. It would make sense then to version the docs. When I start a theme, there’s no way back (or forward) and would need to use the corresponding docs. Does github support that? Or is there any way to select the sage version on the website and get the corresponding docs version?

Well, (I assume you are already managing the sage theme / bedrock site + sage theme using git or other VC) you could copy a recent fresh sage theme project over your existing one and then use VC to diff + merge the changes. composer create doesn’t preserve any version control.

For trellis I am just using a clone from the roots.io trellis repo and keeping it up to date using pulls.

For the external sage theme dependencies you can just use composer update (and check for incompatibilities).

1 Like

Ok, thanks for your input guys @strarsis @alwaysblank