Plot, Packages and other issues in QuantEcon lectures

First, thank you for putting together this website, the lectures and sharing your code, I think it’s great.
I am trying to learn Julia by following steps in Quantecon.com, “Getting started with Julia”

I followed the recommended installation steps and successfully (?) installed Julia, Jupyter and the packages in the repository, but whenI try to work on the notebook several things don’t match what the lectures suggest.

(i) The tab completion does not work. Simply nothing happens when I press tab, hence I can’t type unicode symbols with the method suggested.

(ii) The plot function doesn’t run, and after a considerable amount of time (even 20 minutes) it gives the following error.

I searched the message, and I tried several fixes, among which reinstalling, updating the packages and using Pkg.build(“GR”). Another user seemed to have experienced a similar problem with Julia 1.3 (How to get Julia work for the first time? ) but I am currently using the Julia 1.4.1

I am very new to Julia, so I might be missing something trivial, but I genuinely can’t find the solution, and I’d really appreciate any help on the subject.

Hi @TheAlphart, the lectures have actually supported Julia 1.4.1 for less than an hour.

If you try with the latest version of the packages (i.e., v0.6.0 of the QuantEcon/quantecon-notebooks-julia package set, which should say v0.5.0 in the notebooks you downloaded earlier today), this problem should disappear.

Let me know how it goes.

2 Likes

Hi @arnavs, thank you very much for your reply!
I have tried to edit the notebook, and the packages where “requested” in 0.6.0 but not loaded, despite the changes in the Manifest.toml. I have then overwritten the Github folder (…/QuantEcon/quantecon-notebooks-julia) with a newer clone and tried again your suggestion. This forced to resinstall all the packages and fixed the proble with plot() and with the unicode characters. For some reason now I get a new error, that doesn’t really stop the command from working though.

It looks like you have an old version of InstantiateFromURL. We’ve had the instantiate option for a while now. Can you run ] up InstantiateFromURL in your main environment and then try again?

Updated InstantiateFromUrl from the REPL, but I get the same error above. That said, everything else (from what I am testing) works fine, including plot() and the tab completion.

I installed Julia for the first time 2-3 days ago, so I wouldn’t know I ended up with an old InstantiateFromURL.

@TheAlphart It looks like there is a version of IFU that is in the Manifest itself that needs to be updated. So, run ] up InstantiateFromURL when you’re in the v0.6.0 environment (if you downloaded the quantecon/quantecon-notebooks-julia repo, if you fire up any of the notebooks from that.)

I run it a couple of times from a notebook in the cloned v0.6.0 folder until I got the successful installation

But if I run theInstantiateFromURL, comand above, i still get the same error.

I think that @arnav hasn’t quite patched the project files and tagged a v.0.7 release. When he gives you the go ahead, try the following.
-make sure you have the latest project/manifest files, and there is no chance you have local changers to it.

  • boot up a jupyter notebook in that folder. Doesn’t have to be a quantecon one. Don’t execute anything else.
  • create a code cell ] instantiate and run it. This will make sure you have the appropriate version of the appropriate packages,including the InstantiateFromURL

After that, hopefully everything runs smoothly with your v.0.7 notebooks.

I suspect there is a chicken and egg situation otherwise because InstantiateFromURL is a special package which makes deployment easier…but because you updated it prior to us patching the package and Manifest maybe things got out of sync. Regardless, we change that package infrequently so this shouldn’t be a common occurrence. Thanks for helping us track this down.

Thank you! I’ll try when all is ready, and let you know how it goes.
Now, despite the error, at least I have access to most functionalities, that is great.