Skip to content

Commit

Permalink
Merge branch 'master' into dev/depman
Browse files Browse the repository at this point in the history
  • Loading branch information
dcolinmorgan authored Oct 18, 2024
2 parents 378e556 + 55be7e4 commit 303966a
Show file tree
Hide file tree
Showing 183 changed files with 13,453 additions and 5,702 deletions.
54 changes: 50 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:

strategy:
matrix:
python-version: [3.8, 3.9, '3.10', 3.11]
python-version: [3.8, 3.9, '3.10', 3.11, 3.12]

steps:

Expand Down Expand Up @@ -71,7 +71,7 @@ jobs:

strategy:
matrix:
python-version: [3.8, 3.9, '3.10', 3.11]
python-version: [3.8, 3.9, '3.10', 3.11, 3.12]

steps:

Expand All @@ -93,7 +93,7 @@ jobs:
python -m venv pygraphistry
source pygraphistry/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .[docs,test,build,bolt,igraph,networkx,gremlin,nodexl,jupyter]
python -m pip install -e .[test,build,bolt,igraph,networkx,gremlin,nodexl,jupyter]
- name: Lint
run: |
Expand All @@ -110,6 +110,47 @@ jobs:
source pygraphistry/bin/activate
./bin/test.sh
test-graphviz:

needs: [ test-minimal-python ]
runs-on: ubuntu-latest

strategy:
matrix:
python-version: [3.8, 3.9, '3.10', 3.11, 3.12]

steps:

- name: Checkout repo
uses: actions/checkout@v3
with:
lfs: true

- name: Checkout LFS objects
run: git lfs pull

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

- name: Install test dependencies
run: |
python -m venv pygraphistry
source pygraphistry/bin/activate
sudo apt-get install graphviz graphviz-dev
python -m pip install --upgrade pip
python -m pip install -e .[test,pygraphviz]
- name: Type check
run: |
source pygraphistry/bin/activate
./bin/typecheck.sh
- name: Graphviz tests
run: |
source pygraphistry/bin/activate
./bin/test-graphviz.sh
test-core-umap:

Expand All @@ -118,6 +159,7 @@ jobs:

strategy:
matrix:
#python-version: [3.8, 3.9, '3.10', 3.11, 3.12]
python-version: [3.8, 3.9]

steps:
Expand Down Expand Up @@ -165,6 +207,10 @@ jobs:
strategy:
matrix:
python-version: [3.8, 3.9]
#python-version: [3.8, 3.9, '3.10', 3.11, 3.12]
#include:
# - python-version: 3.12
# continue-on-error: true

steps:

Expand Down Expand Up @@ -284,7 +330,7 @@ jobs:

- name: Test building docs
run: |
cd docs && ./docker.sh
cd docs && ./ci.sh
test-readme:
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ coverage.xml

# Sphinx documentation
docs/_build/
docs/doctrees/
docs/source/demos/

# PyBuilder
target/
Expand All @@ -87,3 +89,4 @@ demos/data/BIOGRID-IDENTIFIERS-3.3.123.tab.txt

# local jupyter dev
jupyter_dev/
docs/source/demos
45 changes: 37 additions & 8 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,53 @@
# Required
version: 2

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/source/conf.py

build:
os: ubuntu-22.04
tools:
python: "3.8"
python: "3.12"
apt_packages:
# More closely mirror https://github.com/sphinx-doc/sphinx-docker-images
- graphviz
- imagemagick
- make
- pandoc
- texlive-latex-base
- texlive-latex-recommended
- texlive-latex-extra
- texlive-fonts-recommended
commands:

# setup
- pip install ".[docs]"
- cp -r demos docs/source/demos
- cp README.md docs/source/README.md
- cp ARCHITECTURE.md docs/source/ARCHITECTURE.md
- cp CONTRIBUTE.md docs/source/CONTRIBUTE.md
- cp DEVELOP.md docs/source/DEVELOP.md

# build html
- sphinx-build -b html -d docs/doctrees docs/source $READTHEDOCS_OUTPUT/html/

# build epub
- sphinx-build -b epub -d docs/doctrees docs/source docs/_build/latexpdf
- mkdir -p $READTHEDOCS_OUTPUT/epub
- cp docs/_build/latexpdf/PyGraphistry.epub $READTHEDOCS_OUTPUT/epub/PyGraphistry.epub

# Optionally build your docs in additional formats such as PDF
# build pdf
- sphinx-build -b latex -d docs/doctrees docs/source docs/_build/latexpdf
- cd docs/_build/latexpdf && pdflatex -file-line-error -interaction=nonstopmode PyGraphistry.tex && pdflatex -file-line-error -interaction=nonstopmode PyGraphistry.tex && echo ok || { echo fail && exit 1 ; }
- mkdir -p $READTHEDOCS_OUTPUT/pdf
- cp docs/_build/latexpdf/PyGraphistry.pdf $READTHEDOCS_OUTPUT/pdf/PyGraphistry.pdf

#for nav links?
formats:
- pdf
- htmlzip
- epub
- htmlzip

python:
install:
- method: pip
path: .
extra_requirements:
- dev
- docs
149 changes: 149 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,155 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm

## [Development]

## [0.34.16 - 2024-10-13]

### Docs

* Update and streamline readme.md
* Add quicksheet for overall
* More crosslinking

### Infra

* Add markdown support to docsite
* ReadTheDocs homepage reuses github README.md
* Docs pip install caches
* Drop SVGs and external images during latexpdf generation

### Changed

* Treemap import `squarify` deferred to use to allow core import without squarify installed, such as in `--no-deps`

## [0.34.15 - 2024-10-11]

### Docs

* Improve GFQL translation doc
* Add examples and API links: Shaping, Hypergraphs, AI & ML
* Add performance docs
* Add AI examples

## [0.34.14 - 2024-10-09]

### Added

* HTTP responses with error status codes log an `logging.ERROR`-level message of the status code and response body

## [0.34.13 - 2024-10-07]

### Docs

* Add more GFQL cross-references

## [0.34.12 - 2024-10-07]

### Docs

* Fix ipynb examples in ReadTheDocs distribution

## [0.34.11 - 2024-10-07]

### Fix

* Types

### Infra

* Enable more Python version checks

## [0.34.10 - 2024-10-07]

### Fix

* Docs: Notebook builds

### Docs

* More links, especially around plugins
* Update color theme to match Graphistry branding

## [0.34.9 - 2024-10-07]

### Fix

* Docs: 10 Minutes to PyGraphistry links

## [0.34.8 - 2024-10-06]

### Fix

* Docs: PDF support
* Docs: Links

### Docs

* More accessible theme

## [0.34.7 - 2024-10-06]

### Docs

* RTD: Added notebook tutorials
* RTD: Added various guides
* RTD: Added cross-references
* RTD: Cleaner navigation

### Infra

* Python: Add Python 12 to CI and document support
* Docs: Udated dependencies - Sphinx 8, Python 12, and various related
* Docs: Added nbsphinx - hub url grounding, ...
* Docs: Redo as a docker compose flow with incremental builds (docker, sphinx)
* Docs: Updated instructions for new flow

### Fix

* Docs: 2024
* Notebooks: Compatibility with nbsphinx - exactly one title heading, no uncommented `!`, correct references, ...

## [0.34.6 - 2024-10-04]

### Added

* Plugins: graphviz bindings, such as `g.layout_graphviz("dot")`

### Docs

* Reorganized readthedocs
* Added intro tutorials: `10 Minutes to PyGraphistry`, `10 Minutes to GFQL`, `Login and Sharing`

## [0.34.5 - 2024-09-23]

### Fixed

* GFQL: Fix `chain()` regression around an incorrectly disabled check manifesting as https://github.com/graphistry/pygraphistry/issues/583
* GFQL: Fix `chain()`, `hop()` traverse filtering logic for a multi-hop edge scenarios
* GFQL: Fix `hop()` predicate handling in multihop scenarios

### Infra

* GFQL: Expand test suite around multihop edge predicates in `hop()` and `chain()`

## [0.34.4 - 2024-09-20]

### Added

* UMAP: Optional kwargs passthrough to umap library constructor, fit, and transform methods: `g.umap(..., umap_kwargs={...}, umap_fit_kwargs={...}, umap_transform_kwargs={...})`
* Additional GPU support in featurize paths

### Changed

* Replace `verbose` with `logging`

### Refactor

* Narrow `use_scaler` and `use_scaler_target` typing to `ScalerType` (`Literal[...]`) vs `str`
* Rename `featurize_or_get_nodes_dataframe_if_X_is_None` (and edges variant) as non-private due to being shared

### Fixed

* get_indegrees: Fix warning https://github.com/graphistry/pygraphistry/issues/587

## [0.34.3 - 2024-08-03]

### Added
Expand Down
Loading

0 comments on commit 303966a

Please sign in to comment.