Commit Graph

127 Commits (b7b5e9bfcb7b6788ef10d5aed2138dd7f4749fe2)

Author SHA1 Message Date
Åke Forslund 58cab5cddb Add support for slowloading skills
Upgrade msm to 0.7.8

Using the new max_threads parameters to MycroftSkillsManager.apply() the
skill loading is reduced to 2 threads if it's during runtime while a
fast update (20 threads) are used if not all default skills are
installed to speed up getting core into a 100% operational state.
2019-07-09 16:52:10 +02:00
Åke f42cec0886
Merge pull request #2172 from forslund/feature/msm-0.7.7
Correct skill GID's for skills not in the marketplace
2019-07-01 09:31:09 +02:00
Åke Forslund 5d2db22bfd Lock cryptography version to 2.6.1
The newly released cryptography 2.7 deprecates OpenSSL 1.0.1 and will in
the future not support it.

This version is currently installed on the mark-1 devices, to make sure
thing doesn't break in the future the cryptography version is locked to
v2.6.1 the latest version supporting this OpenSSL version.
2019-06-28 12:47:03 +02:00
Åke Forslund 83b3e73e66 Correct skill GID's for skills not in the marketplace
- Fixes skill GID generated for skills not in marketplace
- Adds caching of skillsmeta.json
- Updates skills manifest if skills gid has changed
2019-06-25 15:06:29 +02:00
Åke Forslund 62b115e22c Update pychromecast to 3.2.2
pychromecast needed to be updated to fix pip package version conflict
when using streaming google STT.

Minor issues with startup of audio needed to be handled, mainly adding
explicit waits to ensure commands would be accepted
2019-06-20 08:59:27 +02:00
Åke Forslund d594d6f00e Upgrade Adapt to v 0.3.3
This fixes an issue with one_of() when multiple occurences of a keyword exists
in the utterance
2019-05-30 08:01:59 +02:00
Åke Forslund 519e368214 Update msk to 0.3.13
This updates the README generation to match the current layout
2019-05-24 08:38:19 +02:00
Åke b1348de6f7 Feature/msm 0.7.6 (#2136)
* Log error when creating Padatious

* Update msm to v0.7.6

This handles connection errors during the startup procedure and improves
the skill_gid when no network is available
2019-05-23 10:16:37 -07:00
Åke bf6e363812
Revert "Support chopping old audio via precise upgrade" 2019-05-22 12:52:57 +02:00
Åke Forslund 2208ee178c Switch to getting skill_gid from msm skill entry 2019-05-21 09:23:02 +02:00
Åke Forslund 56ed5a657f Re-add support for skill_gid in settingsmeta upload 2019-05-18 08:29:26 +02:00
Matthew D. Scholefield dd71f24f29 Support chopping old audio via precise upgrade
This supports dropping audio buffers when the cpu falls behind so that the latency doesn't infinitely increase.
2019-05-15 02:38:33 -05:00
ChristopherRogers1991 6dd16915a9 Allow settingsmeta to be a yaml file (#2113)
Allow settingsmeta to be a yaml file in addition to the current .json file
2019-05-13 09:34:39 +02:00
Åke Forslund 54781a9249 Reverts back to 19.2.2
Revert "Fix a couple of minor issues intruduced by skill_gid (#2079)"

This reverts commit e046377ce1.

Revert "Merge pull request #2075 from forslund/bugfix/msm_wrapper-license"

This reverts commit 18cfbce0ca, reversing
changes made to 82fa314ce9.

Revert "Feature/skillsmeta gid (#2074)"

This reverts commit 82fa314ce9.
2019-04-07 00:01:36 +02:00
Åke 82fa314ce9 Feature/skillsmeta gid (#2074)
* Add global id basics to settings meta

- All skills will upload a blank settingsmeta
- a skill_gid will be appended to all settingsmeta upload-data
- Added basic function for generating skill_gid

* Use new skill_gid field.

Populate skill_gid directly from metadata

* Separate travis tmp-dirs

- Update travis script to use tempdir for each python version
- Update test script to handle nonstandard tempdirs
- Generate msm folder using tempdir when running create_msm test

* Add title field with pretty name

* Collect and expand "title" as needed

For title use market-place title or name in settings meta or skillname

* Switch skill_manager create_msm test to 19.02

* Remove leading / trailing Skill in display name

Also rename title displayname to match new mycroft-skills-data

* Lock msm_create and mock the name info test_settings
2019-04-02 11:14:49 -05:00
Åke fb050fd775 Update gTTS to 2.0.3 (#2069)
- This cleans up some of the debug output when gTTS fails to collect
languages due to change at google
2019-03-28 01:13:35 -05:00
Åke 71088f8fcb Feature/update requirements (#1998)
* Update to pyee 5.0.0

- Update requirement
- Make the SkillSettings class hashable

* Update adapt to 0.3.2

* Upgrade websocket-client
2019-02-27 23:41:24 -06:00
Åke Forslund bc9a961e84 Upgrade msm to 0.7.3 2019-02-27 12:43:00 +01:00
Åke Forslund 7668e5a078 Restore "Upgrade msm to 0.7.2"
This reverts commit a525a30cc6.
2019-02-15 06:51:58 +01:00
Åke Forslund 570ea0f4c9 Update padatious and padaos
- Fixes exception when adding/removing intents while processing an utterance
- Terminates worker processes correctly
2019-02-01 09:35:30 -06:00
Åke Forslund f106f9603f Revert "Merge pull request #1889 from forslund/feature/threaded-emitter"
This reverts commit cb891ecf2f, reversing
changes made to 876b5393f7.
2019-01-17 11:11:43 +01:00
Åke Forslund 19e8fc40d6 Update pyee to 5.0.0
Also update adapt to 0.3.2 to since it also depends on pyee
2019-01-15 19:52:44 +01:00
Kathy Reid aa05f5540f Remove pyyaml as a dependency
==== Fixed Issues ====
CVE-2017-18342
https://nvd.nist.gov/vuln/detail/CVE-2017-18342
high severity
Vulnerable versions: < 4.2b1
Patched version: 4.2b1
In PyYAML before 4.1, the yaml.load() API could execute arbitrary code.
In other words, yaml.safe_load is not used.

====  Tech Notes ====
NONE - explain new algorithms in detail, tool changes, etc.

====  Documentation Notes ====
NONE - description of a new feature or notes on behavior changes

==== Localization Notes ====
NONE - point to new strings, language specific functions, etc.

==== Environment Notes ====
NONE - new package requirements, new files being written to disk, etc.

==== Protocol Notes ====
NONE - message types added or changed, new signals, APIs, etc.
2019-01-08 02:49:52 +11:00
Åke Forslund a379c217eb Bump msm to 0.6.3
This fixes a potential issue where the startup processess halting when starting without internet connection.
2018-12-07 00:29:36 +01:00
Åke 74c1ee1678
Merge pull request #1890 from forslund/bugfix/gtts-version-update
Update gtts modules to fix google tts
2018-12-05 20:55:48 +01:00
Åke Forslund 398d254ff1 Update padaos to better handle bad translations
This fixes cases where the translators have made a mistake and for
example omitted or added an extra parentheses
2018-12-05 12:28:44 +01:00
Åke 60462d8979
Merge pull request #1899 from MycroftAI/feature/gui
First pass at the GUI infrastructure
2018-12-05 09:23:08 +01:00
Åke Forslund 41c6e86aec Changes on google's side requires update of gtts
updates the gtts and gtts-token module to the latest version.
2018-11-30 09:20:26 +01:00
Åke Forslund 8757f45bc9 Update msm to 0.6.2 2018-11-29 16:45:31 +01:00
Åke Forslund af8da5e39a Upgrade msk to 0.3.12
This includes the new msk submit action
2018-11-21 12:26:41 +01:00
Steve Penrod dbd3675156 Fixing a few bugs and adding test code to fire up a weather skill visualization upon GUI connection.
Still very much a work in progress.

For understand and testing, here is the sequence:

STEP 1:  GUI announces itself
* Connect to the main Mycroft messagebus
* Send:  "mycroft.gui.connected" with data { "gui_id": XXX } where XXX is a uniq ID (uuid)

STEP 2:  Mycroft creates GUI socket
* Mycroft extracts the gui_id
* Mycroft prepares a socket and announces its availability on the Mycroft messagebus with:
        self.bus.emit(Message("mycroft.gui.port",
                              {"port": self.GUIs[gui_id].port,
                               "gui_id": gui_id}))

STEP 3:  GUI connects
In python, a very minimal test socket handler on the GUI side would look like this

  from websocket import create_connection

  port = 18181 (from the message above)
     ws = create_connection("ws://0.0.0.0:"+port+"/gui")

  ws.send("Hello, World")
  print("Sent")
  print("Receiving...")
  result =  ws.recv()
  print("Received '%s'" % result)
  ws.close()
2018-11-07 11:06:57 -06:00
Kathy Reid a8a423bd10
Update requirements.txt
Update requests to 2.22.0 as per CVE
https://nvd.nist.gov/vuln/detail/CVE-2018-18074
2018-11-05 23:29:18 +11:00
Åke 506d7ed843 Add locking when accessing the IdentityManager (#1801)
Adds the mycroft.util.combo_lock ComboLock class for interprocess/Thread
lock.

Loading updated to be more reliable:
- Flush and sync file
- wait 1.2 seconds before load

Split the logic from the locking so the lock can be avoided when calling
update from save or load from get.
2018-09-28 01:26:33 -05:00
Matthew D. Scholefield bc4dfedec6
Merge branch 'dev' into feature/clean-requirements 2018-09-25 17:30:16 -05:00
Michael Nguyen dbff88c7c2
Merge pull request #1806 from forslund/bugfix/gtts_token
Update gTTS-token module to fix google tts
2018-09-24 12:59:35 -05:00
Kathy Reid cd6840671b
pyyaml fix for Arch and Manjaro builds
All credit to @adocampo who validated this fix on Arch/Manjaro. 
I have built 18.8.1 on Ubuntu 18.04 LTS and it works perfectly with `pyyaml 3.13`
This fix should help those using Arch and derivatives like Manjaro.
2018-09-25 03:11:10 +10:00
Åke Forslund 39882f9b6a Update gTTS-token module to fix google tts
Bumping the gTTS-token module version to 1.1.2
2018-09-24 13:15:37 +02:00
Åke Forslund ea0ca8cfbd Remove backwards compatibility modules
backports.ssl_match_hostname, futures and future are no longer needed.
2018-09-17 18:50:08 +02:00
Åke Forslund 5e42563183 Update padaos to 0.1.7
This improves the compatibility with python 3.7
2018-09-12 17:31:36 +02:00
Åke Forslund 16437ea621 Switch msm branch to 18.08 2018-08-30 10:57:44 +02:00
Åke 413bee6090 Upgrade msk to 0.3.11 (#1769) 2018-08-28 12:24:38 -05:00
Åke 4aac668a2f Remove depreciated ScheduledSkill (#1731)
- remove the scheduled_skills module
- remove the time_rules module
- remove parsedatetime requirement (only used in scheduled_skills)
2018-08-21 20:53:52 -05:00
Åke fe1b92f603 Upgrade msm to 0.5.18 (#1741)
Fixes double skill install/update when running msm default.
2018-08-15 03:57:24 -05:00
Matthew D. Scholefield 0a66f90fe6 Upgrade to Padatious 0.4.5 (#1734) 2018-08-14 14:20:06 -05:00
Matthew D. Scholefield a233cf4fd8 Upgrade padatious (#1709)
This upgrades Padatious to include a fix with perfect intent matches. Now any perfect match should output a confidence of 1.0
2018-08-01 15:01:45 -05:00
Matthew Scholefield 67714e846e Upgrade mycroft-authored dependencies 2018-07-20 17:43:27 -05:00
Matthew Scholefield 189e0f10ab Refactor Precise engine and support engine timeouts 2018-07-06 00:05:28 -05:00
Åke eb091ea87a
Update requests to bleeding edge (2.19.1) (#1661) 2018-07-04 09:54:28 +02:00
Matthew D. Scholefield 6a26af1ec5
Upgrade msm
This fixes a bug in msk with extract_author
2018-06-28 16:38:19 -05:00
Matthew D. Scholefield 2cae3c91e2
Update Padaos
This fixed issues with Python 3.4
2018-06-27 13:19:09 -05:00