Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Behavior of the -b and -u switches should have clearer, more complete documentation (or implement expanded functionality) #99

Open
jrwarwick opened this issue Jan 12, 2022 · 1 comment
Labels
bug Something isn't working

Comments

@jrwarwick
Copy link

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. login to mycroft over ssh

  2. Issue msm install command
    (.venv) mycroft@localhost:/opt/mycroft/skills$ msm install https://github.com/jrwarwick/ping-skill.git -b new-skill-format
    usage: msm [-h] [-p {mycroft_mark_2,respeaker,kde,mycroft_mark_1,default,mycroft_mark_2pi,picroft}] [-u REPO_URL] [-b REPO_BRANCH] [-d SKILLS_DIR] [-c REPO_CACHE] [-l] [-r]
    {install,remove,search,info,list,update,default} ...
    msm: error: unrecognized arguments: -b new-skill-format

  3. try to get some clarification from help/documentation:

  4. (.venv) mycroft@localhost:/opt/mycroft/skills$ msm -h
    usage: msm [-h] [-p {mycroft_mark_2pi,kde,respeaker,default,mycroft_mark_1,mycroft_mark_2,picroft}] [-u REPO_URL] [-b REPO_BRANCH] [-d SKILLS_DIR] [-c REPO_CACHE] [-l] [-r]
    {install,remove,search,info,list,update,default} ...

positional arguments:
{install,remove,search,info,list,update,default}

optional arguments:
-h, --help show this help message and exit
-p {mycroft_mark_2pi,kde,respeaker,default,mycroft_mark_1,mycroft_mark_2,picroft}, --platform {mycroft_mark_2pi,kde,respeaker,default,mycroft_mark_1,mycroft_mark_2,picroft}
-u REPO_URL, --repo-url REPO_URL
-b REPO_BRANCH, --repo-branch REPO_BRANCH
-d SKILLS_DIR, --skills-dir SKILLS_DIR
-c REPO_CACHE, --repo-cache REPO_CACHE
-l, --latest Disable skill versioning
-r, --raw

Expected behavior
I thought -b would allow me to install directly from a branch (which would be useful in the case where the branch is what contains manifest.yml, which apparently is /not/ processed on a mere git branch change.)

The help did not disabuse me of the notion, my source is a repo and does have branches, so the help text further suggests this should work. The help should give me a clearer understanding that -u and -b are only for what official central upstream Mycroft repo. Or even better: implement the implied behavior, allowing any user to install a skill from an arbitrary branch of an arbitrary repo.

Also recommend coordinated clarifications on those switches in the online documentation: https://mycroft-ai.gitbook.io/docs/skill-development/mycroft-skills-manager

Environment (please complete the following information):

  • Device type: Mark 2
  • Mycroft-core version: 21.02

Additional context
Others have been similarly confused:
(https://chat.mycroft.ai/community/pl/qh9cdywwi38y3b3xqee7ytshfa)

@jrwarwick jrwarwick added the bug Something isn't working label Jan 12, 2022
@krisgesling
Copy link
Contributor

As you've figured out the -u and -b flags in this instance relate to an alternative listing of Skills eg https://github.com/mycroftai/mycroft-skills, rather than the repo for a single Skill.

And fully agree - I've made a little update to the online documentation to have an example of these two flags. It doesn't seem like you can use both together, which is likely another bug that needs to be addressed.

Leaving this open as we still need to:

  1. Update the command line help text to better describe what these args are
  2. Preferably allow the use of both, eg msm -u $ALT_MARKETPLACE_URL -b some-branch install my-skill
  3. Preferably add the ability to install from a branch of a single skill eg msm -b some-branch install $my_skill_url

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants