Skip to content
This repository was archived by the owner on Sep 8, 2024. It is now read-only.
This repository was archived by the owner on Sep 8, 2024. It is now read-only.

Discussion: Remove need for connectivity checks #2964

@krisgesling

Description

@krisgesling

Discussion started in #2962 about whether network connectivity checks are always needed.

If an install is intended to operate fully offline then clearly it doesn't need to be connected. However even if Mycroft is used in its standard configuration there may be less checks required than we currently have, or they could be made optional.

Skills loading

eg HelloChatterbox/HolmesV@7e40469
This commit makes connectivity during Skill service loading optional via a config flag. I'm wondering if we can drop the requirement completely. The Skill updater itself checks if it has internet and exits if not.

My assumption is that the check is done so that Skills can be fully updated before the device is considered ready for use. But the Skills on the device before they're updated should be working 99% of the time, with new features getting added by the update. Occasionally there might be an API change or something that makes the old version of a Skill not usable but this should be rare occurrence. 🤞

On this point I'd also consider removing the install / update of default Skills during the Skills Service loading too. To me this should happen during distribution or in a setup script. It's not necessary every time you load the service.

Other?

Are there other places where an internet connection may be optional?

If we remove them all and a user is expecting the internet to be available for their device to be usable, where does this check live? The enclosure / HAL?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: For discussionFeature proposal in development. Community input and discussion is invited.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions