Cannot find import with underscore "_functools"

Open
#541 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
javascript, python
Domain
compilers

Research direction

Start by reproducing the reported transcrypt -b -v Run_AFPO.py command and trace the import chain from Run_AFPO.py through copy.py, types.py, and functools.py line 17. Determine how the _functools import should be handled in Transcrypt, then verify that the example compiles without the reported missing-module error.

Written by the indexing model from the issue text.

Description

IS: limitation

Hello - I am just getting started with Transcrypt. The automated tests all run without errors and I have a trivial example from your docs working great.

Im running into an issue importing functools in the native Python 3.6 library. Could you point me in the right direction? Here is the Terminal output (Im on a Mac if that helps at all).

`
(env) ip0af5059f:Transcrypt-DemoOne RachelDotey$ transcrypt -b -v Run_AFPO.py

Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.6.101
Copyright (C) Geatec Engineering. License: Apache 2.0

Extracting module properties from: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/core.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/base.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/base.mod.js
Extracting module properties from: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/base.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/standard.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/standard.mod.js
Extracting module properties from: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/standard.mod.js
Extracting module properties from: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/org/transcrypt/javascript/builtin.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/Run_AFPO.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/javascript/Run_AFPO.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/MaxOnes_AFPO.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/javascript/MaxOnes_AFPO.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/copy.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/javascript/copy.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/types.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/javascript/types.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/sys/init.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/sys/javascript/init.mod.js
Extracting module properties from: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/sys/javascript/init.mod.js
Parsing module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/functools.py
Generating code for module: /Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/javascript/functools.mod.js

Error while compiling (offending file last):
File '/Applications/MAMP/htdocs/Transcrypt-DemoOne/Run_AFPO.py', line 6, at import of:
File '/Applications/MAMP/htdocs/Transcrypt-DemoOne/MaxOnes_AFPO.py', line 6, at import of:
File '/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/copy.py', line 51, at import of:
File '/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/types.py', line 171, at import of:
File '/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/functools.py', line 17, namely:

Attempt to import module: _functools
Can't find any of:
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/transcrypt/modules/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/bin/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/bin/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python36.zip/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python36.zip/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/lib-dynload/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/lib-dynload/__javascript__/_functools.mod.js
	/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/_functools.py
	/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/__javascript__/_functools.mod.js
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/_functools.py
	/Applications/MAMP/htdocs/Transcrypt-DemoOne/env/lib/python3.6/site-packages/__javascript__/_functools.mod.js

Aborted
`

Heres the code stack:

Run_AFPO.py line 6

from MaxOnes_AFPO import AFPO

MaxOnes_AFPO.py line 6

import copy

copy.py line 51

import types

types.py line 171

import functools as _functools

The offending line in functools.py is line 17

from _functools import reduce

Dominant language
Python
Stars
2.9k
Forks
218
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from TranscryptOrg/Transcrypt

All issues in TranscryptOrg/Transcrypt

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.