Fastai v0.7 install issues thread

[note: this is a wiki post so you can edit it to improve it]

Please use this thread for any fastai v0.7 (i.e. pre-fastai-1.x.x) installation related issues. For fastai-v1 installation issue please refer to this thread instead.

Important

Since fastai-1.0.1 release in Oct 2018, fastai-v1 is now the main code base inside fastai git repo. The fastai-v0.7 code base has moved to the old/fastai directory inside the same repository. And there is a symlink that points from courses/*/fastai to ../../old/fastai so the notebooks under courses/*/*.ipynb currently still work with the v0.7 code base (windows users using their own GPU will need to tweak the symlinks, see the instructions in the windows-installation links below).

Installation

If you’re on windows follow this guide, instead.

First, please make sure you have the latest conda and/or pip, depending on the package manager you use:

pip install pip -U
conda update conda

Currently, there are two ways to install fastai-0.7.x: (1) via conda from git source (best), or (2) via pip package (outdated code):

  1. Conda installation from source:

    1a. First, create the fastai conda environment. It will install all the dependencies that are needed. Do it only once:

    git clone https://github.com/fastai/fastai.git
    cd fastai
    conda env create -f environment.yml
    

    You then activate that environment with:

    conda activate fastai
    

    If you don’t have GPU, build the fastai-cpu environment instead:

    git clone https://github.com/fastai/fastai.git
    cd fastai
    conda env create -f environment-cpu.yml
    

    You then activate that environment with:

    conda activate fastai-cpu
    

    Windows users wanting to use their own GPU, rather than cloud or vm solutions, will have extra steps to take. Please see the links to windows-dedicated threads at the end of this post.

    1b. and now you can start running the course notebooks:

    jupyter notebook
    

    Once the jupyter notebook environment has started, in your browser navigate to courses/dl1/lesson1.ipynb and execute the notebook.

    From now on remember that you need to activate either fastai or fastai-cpu environment that you created before in the shell that you code or notebooks from.


    Some time later, to update to the latest fastai-0.7.x. code base:

    cd fastai
    git pull
    conda env update
    

    If something gets messed up, delete the old env first:

    conda env remove -y -n fastai
    

    or with fastai-cpu

    conda env remove -y -n fastai-cpu
    

    and then re-create the environment as explained in steps 1 a+b above.

    This post goes into more exact details on what else you might need to undo and restart from scratch. This probably mostly affects people who are updating their old setup, which no longer functions.

  2. Pip installation

    pip install fastai==0.7.0
    pip install torchtext==0.2.3
    

    This currently will install the fastai version from May 13, 2018 (outdated)

Using fastai v0.7 and v1.0 into the same environment

Ideally have a dedicated environment for each and then there should be no conflict.

If you have to have both in the same environment, install fastai v1.0 normally and fastai v0.7 into a hidden path, and then when you want v0.7 prepend that hidden path to sys.path:

import sys
sys.path.insert(0, "/path/to/fastai/v.0.7")
import fastai

Specific problems

  • ModuleNotFoundError: No module named 'bcolz’. See this.

Some troubleshooting ideas

Tell me where Python is looking for my modules to import from:

import sys
print(sys.path)

Tell me which fastai library got loaded (we want to know the exact path)

import sys, fastai
print(sys.modules['fastai'])

At times a quick hack can be used to get your first notebook working and then sorting out the setup. Say you checked out fastai to /tmp/:

cd /tmp/
git clone https://github.com/fastai/fastai
cd fastai/old/

So now you know that your uninstalled fastai is located under `/tmp/fastai/old/. Next, put the following on the very top of your notebook:

import sys
sys.path.append("/tmp/fastai/old") # on windows use \'s instead
import fastai

and it should just work. Now, go and sort out the symlinks, so that you don’t need to do it for every notebook.

Related threads

Google Cloud:

Installation on Windows (not recommended for beginners, use cloud instead)

Problem report

If you encounter installation issues please report them in this thread.

For windows-specific install issues it’s probably the best to post in this dedicated thread.

When you make your report include as much information as possible, including your platform details and in particular the exact steps you executed (all of them) that lead you to a problem. Please remember, we can’t guess what you may have done.

Please do not send screenshots with trace/error messages - we can’t copy-n-paste from the images, instead paste them verbatim into your post and use the markdown gui menu so that it’s code-formatted.

If your system is configured to use a non-English locale, if possible, re-run the problematic code after running:

export LC_ALL=en_US.UTF-8

So that the error messages will be in English. You can run locale to see which locales you have installed.

p.s. if there are cloud/vm-service-specific instructional threads/posts that are up-to-date, please add a link, so this thread can send users to the more specific threads where a specific environment is discussed. Thanks.

25 Likes

Since I now see this is a more appropriate place for my question that I originally posted here Cannot run jupyter notebook after setup.

I am having some issues getting fastai to work on the fast.ai paperspace template (p4000). My only goal is to get going with lesson 1 from the course but I am slowly getting the idea that I have not enough pre-knowledge for the course, or that I missed some essential info.

The following things happened:
(1) conda env update works, but does not install the spacy package.
(2) jupyter notebook does not work. A solution was proposed in the thread I started and though it does get rid of the error messages, and gives me a url, I can not open it in my browser (chrome on mac). I replaced ‘localhost’ with the ip of my machine.

I tried removing conda and reinstalling a few times, and manually installing the spacy package with pip (and others that are giving errors after installing spacy) but I have the idea that I am dealing with two problems at once.

2 Likes

Noting a problem I encountered ~Oct 3 and was able to resolve.

I was seeing the “truncated notebooks” problem (Truncated Notebooks) as Paperspace user using the fast.ai template Ubuntu machine with GPU+. I setup this machine following the setup guide for DL1.

The problem is that the version of conda and pip in the fastai template for Paperspace is too old. conda activate doesn’t work, for instance. Also, the “truncated notebooks” thing is likely a dependency version issue, since it got resolved once I setup the fastai environment with conda from scratch, according to this guide.

Also, there’s general edits needed for the lines added to ~/.bashrc too, because of conda’s version differences.

A final issue was that I encountered Jupyter notebook KeyError: ‘allow_remote_access’ – another small tweak, I’m guessing.

Hope that helps!

@stas appreciate you addressing the issues around new vs old fastai 0.7 and 1.0+

Started on your #1 instructions:

and got the following error message for pyproj (which has popped up before on the threads):

Collecting pyproj (from geopandas>=0.3.0->plotnine->-r C:\Users\Stephen\Document
s\GitHub\fastai\condaenv.d2ikl714.requirements.txt (line 9))
  Using cached https://files.pythonhosted.org/packages/29/72/5c1888c4948a0c7b736
d10e0f0f69966e7c0874a660222ed0a2c2c6daa9f/pyproj-1.9.5.1.tar.gz
    Complete output from command python setup.py egg_info:
    nad2bin.c
    nad2bin.c(2): fatal error C1083: Cannot open include file: 'stdio.h': No suc
h file or directory
    using bundled proj4..
    Traceback (most recent call last):
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\_msvccompiler.p
y", line 423, in compile
        self.spawn(args)
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\_msvccompiler.p
y", line 542, in spawn
        return super().spawn(cmd)
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\ccompiler.py",
line 909, in spawn
        spawn(cmd, dry_run=self.dry_run)
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\spawn.py", line
 38, in spawn
        _spawn_nt(cmd, search_path, dry_run=dry_run)
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\spawn.py", line
 81, in _spawn_nt
        "command %r failed with exit status %d" % (cmd, rc))
    distutils.errors.DistutilsExecError: command 'C:\\Program Files (x86)\\Micro
soft Visual Studio\\2017\\BuildTools\\VC\\Tools\\MSVC\\14.15.26726\\bin\\HostX86
\\x64\\cl.exe' failed with exit status 2

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Stephen\AppData\Local\Temp\pip-install-4yurslw6\pyproj\setu
p.py", line 72, in <module>
        objects = cc.compile(['nad2bin.c', 'src/pj_malloc.c'])
      File "C:\Users\Stephen\Anaconda3\envs\fastai\lib\distutils\_msvccompiler.p
y", line 425, in compile
        raise CompileError(msg)
    distutils.errors.CompileError: command 'C:\\Program Files (x86)\\Microsoft V
isual Studio\\2017\\BuildTools\\VC\\Tools\\MSVC\\14.15.26726\\bin\\HostX86\\x64\
\cl.exe' failed with exit status 2

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\Stephen\
AppData\Local\Temp\pip-install-4yurslw6\pyproj\

CondaValueError: pip returned an error 

If you then manually install pyproj using conda install -n fastai pyproj and open up a jupyter notebook, it results into a dead kernel. After checking the kernelspec list (which is created as part of setting up the fastai env in /Anaconda3/envs/fastai/) and inspecting the kernel.json, it appears to be pointing to a directory that doesn’t exist (/bin/):

1 Like

Yes, there was a recent issue about it, please see my suggestion to try solutions posted here.

If you find among those proposed solutions one or a few that solve that problem and that others in the same boat can follow, please share and I can be added to the main windows-build doc. The op in the issue, manually edited kernel.json, which is not the best/easiest solution. That’s why I ask to try other proposed solutions - I personally don’t have windows to try (or want to), so I can only rely on your input to improve the docs.

And the original issue is that the developer install requires you have a compiler tools. So yes, perhaps, compiling a list of all those modules that are on conda and require no compiler tools (like pyproj) - that will already help many.

1 Like

Hi, I have tried these command

git clone https://github.com/fastai/fastai.git
cd fastai
conda env create -f environment-cpu.yml

and received these error

Collecting fiona (from geopandas>=0.3.0->plotnine->-r C:\Development\Data_Science\Fast_AI\fastai\condaenv.327kdr06.requirements.txt (line 9)
)
Using cached https://files.pythonhosted.org/packages/82/52/fe30f9f529edf52080e7f5a2ffe377aefd84d0aceeb2e96022b5a78b3faf/Fiona-1.7.13.tar.g
z
Collecting shapely (from geopandas>=0.3.0->plotnine->-r C:\Development\Data_Science\Fast_AI\fastai\condaenv.327kdr06.requirements.txt (line
9))
Using cached https://files.pythonhosted.org/packages/a2/fb/7a7af9ef7a35d16fa23b127abee272cfc483ca89029b73e92e93cdf36e6b/Shapely-1.6.4.post
2.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File “”, line 1, in
File “C:\Users\DINESH~1.CHA\AppData\Local\Temp\pip-install-yk62f1fg\shapely\setup.py”, line 80, in
from shapely.buildcfg import geos_version_string, geos_version,
File “C:\Users\DINESH~1.CHA\AppData\Local\Temp\pip-install-yk62f1fg\shapely\shapely_buildcfg.py”, line 200, in
lgeos = CDLL(“geos_c.dll”)
File "C:\anaconda3\envs\fastai-cpu\lib\ctypes_init
.py", line 348, in init
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found

----------------------------------------

Command “python setup.py egg_info” failed with error code 1 in C:\Users\DINESH~1.CHA\AppData\Local\Temp\pip-install-yk62f1fg\shapely\

CondaValueError: pip returned an error

Any idea whats wrong here ?

Ps : I have tried it with fresh install of python but still getting this error.

1 Like

this worked well but now getting this error when i try to do the first import in lesson 1

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-2-c51a52575a56> in <module>
      1 # This file contains all the main external libs we'll use
----> 2 from fastai.imports import *

ModuleNotFoundError: No module named 'fastai.imports'

The symlink that comes in the repo doesn’t appear to work, so I followed prior instructions to try a few different ones with no success

mklink /d fastai
    ..\..\fastai (get error of 'dataclasses' not found)
    ..\..\old\fastai (get error of DDLs not found)
    ..\..\old (get error of 'fastai.imports' not found)

So far I have:

  1. modified the first args in kernel.json file @ C:\Users\Stephen\Anaconda3\envs\fastai\share\jupyter\kernels\python3\kernel.json to remove the bin:

    “argv”: [
    “C:/Users/airve/Anaconda3/envs/fastai-cpu/bin/python”

  2. manually installed pyproj and shapely using conda install -n fastai pkgname

  3. added - conda-forge::fiona>=1.7.13 to environment.yml

Any chance you could try the command line solutions offered here? Manual fix will be difficult for some to follow.

  1. manually installed pyproj and shapely using conda install -n fastai pkgname

fyi, Jeremy removed pyproj from dependencies.

The correct mklink command should be:

mklink /d fastai ..\..\old\fastai

but I’m not sure why yours is failing the, as you have tried that - perhaps you have some previously installed fastai and it gets in the way?

sorry, I can’t help much with windows-specific issues, like mklink, I am on linux. So hopefully somebody else can help you there… but I’d be happy to summarize the solutions in one place.

check the content of your old\fastai folder against the repo.
mine was incomplete - it did not have any .py files in it just 3 folders.
so i had to manually copy the old\fastai from the repo and replace the one after the installation.

I checked \old\fastai and looks like all py files are there (31)

ok. besides making sure the symlink points to the correct location, i do not know what else could be wrong.
what i ended up doing after my first attempt was installing everything including anaconda from scratch

I am going to try another clean sweep on anaconda and fastai after work today.

I followed this installation guide, and I got everything to run smoothly on 18.04, CUDA 9.0, pytorch 0.3.1

However, I ran into a runtime error when I tried to train the model:
'float' object has no attribute '"cpu"' in core.py#to_np(v)

I fixed this by adding:
if isinstance(v, float): return np.array(v)

Not sure if this is correct, but it seems to work for me.

I created a fresh conda environment and installed fast ai as below:

conda create -n fai_course python=3.7
source activate fai_course
conda install -c pytorch pytorch-nightly-cpu
conda install -c fastai torchvision-nightly-cpu 
jupyter notebook

but when I import the followings, I get OSError

from fastai.imports import *
from fastai.torch_imports import *
from fastai.transforms import *
from fastai.conv_learner import *
from fastai.model import *
from fastai.dataset import *
from fastai.sgdr import *
from fastai.plots import *

the error is:

---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in <module>
   1352         try:
-> 1353             fontManager = json_load(_fmcache)
   1354             if (not hasattr(fontManager, '_version') or

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in json_load(filename)
    887     """
--> 888     with open(filename, 'r') as fh:
    889         return json.load(fh, object_hook=_json_decode)

FileNotFoundError: [Errno 2] No such file or directory: '/Users/alieftekhari/.matplotlib/fontlist-v300.json'

During handling of the above exception, another exception occurred:

OSError                                   Traceback (most recent call last)
<ipython-input-6-94fabf9055d8> in <module>
----> 1 from fastai.imports import *
      2 from fastai.torch_imports import *
      3 from fastai.transforms import *
      4 from fastai.conv_learner import *
      5 from fastai.model import *

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/fastai/__init__.py in <module>
----> 1 from .basic_train import *
      2 from .callback import *
      3 from .callbacks import *
      4 from .core import *
      5 from .data import *

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/fastai/basic_train.py in <module>
      1 "Provides basic training and validation with `Learner`"
----> 2 from .torch_core import *
      3 from .data import *
      4 from .callback import *
      5 

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/fastai/torch_core.py in <module>
      1 "Utility functions to help deal with tensors"
----> 2 from .imports.torch import *
      3 from .core import *
      4 
      5 AffineMatrix = Tensor

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/fastai/imports/__init__.py in <module>
----> 1 from .core import *
      2 from .torch import *

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/fastai/imports/core.py in <module>
      1 import csv, gc, gzip, os, pickle, shutil, sys, warnings
----> 2 import math, matplotlib.pyplot as plt, numpy as np, pandas as pd, random
      3 import scipy.stats, scipy.special
      4 import abc, collections, hashlib, itertools, json, operator
      5 import mimetypes, inspect, typing, functools

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/pyplot.py in <module>
     30 from cycler import cycler
     31 import matplotlib
---> 32 import matplotlib.colorbar
     33 import matplotlib.image
     34 from matplotlib import rcsetup, style

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/colorbar.py in <module>
     30 import matplotlib.collections as collections
     31 import matplotlib.colors as colors
---> 32 import matplotlib.contour as contour
     33 import matplotlib.cm as cm
     34 import matplotlib.gridspec as gridspec

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/contour.py in <module>
     16 import matplotlib.colors as mcolors
     17 import matplotlib.collections as mcoll
---> 18 import matplotlib.font_manager as font_manager
     19 import matplotlib.text as text
     20 import matplotlib.cbook as cbook

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in <module>
   1361             raise
   1362         except Exception:
-> 1363             _rebuild()
   1364     else:
   1365         _rebuild()

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in _rebuild()
   1342         global fontManager
   1343 
-> 1344         fontManager = FontManager()
   1345 
   1346         if _fmcache:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in __init__(self, size, weight)
    976         self.defaultFont = {}
    977 
--> 978         ttffiles = findSystemFonts(paths) + findSystemFonts()
    979         self.defaultFont['ttf'] = next(
    980             (fname for fname in ttffiles

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in findSystemFonts(fontpaths, fontext)
    268             # check for OS X & load its fonts if present
    269             if sys.platform == 'darwin':
--> 270                 fontfiles.update(OSXInstalledFonts(fontext=fontext))
    271 
    272     elif isinstance(fontpaths, str):

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in OSXInstalledFonts(directories, fontext)
    216         directories = OSXFontDirectories
    217     return [path
--> 218             for directory in directories
    219             for ext in get_fontext_synonyms(fontext)
    220             for path in list_fonts(directory, ext)]

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in <listcomp>(.0)
    218             for directory in directories
    219             for ext in get_fontext_synonyms(fontext)
--> 220             for path in list_fonts(directory, ext)]
    221 
    222 

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in list_fonts(directory, extensions)
    155     extensions = ["." + ext for ext in extensions]
    156     return [str(path)
--> 157             for path in filter(Path.is_file, Path(directory).glob("**/*.*"))
    158             if path.suffix in extensions]
    159 

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/matplotlib/font_manager.py in <listcomp>(.0)
    154     """
    155     extensions = ["." + ext for ext in extensions]
--> 156     return [str(path)
    157             for path in filter(Path.is_file, Path(directory).glob("**/*.*"))
    158             if path.suffix in extensions]

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in glob(self, pattern)
   1080             raise NotImplementedError("Non-relative patterns are unsupported")
   1081         selector = _make_selector(tuple(pattern_parts))
-> 1082         for p in selector.select_from(self):
   1083             yield p
   1084 

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _select_from(self, parent_path, is_dir, exists, scandir)
    541             try:
    542                 successor_select = self.successor._select_from
--> 543                 for starting_point in self._iterate_directories(parent_path, is_dir, scandir):
    544                     for p in successor_select(starting_point, is_dir, exists, scandir):
    545                         if p not in yielded:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
--> 533                     for p in self._iterate_directories(path, is_dir, scandir):
    534                         yield p
    535         except PermissionError:

/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/pathlib.py in _iterate_directories(self, parent_path, is_dir, scandir)
    529             entries = list(scandir(parent_path))
    530             for entry in entries:
--> 531                 if entry.is_dir() and not entry.is_symlink():
    532                     path = parent_path._make_child_relpath(entry.name)
    533                     for p in self._iterate_directories(path, is_dir, scandir):

OSError: [Errno 62] Too many levels of symbolic links: '.Trash/NETGEARGenie.app/Contents/Frameworks/QtPrintSupport.framework/Versions/5/5'

Hey @stas, just to follow up: I firmly believe it is an issue caused by the symlink not being right.
https://www.daveoncode.com/2017/03/07/how-to-solve-python-modulenotfound-no-module-named-import-error/
I can’t explain exactly how, but this and other resources that Jeremy has shared in the past all point to this not functioning as expected. This could be an issue with my PC being on windows 7 (don’t judge me :wink: ) or a lack of proper admins rights (doesn’t make sense; all my cmd prompts say Administrator on them).

I will keep trying to research, but after all my research and reloading of packages and conda env, this has got to be in - a simple file link lol

So what was the solution in your case, @ninjalytix , I’m not sure how others in the same situation will know what you did to resolve the same? And remember to speak to me like I’m from a different planet, since I don’t know windows :wink: that is so I will know what to add to the top post. (albeit it probably needs to go to this post.)

Windows 10 users should be alright. I confirmed on my windows 10 laptop that symlink in repo works as expected.

Still trying to resolve the issue on my windows 7 pc. After a clean install of fastai, I tried a simple
import fastai

which worked, but the following did not work

from fastai.transforms import *
...

and returned the “Module not found” message.

It’s relatively simple to debug:

import sys
print(sys.path)

now you can compare the paths with where you actually installed fastai with where python is looking for it.

and of course check that actually have this file:old/fastai/transforms.py and that the top folder old is part of one of the entries in that sys.path or if you have it installed system-wide, then under normal python module location.

git pull in fastai/fastai directory fixed it.