<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/networkx.git/doc/reference, branch main</title>
<subtitle>github.com: networkx/networkx.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/'/>
<entry>
<title>Fix typos (#6620)</title>
<updated>2023-04-04T16:45:17+00:00</updated>
<author>
<name>Harri Nieminen</name>
<email>moiman@posteo.net</email>
</author>
<published>2023-04-04T16:45:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=7297ae8a37dd3356b64d383cb0c55735a6364bcc'/>
<id>7297ae8a37dd3356b64d383cb0c55735a6364bcc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix module docstring format for ismags reference article. (#6611)</title>
<updated>2023-04-03T19:44:39+00:00</updated>
<author>
<name>Ross Barnowski</name>
<email>rossbar@berkeley.edu</email>
</author>
<published>2023-04-03T19:44:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=020eaf626d6252f71a75751f63c57cbcc3d55573'/>
<id>020eaf626d6252f71a75751f63c57cbcc3d55573</id>
<content type='text'>
Improperly formatted Notes/References sections was causing a sphinx
parsing error which led to a very poorly formatted html page.

Fixing the numpydoc formatting for the module docstring + minor
munging of the heading levels was sufficient to fix this.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Improperly formatted Notes/References sections was causing a sphinx
parsing error which led to a very poorly formatted html page.

Fixing the numpydoc formatting for the module docstring + minor
munging of the heading levels was sufficient to fix this.</pre>
</div>
</content>
</entry>
<entry>
<title>add simple cycle enumerator for undirected class (#6461)</title>
<updated>2023-03-28T20:18:28+00:00</updated>
<author>
<name>Kelly Boothby</name>
<email>boothby@dwavesys.com</email>
</author>
<published>2023-03-28T20:18:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=e49d8db79eef19294acedae7425e8022a97a4891'/>
<id>e49d8db79eef19294acedae7425e8022a97a4891</id>
<content type='text'>
* add simple cycle enumerator for undirected class

* Implemented Gupta &amp; Suzumura and refactored Johnson in a common form
and unified their call-site.  Now, users can enumerate simple cycles
of directed or undireced graphs, with bounded or unbounded length,
all from the same `simple_cycles` function.  I abandoned the stretch
goal of enumerating chordless cycles, as they are not gracefully
handled by the algorithms of Johnson nor Gupta &amp; Suzumura.

* updated tests for simple_cycles to include undirected graphs

* * fixed documentation issues, elaborated on algorithm details
* restricted to nontrivial components
* removed specialized DFS to pick edges from undirected components
    lemma: if G is a biconnected graph with at least 3 nodes and
    e is an edge in G, then e belongs to a cycle

* added tests for undirected and bounded cases for simple_cycles

* added handling for digons in multigraphs

* * Improved support for multigraphs
* Split chordless_cycles out from simple_cycles because the case
  analysis got so tricky
* Added enhanced cycle-testing framework to tests for simple_cycles
* Added tests for multigraphs
* Needs more documentation

* * Documented simple_cycles
* Caught incorrectly-handled case of parallel self-loops

* removed chordless option from simple_cycles

* typos/raises/leftovers in docs and error/corner tests

* add a quick example to chordless_cycles

* Add chordless_cycles to docs

---------

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Mridul Seth &lt;git@mriduls.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* add simple cycle enumerator for undirected class

* Implemented Gupta &amp; Suzumura and refactored Johnson in a common form
and unified their call-site.  Now, users can enumerate simple cycles
of directed or undireced graphs, with bounded or unbounded length,
all from the same `simple_cycles` function.  I abandoned the stretch
goal of enumerating chordless cycles, as they are not gracefully
handled by the algorithms of Johnson nor Gupta &amp; Suzumura.

* updated tests for simple_cycles to include undirected graphs

* * fixed documentation issues, elaborated on algorithm details
* restricted to nontrivial components
* removed specialized DFS to pick edges from undirected components
    lemma: if G is a biconnected graph with at least 3 nodes and
    e is an edge in G, then e belongs to a cycle

* added tests for undirected and bounded cases for simple_cycles

* added handling for digons in multigraphs

* * Improved support for multigraphs
* Split chordless_cycles out from simple_cycles because the case
  analysis got so tricky
* Added enhanced cycle-testing framework to tests for simple_cycles
* Added tests for multigraphs
* Needs more documentation

* * Documented simple_cycles
* Caught incorrectly-handled case of parallel self-loops

* removed chordless option from simple_cycles

* typos/raises/leftovers in docs and error/corner tests

* add a quick example to chordless_cycles

* Add chordless_cycles to docs

---------

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Mridul Seth &lt;git@mriduls.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Add examples clarifying ambiguity of nbunch (#6513)</title>
<updated>2023-03-17T23:08:00+00:00</updated>
<author>
<name>Navya Agarwal</name>
<email>82928853+navyagarwal@users.noreply.github.com</email>
</author>
<published>2023-03-17T23:08:00+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=dbd6a973f9c13c7799f0d08e14d90e5f3b696409'/>
<id>dbd6a973f9c13c7799f0d08e14d90e5f3b696409</id>
<content type='text'>
* Add example clarifying nbunch to the glossary entry

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Ross Barnowski &lt;rossbar@berkeley.edu&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add example clarifying nbunch to the glossary entry

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Ross Barnowski &lt;rossbar@berkeley.edu&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>DOC: list pred method for MultiDiGraphs (#6409)</title>
<updated>2023-02-03T16:01:58+00:00</updated>
<author>
<name>Mridul Seth</name>
<email>seth.mridul@gmail.com</email>
</author>
<published>2023-02-03T16:01:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=352a38710308067d655d4d0c980d1321475000d5'/>
<id>352a38710308067d655d4d0c980d1321475000d5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add generate / write "network text" (formerly graph_str) (#5602)</title>
<updated>2023-01-31T04:18:37+00:00</updated>
<author>
<name>Jon Crall</name>
<email>erotemic@gmail.com</email>
</author>
<published>2023-01-31T04:18:37+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=4027538e0a26939e13dfe91c413a2ad21aa9228c'/>
<id>4027538e0a26939e13dfe91c413a2ad21aa9228c</id>
<content type='text'>
* Add graph_str

Formatted

Fix bug in choosing the source

Fix test

* Fixed issue in choosing source verticies for directed graphs

* reasonable working state

* Fixed logic issues

Fix test, cleanup, formatting
more tests, better comments, fix parent labels
fix pypy issue
Fix format

* Fixes based on review

* Cleaned up test names

* Use open_file decor and remove graph_str

* Remove useage of forest_str from doctest

* Fix style

* style

* Update networkx/readwrite/text.py

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* Fixed half sentense

* Add max_depth

* moved comment position

* Describe max depth in algo description

* Allow with_labels to be specified as a str

* Update networkx/readwrite/text.py

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* Add network text autodoc stub

* Add removal note for forest_str

---------

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add graph_str

Formatted

Fix bug in choosing the source

Fix test

* Fixed issue in choosing source verticies for directed graphs

* reasonable working state

* Fixed logic issues

Fix test, cleanup, formatting
more tests, better comments, fix parent labels
fix pypy issue
Fix format

* Fixes based on review

* Cleaned up test names

* Use open_file decor and remove graph_str

* Remove useage of forest_str from doctest

* Fix style

* style

* Update networkx/readwrite/text.py

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* Fixed half sentense

* Add max_depth

* moved comment position

* Describe max depth in algo description

* Allow with_labels to be specified as a str

* Update networkx/readwrite/text.py

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* Add network text autodoc stub

* Add removal note for forest_str

---------

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>DOC: Minor formatting fixups to get rid of doc build warnings. (#6363)</title>
<updated>2023-01-13T20:45:23+00:00</updated>
<author>
<name>Ross Barnowski</name>
<email>rossbar@berkeley.edu</email>
</author>
<published>2023-01-13T20:45:23+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=150daea06aeb7acd88d09fdf946a6210e97476a8'/>
<id>150daea06aeb7acd88d09fdf946a6210e97476a8</id>
<content type='text'>
Minor formatting fixups to get rid of doc build warnings.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Minor formatting fixups to get rid of doc build warnings.</pre>
</div>
</content>
</entry>
<entry>
<title>Laplace centrality for issue 4973 (#5399)</title>
<updated>2023-01-09T19:14:34+00:00</updated>
<author>
<name>Gabor Berei</name>
<email>42115089+gaborberei@users.noreply.github.com</email>
</author>
<published>2023-01-09T19:14:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=498bdfa33dd2869c3aae2ca87ec97223fdc0a2db'/>
<id>498bdfa33dd2869c3aae2ca87ec97223fdc0a2db</id>
<content type='text'>
* first commit, start testing

* rename

* formatting with black

* formating example based on testing failure

* deleting example from docstring

* rewriting example based on eigenvector.py

* rewrite docstring for other supplementary functions

* formating with black

* deleting custom scipy function

* rewriting matrix manipulation

* rewriting nbunch iteration based on review

* rewriting dictionary update

* update directed_laplacian_matrix_args params

* rewriting docstring based on comments

* update docstring

* update docstring with Laplacian energy def

* update docstring

* bringing package imports into the function

* adding laplacian.py to needs_numpy and needs_scipy tests

* addig Laplacian centrality to centrality.rst

* formatting with black

* dictionary update fix

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beautify with black

* add ** to kwargs in function

* add test file for local testing

* black test file

* black

* replace nx.laplacian to direct import

* adding pytest importskip and formating with black

* adding laplacian centrality to the init file

* changing import from direct to nx.laplacian

* rewriting output for non-normalized option

* rewriting tests using functions instead of class structure

* mod with black

* formating

* formating

* directed and undirected laplace and eigen values correction

* black formating

* adding asfptype for sparse eig solver and format with black

* change from sparse solver to dense solver

* change back A_2 eigval solver

* format with black

* black

* change back to previous state

* change back to previous state

* new eigh func

* fix eighvals func

* adding laplacian matrix parameters

* change alpha to None

* change back alpha to 0.95

* adding nodeset and ful nodelist objects

* adding nodeset and relevant error message

* solving directed-undirected issue converting everything to sparse matrix

* change line ending

* untrack env files

* isort test file

* adding nodelist and noteset

* black

* change centrality calculation to nodeset instead of full nodelist

* added comment

* eigh_f func to one-liner

* move eigh value calculation outside if condition

* simplify row/column by advanced indexing

* simplify row/column by advanced indexing for set diag

* format with black

* wrap doc_string to 88 chars and reword optional keywords.

* handle nodelist and nodeset

* remove casting as a csr_matrix

* covert to dense since we have to for computing the spectrum anyway.

* minor: ease readability

* fix normalization

* add tests for normalized and weight kwargs

* fix black

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Gabor Berei &lt;bereig@starschema.net&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* first commit, start testing

* rename

* formatting with black

* formating example based on testing failure

* deleting example from docstring

* rewriting example based on eigenvector.py

* rewrite docstring for other supplementary functions

* formating with black

* deleting custom scipy function

* rewriting matrix manipulation

* rewriting nbunch iteration based on review

* rewriting dictionary update

* update directed_laplacian_matrix_args params

* rewriting docstring based on comments

* update docstring

* update docstring with Laplacian energy def

* update docstring

* bringing package imports into the function

* adding laplacian.py to needs_numpy and needs_scipy tests

* addig Laplacian centrality to centrality.rst

* formatting with black

* dictionary update fix

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beatify docstring

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;

* beautify with black

* add ** to kwargs in function

* add test file for local testing

* black test file

* black

* replace nx.laplacian to direct import

* adding pytest importskip and formating with black

* adding laplacian centrality to the init file

* changing import from direct to nx.laplacian

* rewriting output for non-normalized option

* rewriting tests using functions instead of class structure

* mod with black

* formating

* formating

* directed and undirected laplace and eigen values correction

* black formating

* adding asfptype for sparse eig solver and format with black

* change from sparse solver to dense solver

* change back A_2 eigval solver

* format with black

* black

* change back to previous state

* change back to previous state

* new eigh func

* fix eighvals func

* adding laplacian matrix parameters

* change alpha to None

* change back alpha to 0.95

* adding nodeset and ful nodelist objects

* adding nodeset and relevant error message

* solving directed-undirected issue converting everything to sparse matrix

* change line ending

* untrack env files

* isort test file

* adding nodelist and noteset

* black

* change centrality calculation to nodeset instead of full nodelist

* added comment

* eigh_f func to one-liner

* move eigh value calculation outside if condition

* simplify row/column by advanced indexing

* simplify row/column by advanced indexing for set diag

* format with black

* wrap doc_string to 88 chars and reword optional keywords.

* handle nodelist and nodeset

* remove casting as a csr_matrix

* covert to dense since we have to for computing the spectrum anyway.

* minor: ease readability

* fix normalization

* add tests for normalized and weight kwargs

* fix black

Co-authored-by: Dan Schult &lt;dschult@colgate.edu&gt;
Co-authored-by: Gabor Berei &lt;bereig@starschema.net&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Create a Tikz latex drawing feature for networkx (#6238)</title>
<updated>2023-01-04T17:30:14+00:00</updated>
<author>
<name>Dan Schult</name>
<email>dschult@colgate.edu</email>
</author>
<published>2023-01-04T17:30:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=59ed0cfdc5262219da5aa120a11c9df3d6fab879'/>
<id>59ed0cfdc5262219da5aa120a11c9df3d6fab879</id>
<content type='text'>
* Implemented conversion from networkx graph to latex graph.

* Removed latex cache files uploaded by error.

* Resolved placeholders file import issue.

* Removed dependency to numpy

* Updated test

* Wrapped test for numpy dependency

* Updated test name

* format changes to nx_latex.py and friends.

vertex -&gt; node,  vertices -&gt; nodes
PEP8 spacing and tabs
pytest function instead of class (class not needed here -- no imports)
Moved author info to CONTRIBUTORS.rst as our new standard
converted list comprehension done for side-effects to for-loop.
switch to f-strings from string-format calls
update setup.py to remove conflicts

* Remove numpy requirement for testing latex

Also pep8 formatting

* reorder imports in __init__

* Attempt to debug windows/appveyor adigraph error

* try again

* Remove types, run pre-commit

* blackify

* pyupgradify

* inline latex placeholders and expected_tex.

Check not multigraph.
Add example
Change variable name `file` to `latex_code`
inline if/else for __init__ setup

* Change tabs to spaces

* pull apart Adigraph to simplify interface

* remove class Adigraph completely in favor of functions

* replace default layout to be circular.

(matches adigraph and avoids using random seeds in tests

* fix old version of isort result

* update documentation and include with rst file. Update some tests

* make docs more complete, checked and add tests

* Cleanup extra file changes that aren't needed

* Add TikZ version of to_latex as default

* improve docs

* Make the networkx latex interface via TikZ and not adigraph

* fix rebase

* Apply suggestions from code review

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* comment out print statements in tests

* Turn off multigraph for latex

* Remove tests of `line width` and edge label placement

* add back line width style, fix placement of style on edges.

* Set default layout to have radius 10

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* fix docstring test

* Minor docstring formatting nits.

Co-authored-by: Luca Cappelletti &lt;cappelletti.luca94@gmail.com&gt;
Co-authored-by: Mridul Seth &lt;seth.mridul@gmail.com&gt;
Co-authored-by: Mridul Seth &lt;git@mriduls.com&gt;
Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;
Co-authored-by: Ross Barnowski &lt;rossbar@berkeley.edu&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Implemented conversion from networkx graph to latex graph.

* Removed latex cache files uploaded by error.

* Resolved placeholders file import issue.

* Removed dependency to numpy

* Updated test

* Wrapped test for numpy dependency

* Updated test name

* format changes to nx_latex.py and friends.

vertex -&gt; node,  vertices -&gt; nodes
PEP8 spacing and tabs
pytest function instead of class (class not needed here -- no imports)
Moved author info to CONTRIBUTORS.rst as our new standard
converted list comprehension done for side-effects to for-loop.
switch to f-strings from string-format calls
update setup.py to remove conflicts

* Remove numpy requirement for testing latex

Also pep8 formatting

* reorder imports in __init__

* Attempt to debug windows/appveyor adigraph error

* try again

* Remove types, run pre-commit

* blackify

* pyupgradify

* inline latex placeholders and expected_tex.

Check not multigraph.
Add example
Change variable name `file` to `latex_code`
inline if/else for __init__ setup

* Change tabs to spaces

* pull apart Adigraph to simplify interface

* remove class Adigraph completely in favor of functions

* replace default layout to be circular.

(matches adigraph and avoids using random seeds in tests

* fix old version of isort result

* update documentation and include with rst file. Update some tests

* make docs more complete, checked and add tests

* Cleanup extra file changes that aren't needed

* Add TikZ version of to_latex as default

* improve docs

* Make the networkx latex interface via TikZ and not adigraph

* fix rebase

* Apply suggestions from code review

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* comment out print statements in tests

* Turn off multigraph for latex

* Remove tests of `line width` and edge label placement

* add back line width style, fix placement of style on edges.

* Set default layout to have radius 10

Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;

* fix docstring test

* Minor docstring formatting nits.

Co-authored-by: Luca Cappelletti &lt;cappelletti.luca94@gmail.com&gt;
Co-authored-by: Mridul Seth &lt;seth.mridul@gmail.com&gt;
Co-authored-by: Mridul Seth &lt;git@mriduls.com&gt;
Co-authored-by: Mridul Seth &lt;mail@mriduls.com&gt;
Co-authored-by: Ross Barnowski &lt;rossbar@berkeley.edu&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>plugin based backend infrastructure to use multiple computation backends (#6000)</title>
<updated>2022-11-08T18:39:27+00:00</updated>
<author>
<name>Mridul Seth</name>
<email>seth.mridul@gmail.com</email>
</author>
<published>2022-11-08T18:39:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/networkx.git/commit/?id=0f91550007fd3a95261d858b1a6a623ef8bda38a'/>
<id>0f91550007fd3a95261d858b1a6a623ef8bda38a</id>
<content type='text'>
* Wrappers classes to dispatch to a backend

* Rework the backend dispatching

- Use __networkx_plugin__=name to find graph-like objects instead of
  subclassing
- Add PluginInfo to smooth over differences in importlib.metadata across
  python versions
- Add dispatch behavior override via environment variable to aid in
  testing plugins

* Dispatch more algorithms and improve auto-test capabilities

* Allow dispatcher decorator without a name

- Name is taken from the decorated function
- Raise error if backend doesn't implement a decorated function which is called
- Check for duplicate names for dispatching algorithms

* Make sphinx pick up backend docs

* make black happy

* Rename decorator to _dispatch as it's experimental

* A few more dispatched functions

* Make convert to and from methods for auto-testing

- Rename `convert` to `convert_from_nx`
- Add `convert_to_nx` function

These will allow backends to return native objects when dispatching,
but provide a mechanism to convert the result to the type expected
by NetworkX tests for the auto-test plugin mechanism.

* More dispatching

* Include name with `convert_**_nx` methods

* Remove known plugin names

This check is not needed, as any plugin can register itself in the entry points section.
The dispatching and auto-testing explicitly specify the plugin to use, so there is no
need to hardcode the options.
These were originally included for security, but any malicious actor would simply use one
of the valid names, so having a hardcoded list does not actually provide any meaningful
security.

* Add `dispatchname` to dispatchable functions

Co-authored-by: Jim Kitchen &lt;jim22k@gmail.com&gt;
Co-authored-by: Erik Welch &lt;erik.n.welch@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Wrappers classes to dispatch to a backend

* Rework the backend dispatching

- Use __networkx_plugin__=name to find graph-like objects instead of
  subclassing
- Add PluginInfo to smooth over differences in importlib.metadata across
  python versions
- Add dispatch behavior override via environment variable to aid in
  testing plugins

* Dispatch more algorithms and improve auto-test capabilities

* Allow dispatcher decorator without a name

- Name is taken from the decorated function
- Raise error if backend doesn't implement a decorated function which is called
- Check for duplicate names for dispatching algorithms

* Make sphinx pick up backend docs

* make black happy

* Rename decorator to _dispatch as it's experimental

* A few more dispatched functions

* Make convert to and from methods for auto-testing

- Rename `convert` to `convert_from_nx`
- Add `convert_to_nx` function

These will allow backends to return native objects when dispatching,
but provide a mechanism to convert the result to the type expected
by NetworkX tests for the auto-test plugin mechanism.

* More dispatching

* Include name with `convert_**_nx` methods

* Remove known plugin names

This check is not needed, as any plugin can register itself in the entry points section.
The dispatching and auto-testing explicitly specify the plugin to use, so there is no
need to hardcode the options.
These were originally included for security, but any malicious actor would simply use one
of the valid names, so having a hardcoded list does not actually provide any meaningful
security.

* Add `dispatchname` to dispatchable functions

Co-authored-by: Jim Kitchen &lt;jim22k@gmail.com&gt;
Co-authored-by: Erik Welch &lt;erik.n.welch@gmail.com&gt;</pre>
</div>
</content>
</entry>
</feed>
