Update hub version
Opened this issue · 1 comments
If you try to install the latest Cardstack plugins in this app, it causes errors. This is because v0.14 removed the branch
param, which affected many APIs.
Strategy for ugprading from 0.13.x to 0.14.0 cardstack sdk:
- update deps with
yarn upgrade-interactive --latest --scope @cardstack
- search for the phrase "branch" and "master" to find areas that need refactor
- Address API changes below
API changes
@cardstack/hub/searchers.get()
has been changed to:
- remove the branch parameter
- add a "repository" parameter that is currently hard-coded to "local-hub"
@cardstack/hub/searchers.getFromControllingBranch()
has been removed. You can replace this with @cardstack/hub/searchers.get()
and don't forget to add the hard coded "local-hub" repository name
@cardstack/hub/searchers.search()
has been updated to remove the branch parameter. There is no need to add the repository "local-hub" in these calls, as when this is supported, those repository names will just be part of the search query.
@cardstack/hub/searchers.searchFromControllingBranch()
has been removed, You can replace this with @cardstack/hub/searchers.search()
For any cardstack/indexer.js
file that your cards may have, the following changes have been made:
- the
branches()
hook of the indexer.js files is no longer necessary. You can delete this from yourindexer.js
file. - the
beginUpdate()
hook of theindexer.js
files no longer accepts abranch
parameter. You can remove this param in yourindexer.js
file. The @cardstack/hub/controlling-branch.js
(which is normally injected via DI as 'hub:controlling-branch') no longer exists. You can delete this from any modules that you have.- The
@cardstack/hub/current-schema.forBranch()
and@cardstack/hub/current-schema.forControllingBranch()
have been removed. Instead call Instead call `@cardstack/hub/current-schema.getSchema(). - The
@cardstack/hub/writers.create()
no longer takes a branch parameter. Just remove this param from invocations. - The
@cardstack/hub/writers.update()
no longer takes a branch parameter. Just remove this param from invocations.
Additionally, we need to configure TS linting for cardstack applications that use v0.14.x of the hub:
- add
'app-name/*/cardstack/**/*.js',
to eslintrc - add
"@typescript-eslint/eslint-plugin": "^1.7.0", "@typescript-eslint/parser": "^1.7.0", "typescript": "3.4.5"
to devDependencies in package.json - update the lint command in package.json to
"lint": "eslint . --cache --parser espree"
-
seachers.get
- no changes needed -
@cardstack/hub/searchers.getFromControllingBranch()
updated -
@cardstack/hub/searchers.searchFromControllingBranch()
- no changes needed -
cardstack/indexer.js
no changes needed - TS linting