Repository navigation
Issue #76 - Rename classic API to express - #98
Merged
Merged
Conversation
…o have a blank line before it)
Member
|
You can up the version to 1.0.1 for testing with TestPyPI. |
This was referenced Sep 17, 2026
…ded within the source distribution due to the isolated build environment having setuptools and cython installed, even if the user's environment doesn't have these dependencies. Bumped the `__version__` in `__init__.py` so I can push the source distribution to TestPyPI and test installing.
wbkboyer
marked this pull request as ready for review
September 17, 2026 01:35
…page has a broken link with relative URL (even though GitHub repo page was happy)
john-boyer-phd
approved these changes
Sep 19, 2026
john-boyer-phd
left a comment
Member
There was a problem hiding this comment.
This look great.
The fix to draw() is nice because we're back to passing the tests, and it'll be part of the next issue to deal with the fact that ax.margins(0) seems to truncate the left, right and bottom of the image by a pixel. Just not part of this issue though.
…ms to satisfy `test_draw_pad_inches_controls_output_padding()`. Regenerated `K5-minus-edge.png` just in case.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #76
NOTE: Once this PR is merged, we'll have to update
README.mdto have the permalink for theK5-minus-edge.pnginstead of a relative URL, otherwise TestPyPI and PyPI landing page won't have that image.Type of change
Please check only relevant options:
expresssubpackage explicitly rather than from the top levelplanaritypackage.Changes
Added
Updated
planarity/classictoplanarity/expressplanarity/express/planarity.pyx- Updatedcimportstatement to reference new subpackage name, as well as all cross-references in docstringsplanarity/express/planarity_(functions|networkx).py- updated all cross-references to useplanarity.expresssubpackageplanarity/__init__.py- updated import statements to useexpresssubpackage and bumped__version__for TestPyPI purposesMANIFEST.in- removed.cfiles from source distribution, and updated paths forexpressplanarity.pyxmodule andcplanarity.pxddefinition filepyproject.toml- updatedclassictoexpressREADME.md- updated relative path toexpress; this is broken on TestPyPI and likely will be for PyPI, so we'll need to subsequently update this to the permalink, something like:setup.py- updatedclassictoexpressfor subpackage, as well as naming of sourcefile listRemoved
Testing
git clean -x -d -e .vscode -fto get rid of anypycacheor other detritus (including old cythonized.cfiles)rm -rf .venvand re-created (nocythonnorsetuptools) then ranpip install -v .to view compilation process (includingplanarity.express.planaritymodule)htmlandlatexpdfcontents and visually inspected (spot check) after installingsphinx-docin virtual environmentpytest -vvvafter installingpytest,matplotlib,networkxexamples/express/draw.pyandexamples/full/demo_specific_graph.pyto show that all the modules were working as expectedpython -m build --sdist, then pushed to TestPyPI withpython -m twine upload --repository testpypi dist/planarity-1.0.1.tar.gz, then installed on Debian 13 VM with Python 3.14.7 in fresh virtual environment withoutcythoninstalled (although had to installsetuptools) and install withpython -m pip install --index-url https://test.pypi.org/simple/ --no-deps --no-build-isolation planarity. Ran IDLE and testedprint(planarity.ascii(edgelist))for the standard example.Logs from verification steps above (Macbook, Python 3.14.6)
TestPyPI run
Note that due to an issue with TestPyPI not including
setuptools, we must install setuptools before attempting to install:Then, we can install
planarity, withoutcythoninstalled in the test environment (in this case a Debian VM with Python 3.14.7 in a virtual environment withoutcython)!Opened IDLE to test only the
planarity_functions.pyascii()endpoint (note that theexamplescripts nortestsare included in the source distribution):