# NetworkX Dispatch Meeting notes Meeting link: https://anaconda.zoom.us/j/94192874965?pwd=K0wvcmhXem41ZlVSQ2l4TXlUaDgxdz09 hackmd link: https://hackmd.io/rqs_pWMxSLmICXCpI3w-Ug Archived notes: https://github.com/networkx/archive/tree/main/meetings/dispatching ## January 08, 2025 Attendees: Rick Ratzel, Erik Welch, Anthony Mahanna ### Topics/Notes - Leiden PRs ready to merge: - [PR 7743](https://github.com/networkx/networkx/pull/7743): Leiden funcs - [PR 7690](https://github.com/networkx/networkx/pull/7690): backend-only functions - Allowing Graph constructors to be dispatchable - "can an ArangoDB graph (nx-adb Graph) be created internally when a user creates a nx.Graph()?" ## January 22, 2025 Attendees: Ralph Liu, Rick Ratzel, Aditi Juneja, Erik Welch ### Topics/Notes - Future meeting: demo plugin hooks using profiler plugin (Erik) - PRs - [PR 7768](https://github.com/networkx/networkx/pull/7768): Avoid repeated cache conversion failures - [PR 7765](https://github.com/networkx/networkx/pull/7765): WIP: add runtime hooks to dispatch system - Erik likes current structure; needs documentation - [PR 7760](https://github.com/networkx/networkx/pull/7760): Dispatch classes such as nx.Graph(backend=...) - Will show nx-cugraph and nx-arangodb using this (soon) - [PR 7602](https://github.com/networkx/networkx/pull/7602): Add _dispatchable._get_convert_kwargs method for more composability - (others?) - Leiden PR - any open concerns? - [PR 7743](https://github.com/networkx/networkx/pull/7743): Leiden funcs - Discussion on plugin hooks: - Should this topic be elevated to the general discussion? For example, https://github.com/rapidsai/nx-cugraph/pull/57 could apply generally to NetworkX, so should it be part of NetworkX proper? - Thoughts on refactoring the dispatching codebase? [issue 7787](https://github.com/networkx/networkx/issues/7787) and [7776](https://github.com/networkx/networkx/pull/7776) - Any overlap with what we want to see with the dispatching code and [spatch](https://github.com/scientific-python/spatch)? ## February 05, 2025 Attendees: Dan Schult, Mridul Seth, Rick Ratzel, Erik Welch, Ralph Liu ### Topics/Notes - Mridul: We need user feedback on dispatching - Dan: How do we do that? Survey? - Mridul: Can NVIDIA help? - Erik: Add a link for feedback in the docs - Talk to existing cuGraph users - Erik has found examples on github (possibly students) where code includes setting the cugraph backend - Caltech group that Ross is part of is using community detection - can we get Ross to try dispatching? - Ross seems to use more explicit dispatch, he'd be a good candidate for feedback - Hypernetx users/devs would be good candidates - They've tried this and were successful getting it running, BC perf needed improvement - Erik: what are the guidelines around using the `_adj` member? - Could be dangerous since it's read/write capable - Dan/Mridul: okay to use, just be careful - non `_` members are read-only views, more expensive ## February 19, 2025 Attendees: Rick Ratzel, Erik Welch, Ralph Liu ### Topics/Notes - (no topics) ## February 25, 2025 Attendees: Rick Ratzel, Erik Welch, Ralph Liu, Anthony Mahanna ### Topics/Notes - First meeting at the new time: Tuesdays at 10:30 Central - Potential topics (for now or next time): - PRs to review - Tech debt and how to best work on reducing it - Upcoming conferences - Conferences: - Pyconf Hyderabad 2025: https://github.com/Schefflera-Arboricola/pyconf_hyderabad_2025 - PyData London - Erik, Aaron, Mridul planning on a talk - SciPy - NVIDIA will be submitting talks (Erik, Ralph, Rick) - Erik: dispatching, how to work on backends - Ralph, Rick: nx-cugraph use cases - Data Science Salon, NYC - https://www.datascience.salon/newyork/ - ArangoDB working on updating nx-arangodb to take advantage of new dispatchable Graph functions - add/remove nodes, etc. - current implementation that uses dictionary factories results in on API call per update - installing backend(nx-parallel) after importing networkx --> does not update config (figured while creating demo for Pyconf Hyderabad) - reloading configs - functions like: `remove_backend`(removing it from the configs and ep) - helpful if setting configs for a backend might slow down the importing of networkx and the user doesn't even use that backend in their code, `update_backends`(or `reload_config`) - can we simplify installing backends for users inside(or via) networkx? --> like storing(and then later running) the install instructions in the `networkx.backend_info` ep? but the backend should be already installed to load the ep! - something like `nx.install_backend("backend_name")` - Any new or interesting use cases for backends/dispatching? - integrations with LangChain - kuzudb integration - CookieCutter backend (similar to Aditi's J4F) is something NX core devs have been asking for - Aditi suggested this could this be a good GSOC project(+ dispatching tutorial nb or gallery eg - for users), and that she, Dan, others could mentor. - [ToDo] Aditi mentioned she'd add this to the list of GSOC projects. - Any updates needed to NX 3.5? - https://github.com/networkx/networkx/pull/7768 - Can we coordinate with Google Colab to have them update to 3.5 soon after it's released? - https://github.com/networkx/networkx/pull/7760 - Notes on using nx-arangodb ``` docker run --name arango -p 8529:8529 -e ARANGO_ROOT_PASSWORD=test arangodb/arangodb:3.12.4 http://localhost:8529 Username: root password: test Alternative: https://github.com/arangodb/adb-cloud-connector#readme Notebook Example: https://colab.research.google.com/github/arangodb/nx-arangodb/blob/main/doc/nx_arangodb.ipynb ``` ## March 10, 2025 Attendees: Rick Ratzel, Ralph Liu ### Topics/Notes - No topics, only Rick & Ralph showed up ## April 1, 2025 Attendees: Erik Welch, Rick Ratzel, Dan Schult ### Topics/Notes - This is the first meeting using the new monthly meeting schedule. - Dan kicked out "Warren's AI Notetaker" from the meeting and we had some discussion about it. - Documentation update Q&A: https://github.com/networkx/networkx/pull/7884 - Any needs for the 3.5 release? - Avoid repeated cache conversion failures [#7768](https://github.com/networkx/networkx/pull/7768) - Dispatch classes such as `nx.Graph(backend=...)` [#7760](https://github.com/networkx/networkx/pull/7760)? - See: https://github.com/rapidsai/nx-cugraph/pull/92 - maybe not for 3.5 - Add `_dispatchable._get_convert_kwargs` method for more composability [#7602](https://github.com/networkx/networkx/pull/7602)? - https://en.wikipedia.org/wiki/Worse_is_better ## May 6, 2025 Attendees: Rick Ratzel, Erik Welch, Anthony Mahanna, Aditi Juneja ### Topics/Notes - Dispatching Graph ctors (continued from last week's community call) - https://github.com/networkx/networkx/pull/7760 - https://github.com/rapidsai/nx-cugraph/pull/92 - [Aditi] Are there any concerns about this from the community call? - [Erik] Ross had some concerns about if it's necessary ## June 3, 2025 Attendees: Rick Ratzel, Akshita Sure - Akshita Sure is working on nx-parallel, adding new algos to it for GSOC - Adding new embarassingly parallel algos first, then exploring non-embarassingly parallel algos - Initially looking at harmonic centrality, closeness centrality, triangle count - Attending the meeting to listen in on topics. Since there were only 2 attendees, the discussion became a basic overview of dispatching. However, poor connection quality made it hard for the attendees to understand each other. - Akshita will submit issues with questions as they come up. Ideally these are interpreted as requests for doc updates. ## July 1, 2025 Attendees: Rick Ratzel - Rick waited for attendees for 15 minutes but nobody else attended. ## August 5, 2025 Attendees: Rick Ratzel (late), Ralph Liu (late) - Rick and Ralph showed up 15 minutes late, nobody else was in attandance at that time. ## September 2, 2025 Attendees: Rick Ratzel Erik Welch also showed up (at a different time?), and nobody was there. The calendar may be behaving oddly. ## October 7, 2025 Attendees: Erik Welch, Rick Ratzel - Dispatching graph classes: Rick asked what backends need to do to take advantage of this. Erik mentioned backends just need to define a function (or method) named `graph__new__` - Request from nx-neptune team (from a prior meeting, approx 2 weeks ago): take a look at the latest version of their docs. ## November 4, 2025 Attendees: Rick Ratzel - Rick waited for attendees for 15 minutes but nobody else attended. ## December 2, 2025 Attendees: Anthony Mahanna, Rick Ratzel - Rick & Anthony caught up. Anthony shared some of the latest relevant projects Arango has been involved with, specifically a txt2kg workflow. - Anthony mentioned being excited to see nx-neptune released and wanted to take a look. - Rick & Anthony both had meetings starting and had to leave early. ## February 2, 2026 Attendees: Erik Welch, Rick Ratzel - https://github.com/rapidsai/nx-cugraph/pull/92 - Please try to add agenda items to the meeting notes before the meeting - Time to submit the annual notes to networkx archive repo