Previously, the location of the log files changed depending
on whether you were running on a Mark1/Picroft or under a
"Github" install. Now they are always under the same directory
at /var/log/mycroft-*.log
This also updates the CLI to pull from that location always.
Additionally:
* Removed the nonfunctional 'wifi' option from start-mycroft.sh
* Made the validation for dev_setup.sh exit instead of just show
a warning message in start-mycroft.sh
* Added code to allow dev_setup.sh to be run from different
directories successfully
This also adds the possibility to set the environment variable MYCROFT_VENV to separate the virtual env for python3 from the stable version.
Example:
export MYCROFT_VENV=mycroft-18.02
./dev_setup.sh
./start-mycroft.sh all
This fixes a problem where if "mycroft-core" was already in the
virtualenv path file, but the actual name of the module wasn't,
then the dev_setup.sh would succeed but start-mycroft.sh would
fail with "No module named mycroft.version". Now dev_setup.sh
actually checks for the $TOP variable in the virtualenv path,
instead of hardcoded "mycroft-core".
==== Fixed Issues ====
Might fix issue #1419 for some rare cases.
==== Documentation Notes ====
Slightly improves the durability of the install script.
Remove the hardcoded DEFAULT_SKILLS list from MSM, instead read it
from the https://github.com/MycroftAI/mycroft-skills/DEFAULT-SKILLS
list.
Additionally, a platform-specific list will also be loaded, allowing
platforms like KDE, etc. to have different defaults. These are also
loaded from the mycroft-skills repo from a file named like:
DEFAULT-SKILLS.platform
Also began the work to support a custom local skill folder location,
specified in the /etc/mycroft/mycroft.conf.
==== Fixed Issues ====
A failed requirements.sh run would not send an install failure
notification on the messagebus.
==== 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 ====
MSM now uses the 'jq' utility. This should already be installed on
a Picroft/Mark 1, but I added it to the dev_setup.sh also.
This commit officially switches the mycroft-core repository from
GPLv3.0 licensing to Apache 2.0. All dependencies on GPL'ed code
have been removed and we have contacted all previous contributors
with still-existing code in the repository to agree to this change.
Going forward, all contributors will sign a Contributor License
Agreement (CLA) by visiting https://mycroft.ai/cla, then they will
be included in the Mycroft Project's overall Contributor list,
found at: https://github.com/MycroftAI/contributors. This cleanly
protects the project, the contributor and all who use the technology
to build upon.
Futher discussion can be found at this blog post:
https://mycroft.ai/blog/right-license/
This commit also removes all __author__="" from the code. These
lines are painful to maintain and the etiquette surrounding their
maintainence is unclear. Do you remove a name from the list if the
last line of code the wrote gets replaced? Etc. Now all
contributors are publicly acknowledged in the aforementioned repo,
and actual authorship is maintained by Github in a much more
effective and elegant way!
Finally, a few references to "Mycroft AI" were changed to the correct
legal entity name "Mycroft AI Inc."
==== Fixed Issues ====
#403 Update License.md and file headers to Apache 2.0
#400 Update LICENSE.md
==== Documentation Notes ====
Deprecated the ScheduledSkill and ScheduledCRUDSkill classes.
These capabilities have been superceded by the more flexible MycroftSkill
class methods schedule_event(), schedule_repeating_event(), update_event(),
and cancel_event().
Reworking the mechanisms used to interact with Mycroft. The old
mycroft.sh utilized the 'screen' command, but now with the CLI it
it easier to use that for viewing log files. Plus there was
confusion between when to use start.sh and when to use mycroft.sh.
Now things are wrapped in the simple and easily discoverable scripts:
* start-mycroft.sh
* stop-mycroft.sh
The start-mycroft.sh allows you to start the background services and
to invoke the various tools (e.g. the CLI, unit tests, etc).
==== Fixed Issues ====
==== Documentation Notes ====
This will require revamp of the getting started guides, etc.
The mycroft-core.pth file wasn't addequate to get Python to fully
accept mycroft-core into the system path. For example, some of
the integration tests would fail in odd ways.
So switched to using add2virtualenv, which is was fine. But you
can't call that within the dev_setup.sh script since it is a
shell function. So instead this code does essentially what
add2virtualenv does.
Add the insertion of mycroft-core in the virtualenv created by
dev_setup.sh. It becomes part of the python2.7 site-packages.
This is needed for running mycroft-core pieces directly from
the command line, after performing "workon mycroft".
The code that detected existing mimic installs and asked for
confirmation before rebuilding had a few holes:
* A source install of mimic under the mycroft-core tree was missed
* Hitting "enter" or "spacebar" would be interpreted as "yes, rebuild",
which didn't match the prompt.
The commit template provides a developer with a structure to follow
for communicating with others on the mycroft-core project.
==== Tech Notes ====
Please use this template from here on!