@Alan I was looking at the release notes for the RouterLibrary. Am I right that there are no breaking changes, unless you are using some really weird characters in your paths?
So the changes in RouterLibrary@3.0.0 are:
The syntax for the string parameter pattern is changed
The (potentially) breaking change is that trailing slash used to be discarded, ie lib-router.get('myurl/') was treated like lib-router.get('myurl'). This is now fixed and you can have two different handlers for lib-router.get('myurl/') and lib-router.get('myurl').