Skip to content

Feat: Add python stub#49

Merged
amitdev merged 3 commits into
amitdev:masterfrom
RF-Tar-Railt:feat/stub
Aug 6, 2023
Merged

Feat: Add python stub#49
amitdev merged 3 commits into
amitdev:masterfrom
RF-Tar-Railt:feat/stub

Conversation

@RF-Tar-Railt

Copy link
Copy Markdown
Contributor

resolve #46

Changes:

  • create lru dir and lru/__init__.py as package
  • move lru.c to lru/_lru.c as backend
  • using pyproject.toml with PEP 517

I have already check the wheel built after pyproject.toml and it is fine

@RF-Tar-Railt RF-Tar-Railt mentioned this pull request May 27, 2023
@RF-Tar-Railt

Copy link
Copy Markdown
Contributor Author

Is there anything we need to discuss?

@Skinner927

Copy link
Copy Markdown

I've copied this into a project and it works great. +1 from me. It would be great if this could be merged.

@RF-Tar-Railt If you get no response you could always submit this to typeshed

@miili

miili commented Jul 4, 2023

Copy link
Copy Markdown
Contributor

@amitdev it would be great to get this merged!

@miili miili mentioned this pull request Jul 4, 2023
@amitdev amitdev merged commit affaa8c into amitdev:master Aug 6, 2023
@amitdev

amitdev commented Aug 6, 2023

Copy link
Copy Markdown
Owner

@RF-Tar-Railt I did not merge this because the tests were failing. I just merged it now to see if it works in main and it still fails with the following error:

==================================== ERRORS ====================================
______________________ ERROR collecting test/test_lru.py _______________________
ImportError while importing test module '/home/runner/work/lru-dict/lru-dict/test/test_lru.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/opt/hostedtoolcache/Python/3.11.4/x64/lib/python3.11/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
test/test_lru.py:5: in <module>
    from lru import LRU
/opt/hostedtoolcache/Python/3.11.4/x64/lib/python3.11/site-packages/lru/__init__.py:1: in <module>
    from ._lru import LRU as LRU  # noqa: F401
E   ImportError: dynamic module does not define module export function (PyInit__lru)
=========================== short test summary info ============================
ERROR test/test_lru.py
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!
=============================== 1 error in 0.11s ===============================

The wheel build also fails:

 "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX86\x86\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Users\runneradmin\AppData\Local\Temp\cibw-run-kbl422ee\cp37-win32\build\venv\include -IC:\Users\runneradmin\AppData\Local\pypa\cibuildwheel\Cache\nuget-cpython\pythonx86.3.7.9\tools\include -IC:\Users\runneradmin\AppData\Local\pypa\cibuildwheel\Cache\nuget-cpython\pythonx86.3.7.9\tools\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\cppwinrt" /Tcsrc/lru/_lru.c /Fobuild\temp.win32-cpython-37\Release\src/lru/_lru.obj
        _lru.c
        "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX86\x86\link.exe" /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:C:\Users\runneradmin\AppData\Local\Temp\cibw-run-kbl422ee\cp37-win32\build\venv\libs /LIBPATH:C:\Users\runneradmin\AppData\Local\pypa\cibuildwheel\Cache\nuget-cpython\pythonx86.3.7.9\tools\libs /LIBPATH:C:\Users\runneradmin\AppData\Local\pypa\cibuildwheel\Cache\nuget-cpython\pythonx86.3.7.9\tools /LIBPATH:C:\Users\runneradmin\AppData\Local\Temp\cibw-run-kbl422ee\cp37-win32\build\venv\PCbuild\win32 "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\ATLMFC\lib\x86" "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\lib\x86" "/LIBPATH:C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\lib\um\x86" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\ucrt\x86" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.22621.0\um\x86" /EXPORT:PyInit__lru build\temp.win32-cpython-37\Release\src/lru/_lru.obj /OUT:build\lib.win32-cpython-37\lru\_lru.cp37-win32.pyd /IMPLIB:build\temp.win32-cpython-37\Release\src/lru\_lru.cp37-win32.lib
        LINK : error LNK2001: unresolved external symbol PyInit__lru
        build\temp.win32-cpython-37\Release\src/lru\_lru.cp37-win32.lib : fatal error LNK1120: 1 unresolved externals
        error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX86\\x86\\link.exe' failed with exit code 1120
        [end of output]
    
    note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed building wheel for lru-dict

See https://github.com/amitdev/lru-dict/actions/runs/5776171219 for more details.

@amitdev

amitdev commented Aug 6, 2023

Copy link
Copy Markdown
Owner

Unfortunately I don't have time now to look at this, but if the test/build can be fixed I'm happy to merge this.

@RF-Tar-Railt

Copy link
Copy Markdown
Contributor Author

Unfortunately I don't have time now to look at this, but if the test/build can be fixed I'm happy to merge this.

I will fix it in thenext few days

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a lru.pyi

4 participants