The Travis CI build reports the following in the messages from
executing package/prepare_osx.sh:
sudo pip3 install --upgrade pip setuptools wheel
The directory '/Users/travis/Library/Caches/pip/http' or its \
parent directory is not owned by the current user and the cache \
has been disabled. Please check the permissions and owner of that \
directory. If executing pip with sudo, you may want sudo's -H \
flag.
The directory '/Users/travis/Library/Caches/pip' or its parent \
directory is not owned by the current user and caching wheels has \
been disabled. check the permissions and owner of that \
directory. If executing pip with sudo, you may want sudo's -H \
flag.
In an effort to address this issue, add "-H" flag to sudo.
The Travis CI builds have been failing with the following message:
The command "if [ "$TRAVIS_OS_NAME" = "osx" ]; then \
bash package/prepare_osx.sh; fi" \
failed and exited with 1 during .
This above line of code is from .travis.yml. Further examination of
the log from executing package/prepare_osx.sh shows the following
message:
<snip>
brew install python3 enchant
Error: python 2.7.12_1 is already installed
To upgrade to 3.6.5, run `brew upgrade python`
<snip>
Based on this message it appears that the method to install python3
has changed. Hence change command to upgrade python 2.x to 3.x.
Also fix milestone labels and regenerate to update 0.5.0 release.
This update was created with the following command:
$ github_changelog_generator -u olivierkes -p manuskript \
--no-unreleased \
--token {MyChangelogGithubToken}
See issue #281.
When loading a project that has the setting **Save to one single
file** disabled, Manuskript tries to read all directories and files
under the project directory.
Manuskript expects all files to contain valid unicode characters.
However if a file containing non-unicode characters is read then
Manuskript will crash.
The error message displayed on the console is similar to the
following:
----- begin snippet -----
Traceback (most recent call last):
File "/home/gedakc/workspace/manuskript.olivierkes/bin/../manuskript/ui/welcome.py", line 134, in loadRecentFile
self.mw.loadProject(act.data())
File "/home/gedakc/workspace/manuskript.olivierkes/bin/../manuskript/mainWindow.py", line 566, in loadProject
self.loadDatas(project)
File "/home/gedakc/workspace/manuskript.olivierkes/bin/../manuskript/mainWindow.py", line 793, in loadDatas
errors = loadSave.loadProject(project)
File "/home/gedakc/workspace/manuskript.olivierkes/bin/../manuskript/loadSave.py", line 66, in loadProject
v1.loadProject(project, zip=isZip)
File "/home/gedakc/workspace/manuskript.olivierkes/bin/../manuskript/load_save/version_1.py", line 657, in loadProject
files[os.path.join(p, f)] = fo.read()
File "/usr/lib/python3.5/codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 3131: invalid start byte
----- end snippet -----
There are at least two known situations in which files with
non-unicode characters can arise:
A. The project is on Mac OS X and the operating system automatically
creates a .DS_Store file.
B. The project is under git version control and contains a .git
subdirectory.
This enhancement prevents the Manuskript crash on project load by
ignoring all directory and file names that start with a period.