Trouble with hosting. What am I doing wrong?

Hello. I am an utter novice with Documenter and am completely stuck. Thanks in advance for any help.

I’m stuck on the hosting part of Documenter.jl. I got the ssh keys where they were supposed to be, which seemed to be easy.

I uploaded the /docs directory (except for docs/build) to my repo. That caused a travis build to fail and I can’t see why. I changed .travis.yml as per the directions in Documenter.jl and got another build failure.

Then I changed the ENV variables and did
% julia make.jl

and I got

┌ Info: Deployment criteria:
│ - :heavy_check_mark: ENV[“TRAVIS_REPO_SLUG”]="" occurs in repo=“
│ - ✘ ENV[“TRAVIS_PULL_REQUEST”]="" is “false”
│ - :heavy_check_mark: ENV[“TRAVIS_TAG”]="" is (i) empty or (ii) a valid VersionNumber
│ - ✘ ENV[“TRAVIS_BRANCH”]="" matches devbranch=“master” (if tag is empty)
│ - ✘ ENV[“DOCUMENTER_KEY”] exists
│ - :heavy_check_mark: ENV[“TRAVIS_EVENT_TYPE”]="" is not “cron”
└ Deploying: ✘

I have the ENV variables set on Travis. Why can’t make.jl see them?

Part of my problem was with the difference between local make.jl and the one travis uses. I think I have that figured out. My package uses PyPlot and the travis documenter build fails with this message. What do I need to do. I am not a Python user, so could use level 0 directions.

--------------- travis complaint below -----------------

The command “julia --project=docs/ -e ‘using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()’” exited with 0.

264106.01s$ julia --project=docs/ docs/make.jl

265ERROR: LoadError: InitError: PyError (PyImport_ImportModule


267The Python package matplotlib could not be found by pyimport. Usually this means

268that you did not install matplotlib in the Python version being used by PyCall.


270PyCall is currently configured to use the Python version at:




274and you should use whatever mechanism you usually use (apt-get, pip, conda,

275etcetera) to install the Python package containing the matplotlib module.


277One alternative is to re-configure PyCall to use a different Python

278version on your system: set ENV[“PYTHON”] to the path/name of the python

279executable you want to use, run“PyCall”), and re-launch Julia.


281Another alternative is to configure PyCall to use a Julia-specific Python

282distribution via the Conda.jl package (which installs a private Anaconda

283Python distribution), which has the advantage that packages can be installed

284and kept up-to-date via Julia. As explained in the PyCall documentation,

285set ENV[“PYTHON”]="", run“PyCall”), and re-launch Julia. Then,

286To install the matplotlib module, you can use pyimport_conda("matplotlib", PKG),

287where PKG is the Anaconda package the contains the module matplotlib,

288or alternatively you can use the Conda package directly (via

289using Conda followed by Conda.add etcetera).


  1. <class ‘ImportError’>

292ImportError(“No module named ‘matplotlib’”,)

(please quote your code)

It seems that you are passing args to the build process in using environment variables. Please make sure that you have done everything described here:

You may also want to pin to a specific version of Documenter in the relevant Project.toml, to make sure things don’t break if the interface changes.

Also, I like to look at the build setup of Documenter.jl itself to figure out the recommended way of doing things:

I took the make.jl in the Documenter.jl/docs a bit to literally and did the sub


once to often. I’m ok now but am still confused about what I’m really doing.

Hi, I’m back with a koan. I am trying to try reorganizing my docs in a dev branch. I’d like the docs for the master to stay where they are for awhile so I can play around without destroying anything. I’m getting this error

x ENV[“TRAVIS_BRANCH”] matches devbranch=“master”

which makes sense, since I’m on the dev branch. Is there something I can to to convince documenter that I want the dev branch.

The mods so far work fine on master, so I’m pretty sure that I’ve missed something,

I’ve set

repo=“” in make.jl
in mkdocs.

Am I trying to do the impossible? I don’t see any branch in documenter.jl where someone did this.


– Tim

I understand now. I did not have the vocabulary to parse the instructions, but I understand what a release branch is now, I think.

Still working through “pkg for bozos”