**NDEx2 Python Client**
=========================
.. _NDEx: http://ndexbio.org
.. _NDEx REST Server API: http://home.ndexbio.org/using-the-ndex-server-api
.. image:: https://app.travis-ci.com/ndexbio/ndex2-client.svg?branch=master
:target: https://app.travis-ci.com/ndexbio/ndex2-client
.. image:: https://img.shields.io/pypi/v/ndex2.svg
:target: https://pypi.python.org/pypi/ndex2
.. image:: https://coveralls.io/repos/github/ndexbio/ndex2-client/badge.svg?branch=master
:target: https://coveralls.io/github/ndexbio/ndex2-client?branch=master
.. image:: https://readthedocs.org/projects/ndex2/badge/?version=latest
:target: https://ndex2.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
**Overview**
--------------
The NDEx2 Python Client provides methods to access NDEx_ via
the `NDEx REST Server API`_. As well as methods for common operations on
networks via the NiceCXNetwork class.
**Dependencies**
---------------------
* `six <https://pypi.org/project/six>`__
* `ijson <https://pypi.org/project/ijson>`__
* `requests <https://pypi.org/project/requests>`__
* `requests_toolbelt <https://pypi.org/project/requests_toolbelt>`__
* `networkx <https://pypi.org/project/networkx>`__
* `urllib3 <https://pypi.org/project/urllib3>`__
* `pandas <https://pypi.org/project/pandas>`__
* `enum34 <https://pypi.org/project/enum34>`__ (Python < 3.4)
* `numpy <https://pypi.org/project/numpy>`__
* `enum <https://pypi.org/project/enum>`__ (Python 2.6 & 2.7)
**Compatibility**
-----------------------
Python 3.5+
.. note::
Python < 3.5 may have some issues
**Installation**
--------------------------------------
The NDEx2 Python Client module can be installed from the Python Package
Index (PyPI) repository using PIP:
::
pip install ndex2
If you already have an older version of the ndex2 module installed, you
can use this command instead:
::
pip install --upgrade ndex2
**Resources**
--------------------------------------
* The NDEx2 Python Client `documentation <https://ndex2.readthedocs.io/en/latest/>`_ is available on Read the Docs.
* Please refer to our `Jupyter Notebook Tutorials <https://github.com/ndexbio/ndex-jupyter-notebooks>`_ GitHub repository for code examples to work with networks using the NDEx2 Python Client and NiceCX object class.
**License**
--------------------------------------
See `LICENSE.txt <https://github.com/ndexbio/ndex2-client/blob/master/LICENSE.txt>`_
=======
History
=======
3.9.0 (2024-06-18)
-------------------
* Enhancements
* Added ``set_name()``, ``remove_node_attribute()``, ``remove_edge_attribute``,
``get_opaque_aspect()``, and ``set_opaque_aspect()`` to ``CX2Network`` class.
* Bug fixes
* Fixed bug in type conversion. Datatypes in shorter form such as 'str', 'int' etc. are accepted.
3.8.0 (2024-02-07)
-------------------
* Enhancements
* Added ``add_network_attribute()``, ``add_node_attribute()``, ``add_edge_attribute()``, ``lookup_node_id_by_name()`` to ``CX2Network`` class.
* Added new parameters to ``get_cx2network`` in ``PandasDataFrameToCX2NetworkFactory`` to make it easier to convert Pandas Dataframe.
* Added ``get_nodelist_table()`` to ``CX2NetworkPandasDataFrameFactory`` class.
3.7.0 (2024-01-03)
-------------------
* Enhancements
* Added ``CX2NetworkXFactory`` under ``cx2.py`` module to convert
``CX2Network`` object to `NetworkX Graph <https://networkx.org>`__
* Added ``NetworkXToCX2NetworkFactory`` under ``cx2.py`` module to convert
`NetworkX Graph <https://networkx.org>`__ to ``CX2Network`` object
* Added ``PandasDataFrameToCX2NetworkFactory`` under ``cx2.py`` module to
convert `Pandas DataFrame <https://pandas.org>`__ to ``CX2Network`` object
* Added ``CX2NetworkPandasDataFrameFactory`` under ``cx2.py`` module to convert
``CX2Network`` object to `Pandas DataFrame <https://pandas.org>`__
3.6.0 (2023-11-14)
-------------------
* Enhancements
* Added ``CX2Network`` class under ``cx2.py`` module to represent networks `CX2 format <https://cytoscape.org/cx/cx2/specification/cytoscape-exchange-format-specification-(version-2)/>`__
* Added ``RawCX2NetworkFactory`` class under ``cx2.py`` to create ``CX2Network`` objects
* Added ``NoStyleCXToCX2NetworkFactory`` class under ``cx2.py`` to convert ``NiceCXNetwork`` to ``CX2Network``
* Bug fixes
* Fixed SyntaxWarnings `Issue #92 <https://github.com/ndexbio/ndex2-client/issues/92>`__
3.5.1 (2023-04-11)
-------------------
* Bug fixes
* Fixed bug where ``ndex2.create_nice_cx_from_networkx()`` fails with numpy version 1.24
`Issue #96 <https://github.com/ndexbio/ndex2-client/issues/96>`__
* Updated post and put calls in ``client.py`` to only pass credentials if they are
set. This change is to accommodate changes in upcoming version 3 of requests library
3.5.0 (2022-06-28)
-------------------
* Enhancements
* Added **skip_version_check** parameter to ``Ndex2()`` constructor to let caller
optionally bypass NDEx server call to see if **v2** endpoint is supported
* Added the following *CX2* methods to ``Ndex2()`` client:
``get_network_as_cx2_stream()``, ``get_network_aspect_as_cx2_stream()``,
``save_cx2_stream_as_new_network()``,
``save_new_cx2_network()``, and ``update_cx2_network()``
`Issue #87 <https://github.com/ndexbio/ndex2-client/issues/87>`__
* In ``Ndex2()`` client, methods that raise ``NDExError`` exceptions from calls
to NDEx server will now raise the more specific ``NDExUnauthorizedError``
subclass when the response from NDEx server is a 401 aka unauthorized.
* Added new parameters **dataconverter** and **include_attributes** to ``NiceCXNetwork.to_pandas_dataframe()``.
**dataconverter** parameter specifies data type conversion and **include_attributes** parameter lets
caller specify whether all node/edge attributes are added to the resulting DataFrame
* Added new parameter to ``ndex2.create_nice_cx_from_server()`` named **ndex_client**
that lets caller specify ``NDex2()`` client object to use.
* Passing ``None`` for the **server** positional parameter into ``ndex2.create_nice_cx_from_server(None, uuid='XXXX')`` will default to the production
NDEx server
* Bug fixes
* Fixed bug where creation of `NiceCXNetwork` from networkx via ``ndex2.create_nice_cx_from_networkx()``
incorrectly set the data type for boolean values to integer.
Issue `#83 <https://github.com/ndexbio/ndex2-client/issues/83>`__
* Fixed bug where converting `NiceCXNetwork` to networkx and back does not handle
name attribute correctly. `Issue #84 <https://github.com/ndexbio/ndex2-client/issues/84>`__
* Fixed bug where `@context` was lost if it was set as aspect in CX format and loaded
into NiceCXNetwork object.
`Issue #88 <https://github.com/ndexbio/ndex2-client/issues/88>`__
* Fixed bug where creation of `NiceCXNetwork` from networkx via ``ndex2.create_nice_cx_from_networkx()``
incorrectly set the data type for empty list to string.
Issue `#90 <https://github.com/ndexbio/ndex2-client/issues/90>`__
* Fixed bug where Y coordinates of nodes would be inverted when converting to/from
networkx from `NiceCXNetwork`. This was due to differences in coordinate systems
between networkx and `NiceCXNetwork`
* `DefaultNetworkXFactory` networkx converter (used by ``NiceCXNetwork.to_networkx(mode='default')``)
no longer converts edge attributes that are of type list into strings delimited by
commas
* Fixed bug where ``ndex2.create_nice_cx_from_server()`` failed on networks
with `provenanceHistory` aspect
* Removals
* Removed unused test methods from internal class `NiceCXBuilder`:
``load_aspect()``, ``stream_aspect()``, ``stream_aspect_raw()``
* Removed the following deprecated methods from `NiceCXNetwork`:
``add_node()``, ``add_edge()``, ``get_edge_attribute_object()``,
``get_node_attribute_objects()``, ``get_edge_attribute_objects()``,
``add_metadata()``, ``get_provenance()``, ``set_provenance()``,
``__merge_node_attributes()``, ``create_from_pandas()``,
``create_from_networkx()``, ``create_from_server()``, ``upload_new_network_stream()``, &
``create_from_cx()``
3.4.0 (2021-05-06)
-------------------
* Added **offset** and **limit** parameters to `Ndex2.get_network_ids_for_user()` to enable
retrieval of all networks for a user.
`Issue #78 <https://github.com/ndexbio/ndex2-client/issues/78>`__
* Switched `NiceCXNetwork.upload_to()` to named arguments and added **client** parameter.
`Issue #80 <https://github.com/ndexbio/ndex2-client/issues/80>`__
* Switched `NiceCXNetwork.update_to()` to named arguments and added **client** parameter.
`Issue #81 <https://github.com/ndexbio/ndex2-client/issues/81>`__
* Fixed documentation `NiceCXNetwork.update_to()` to correctly state method returns empty
string upon success.
`Issue #82 <https://github.com/ndexbio/ndex2-client/issues/82>`__
* Fixed bug in `NiceCXNetwork.set_opaque_aspect()` where passing `None` in the **aspect_elements**
parameter raised an error instead of removing the aspect
* Added `Ndex2.get_user_by_id()` method to get user information by NDEx user Id.
* Added `Ndex2.get_id_for_user()` method to get NDEx user Id by username.
* Added `Ndex2.get_networksets_for_user_id()` to get Network Sets for a given user Id.
`Issue #61 <https://github.com/ndexbio/ndex2-client/issues/61>`__
* Improved documentation by adding intersphinx to provide links to python documentation for
python objects.
3.3.3 (2021-04-22)
-------------------
* Fixed bug where `NiceCXNetwork.to_networkx()` fails with `ValueError` when installed
networkx version has X.Y.Z format (example: 2.5.1)
`Issue #79 <https://github.com/ndexbio/ndex2-client/issues/79>`_
3.3.2 (2021-04-13)
-------------------
* Fixed bug where `NiceCXNetwork.create_node()` and `.create_edge()` overwrote existing nodes/edges.
`Issue #60 <https://github.com/ndexbio/ndex2-client/issues/60>`_
* Fixed bug where `enum34` package would be unnecessarily installed on versions of Python 3.4 and newer.
`Issue #76 <https://github.com/ndexbio/ndex2-client/issues/76>`_
* Improved documentation for `Ndex2.set_network_properties()` method.
`Issue #77 <https://github.com/ndexbio/ndex2-client/issues/77>`_
3.3.1 (2019-09-23)
-------------------
* Added `MANIFEST.in` file to include `README.rst, HISTORY.rst, and LICENSE.txt` files as well as documentation and tests so `python setup.py install` will work properly on distribution of this client on PyPI. Thanks to Ben G. for catching this. `Issue #62 <https://github.com/ndexbio/ndex2-client/pull/62>`_
* Minor updates to `README.rst`
3.3.0 (2019-09-11)
------------------
* Fixed bug where if server version is not 2.0 exactly then `Ndex2()` object incorrectly falls back to version of 1.3 of REST calls
`Issue #40 <https://github.com/ndexbio/ndex2-client/issues/40>`_
* Fixed bug in `NiceCXNetwork.add_network_attribute()` method where type not properly reset when adding duplicate attribute
`Issue #50 <https://github.com/ndexbio/ndex2-client/issues/50>`_
* Added `delete_networksets()` method to Ndex2 client to allow deletion of networksets `Issue #59 <https://github.com/ndexbio/ndex2-client/issues/59>`_
3.2.0 (2019-04-23)
------------------
* Verify consistent conversion of CX for networkx 1.11 and 2.0+
`Issue #30 <https://github.com/ndexbio/ndex2-client/issues/30>`_
* `NiceCXNetwork.get_nodes()`, `NiceCXNetwork.get_edges()`, `NiceCXNetwork.get_metadata()` needs to make correct iterator call in Python 2
`Issue #44 <https://github.com/ndexbio/ndex2-client/issues/44>`_
* Add `NiceCXNetwork.get_network_attribute_names()` function enhancement
`Issue #45 <https://github.com/ndexbio/ndex2-client/issues/45>`_
* `NiceCXNetwork.create_edge()` fails to correctly create edge when node dict passed in
`Issue #46 <https://github.com/ndexbio/ndex2-client/issues/46>`_
3.1.0a1 (2019-03-20)
--------------------
* Add method to ndex2 python client to apply style from one NiceCXNetwork
to another NiceCXNetwork
`Issue #43 <https://github.com/ndexbio/ndex2-client/issues/43>`_
3.0.0a1 (2019-02-11)
--------------------
* In NiceCXNetwork class ability to add to User-Agent for calls to NDEx service
`Issue #36 <https://github.com/ndexbio/ndex2-client/issues/36>`_
* Methods in `ndex2/client.py` should raise an NDExError for invalid credentials
`Issue #39 <https://github.com/ndexbio/ndex2-client/issues/39>`_
* Add timeout flag to all web request calls
`Issue #33 <https://github.com/ndexbio/ndex2-client/issues/33>`_
* Update `User-Agent` to reflect actual version of software
`Issue #35 <https://github.com/ndexbio/ndex2-client/issues/35>`_
* `NiceCXNetwork.set_node_attribute()` incorrectly handles duplicate attributes
`Issue #41 <https://github.com/ndexbio/ndex2-client/issues/41>`_
* `NiceCXNetwork.set_node_attribute()` fails if node object passed to it
`Issue #42 <https://github.com/ndexbio/ndex2-client/issues/42>`_
* Passing None to user_agent parameterin `Ndex2()` constructor raises TypeError
`Issue #34 <https://github.com/ndexbio/ndex2-client/issues/34>`_
* `Ndex2()` constructor does not properly handle invalid json from server
`Issue #28 <https://github.com/ndexbio/ndex2-client/issues/28>`_
* Eliminate circular import between ndex2 and ndex2cx/nice_cx_builder.py
`Issue #31 <https://github.com/ndexbio/ndex2-client/issues/31>`_
* Replace print statements with logging calls in `ndex2/client.py`
`Issue #32 <https://github.com/ndexbio/ndex2-client/issues/32>`_
2.0.1 (2019-01-03)
------------------
* Fixed bug where logs directory is created within
the package installation directory.
`Issue #26 <https://github.com/ndexbio/ndex2-client/issues/26>`_
Raw data
{
"_id": null,
"home_page": "https://github.com/ndexbio/ndex2-client",
"name": "ndex2",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "network analysis biology",
"author": "The NDEx Project",
"author_email": "contact@ndexbio.org",
"download_url": "https://files.pythonhosted.org/packages/1d/bd/63d2d45d02d01d1bfebeca32eb6dcde201984f273aa50cb79250976b5f65/ndex2-3.9.0.tar.gz",
"platform": null,
"description": "**NDEx2 Python Client**\n=========================\n\n.. _NDEx: http://ndexbio.org\n.. _NDEx REST Server API: http://home.ndexbio.org/using-the-ndex-server-api\n\n.. image:: https://app.travis-ci.com/ndexbio/ndex2-client.svg?branch=master\n :target: https://app.travis-ci.com/ndexbio/ndex2-client\n\n.. image:: https://img.shields.io/pypi/v/ndex2.svg\n :target: https://pypi.python.org/pypi/ndex2\n\n.. image:: https://coveralls.io/repos/github/ndexbio/ndex2-client/badge.svg?branch=master\n :target: https://coveralls.io/github/ndexbio/ndex2-client?branch=master\n\n.. image:: https://readthedocs.org/projects/ndex2/badge/?version=latest\n :target: https://ndex2.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n\n**Overview**\n--------------\n\nThe NDEx2 Python Client provides methods to access NDEx_ via\nthe `NDEx REST Server API`_. As well as methods for common operations on\nnetworks via the NiceCXNetwork class.\n\n**Dependencies**\n---------------------\n\n* `six <https://pypi.org/project/six>`__\n* `ijson <https://pypi.org/project/ijson>`__\n* `requests <https://pypi.org/project/requests>`__\n* `requests_toolbelt <https://pypi.org/project/requests_toolbelt>`__\n* `networkx <https://pypi.org/project/networkx>`__\n* `urllib3 <https://pypi.org/project/urllib3>`__\n* `pandas <https://pypi.org/project/pandas>`__\n* `enum34 <https://pypi.org/project/enum34>`__ (Python < 3.4)\n* `numpy <https://pypi.org/project/numpy>`__\n* `enum <https://pypi.org/project/enum>`__ (Python 2.6 & 2.7)\n\n**Compatibility**\n-----------------------\n\nPython 3.5+\n\n.. note::\n\n Python < 3.5 may have some issues\n\n**Installation**\n--------------------------------------\n\nThe NDEx2 Python Client module can be installed from the Python Package\nIndex (PyPI) repository using PIP:\n\n::\n\n pip install ndex2\n\nIf you already have an older version of the ndex2 module installed, you\ncan use this command instead:\n\n::\n\n pip install --upgrade ndex2\n\n\n**Resources**\n--------------------------------------\n\n* The NDEx2 Python Client `documentation <https://ndex2.readthedocs.io/en/latest/>`_ is available on Read the Docs.\n* Please refer to our `Jupyter Notebook Tutorials <https://github.com/ndexbio/ndex-jupyter-notebooks>`_ GitHub repository for code examples to work with networks using the NDEx2 Python Client and NiceCX object class. \n\n\n**License**\n--------------------------------------\n\nSee `LICENSE.txt <https://github.com/ndexbio/ndex2-client/blob/master/LICENSE.txt>`_\n\n\n\n\n=======\nHistory\n=======\n\n3.9.0 (2024-06-18)\n-------------------\n\n* Enhancements\n * Added ``set_name()``, ``remove_node_attribute()``, ``remove_edge_attribute``,\n ``get_opaque_aspect()``, and ``set_opaque_aspect()`` to ``CX2Network`` class.\n\n* Bug fixes\n * Fixed bug in type conversion. Datatypes in shorter form such as 'str', 'int' etc. are accepted.\n\n\n3.8.0 (2024-02-07)\n-------------------\n\n* Enhancements\n * Added ``add_network_attribute()``, ``add_node_attribute()``, ``add_edge_attribute()``, ``lookup_node_id_by_name()`` to ``CX2Network`` class.\n * Added new parameters to ``get_cx2network`` in ``PandasDataFrameToCX2NetworkFactory`` to make it easier to convert Pandas Dataframe.\n * Added ``get_nodelist_table()`` to ``CX2NetworkPandasDataFrameFactory`` class.\n\n3.7.0 (2024-01-03)\n-------------------\n\n* Enhancements\n * Added ``CX2NetworkXFactory`` under ``cx2.py`` module to convert\n ``CX2Network`` object to `NetworkX Graph <https://networkx.org>`__\n * Added ``NetworkXToCX2NetworkFactory`` under ``cx2.py`` module to convert\n `NetworkX Graph <https://networkx.org>`__ to ``CX2Network`` object\n * Added ``PandasDataFrameToCX2NetworkFactory`` under ``cx2.py`` module to\n convert `Pandas DataFrame <https://pandas.org>`__ to ``CX2Network`` object\n * Added ``CX2NetworkPandasDataFrameFactory`` under ``cx2.py`` module to convert\n ``CX2Network`` object to `Pandas DataFrame <https://pandas.org>`__\n\n\n\n3.6.0 (2023-11-14)\n-------------------\n\n* Enhancements\n * Added ``CX2Network`` class under ``cx2.py`` module to represent networks `CX2 format <https://cytoscape.org/cx/cx2/specification/cytoscape-exchange-format-specification-(version-2)/>`__\n * Added ``RawCX2NetworkFactory`` class under ``cx2.py`` to create ``CX2Network`` objects\n * Added ``NoStyleCXToCX2NetworkFactory`` class under ``cx2.py`` to convert ``NiceCXNetwork`` to ``CX2Network``\n\n* Bug fixes\n * Fixed SyntaxWarnings `Issue #92 <https://github.com/ndexbio/ndex2-client/issues/92>`__\n\n3.5.1 (2023-04-11)\n-------------------\n\n* Bug fixes\n * Fixed bug where ``ndex2.create_nice_cx_from_networkx()`` fails with numpy version 1.24\n `Issue #96 <https://github.com/ndexbio/ndex2-client/issues/96>`__\n * Updated post and put calls in ``client.py`` to only pass credentials if they are\n set. This change is to accommodate changes in upcoming version 3 of requests library\n\n3.5.0 (2022-06-28)\n-------------------\n\n* Enhancements\n * Added **skip_version_check** parameter to ``Ndex2()`` constructor to let caller\n optionally bypass NDEx server call to see if **v2** endpoint is supported\n\n * Added the following *CX2* methods to ``Ndex2()`` client:\n ``get_network_as_cx2_stream()``, ``get_network_aspect_as_cx2_stream()``,\n ``save_cx2_stream_as_new_network()``,\n ``save_new_cx2_network()``, and ``update_cx2_network()``\n `Issue #87 <https://github.com/ndexbio/ndex2-client/issues/87>`__\n\n * In ``Ndex2()`` client, methods that raise ``NDExError`` exceptions from calls\n to NDEx server will now raise the more specific ``NDExUnauthorizedError``\n subclass when the response from NDEx server is a 401 aka unauthorized.\n\n * Added new parameters **dataconverter** and **include_attributes** to ``NiceCXNetwork.to_pandas_dataframe()``.\n **dataconverter** parameter specifies data type conversion and **include_attributes** parameter lets\n caller specify whether all node/edge attributes are added to the resulting DataFrame\n\n * Added new parameter to ``ndex2.create_nice_cx_from_server()`` named **ndex_client**\n that lets caller specify ``NDex2()`` client object to use.\n\n * Passing ``None`` for the **server** positional parameter into ``ndex2.create_nice_cx_from_server(None, uuid='XXXX')`` will default to the production\n NDEx server\n\n* Bug fixes\n * Fixed bug where creation of `NiceCXNetwork` from networkx via ``ndex2.create_nice_cx_from_networkx()``\n incorrectly set the data type for boolean values to integer.\n Issue `#83 <https://github.com/ndexbio/ndex2-client/issues/83>`__\n\n * Fixed bug where converting `NiceCXNetwork` to networkx and back does not handle\n name attribute correctly. `Issue #84 <https://github.com/ndexbio/ndex2-client/issues/84>`__\n\n * Fixed bug where `@context` was lost if it was set as aspect in CX format and loaded\n into NiceCXNetwork object.\n `Issue #88 <https://github.com/ndexbio/ndex2-client/issues/88>`__\n\n * Fixed bug where creation of `NiceCXNetwork` from networkx via ``ndex2.create_nice_cx_from_networkx()``\n incorrectly set the data type for empty list to string.\n Issue `#90 <https://github.com/ndexbio/ndex2-client/issues/90>`__\n\n * Fixed bug where Y coordinates of nodes would be inverted when converting to/from\n networkx from `NiceCXNetwork`. This was due to differences in coordinate systems\n between networkx and `NiceCXNetwork`\n\n * `DefaultNetworkXFactory` networkx converter (used by ``NiceCXNetwork.to_networkx(mode='default')``)\n no longer converts edge attributes that are of type list into strings delimited by\n commas\n\n * Fixed bug where ``ndex2.create_nice_cx_from_server()`` failed on networks\n with `provenanceHistory` aspect\n\n* Removals\n * Removed unused test methods from internal class `NiceCXBuilder`:\n ``load_aspect()``, ``stream_aspect()``, ``stream_aspect_raw()``\n\n * Removed the following deprecated methods from `NiceCXNetwork`:\n ``add_node()``, ``add_edge()``, ``get_edge_attribute_object()``,\n ``get_node_attribute_objects()``, ``get_edge_attribute_objects()``,\n ``add_metadata()``, ``get_provenance()``, ``set_provenance()``,\n ``__merge_node_attributes()``, ``create_from_pandas()``,\n ``create_from_networkx()``, ``create_from_server()``, ``upload_new_network_stream()``, &\n ``create_from_cx()``\n\n\n3.4.0 (2021-05-06)\n-------------------\n\n* Added **offset** and **limit** parameters to `Ndex2.get_network_ids_for_user()` to enable\n retrieval of all networks for a user.\n `Issue #78 <https://github.com/ndexbio/ndex2-client/issues/78>`__\n\n* Switched `NiceCXNetwork.upload_to()` to named arguments and added **client** parameter.\n `Issue #80 <https://github.com/ndexbio/ndex2-client/issues/80>`__\n\n* Switched `NiceCXNetwork.update_to()` to named arguments and added **client** parameter.\n `Issue #81 <https://github.com/ndexbio/ndex2-client/issues/81>`__\n\n* Fixed documentation `NiceCXNetwork.update_to()` to correctly state method returns empty\n string upon success.\n `Issue #82 <https://github.com/ndexbio/ndex2-client/issues/82>`__\n\n* Fixed bug in `NiceCXNetwork.set_opaque_aspect()` where passing `None` in the **aspect_elements**\n parameter raised an error instead of removing the aspect\n\n* Added `Ndex2.get_user_by_id()` method to get user information by NDEx user Id.\n\n* Added `Ndex2.get_id_for_user()` method to get NDEx user Id by username.\n\n* Added `Ndex2.get_networksets_for_user_id()` to get Network Sets for a given user Id.\n `Issue #61 <https://github.com/ndexbio/ndex2-client/issues/61>`__\n\n* Improved documentation by adding intersphinx to provide links to python documentation for\n python objects.\n\n3.3.3 (2021-04-22)\n-------------------\n\n* Fixed bug where `NiceCXNetwork.to_networkx()` fails with `ValueError` when installed\n networkx version has X.Y.Z format (example: 2.5.1)\n `Issue #79 <https://github.com/ndexbio/ndex2-client/issues/79>`_\n\n3.3.2 (2021-04-13)\n-------------------\n\n* Fixed bug where `NiceCXNetwork.create_node()` and `.create_edge()` overwrote existing nodes/edges.\n `Issue #60 <https://github.com/ndexbio/ndex2-client/issues/60>`_\n\n* Fixed bug where `enum34` package would be unnecessarily installed on versions of Python 3.4 and newer.\n `Issue #76 <https://github.com/ndexbio/ndex2-client/issues/76>`_\n\n* Improved documentation for `Ndex2.set_network_properties()` method.\n `Issue #77 <https://github.com/ndexbio/ndex2-client/issues/77>`_\n\n3.3.1 (2019-09-23)\n-------------------\n\n* Added `MANIFEST.in` file to include `README.rst, HISTORY.rst, and LICENSE.txt` files as well as documentation and tests so `python setup.py install` will work properly on distribution of this client on PyPI. Thanks to Ben G. for catching this. `Issue #62 <https://github.com/ndexbio/ndex2-client/pull/62>`_\n\n* Minor updates to `README.rst`\n\n3.3.0 (2019-09-11)\n------------------\n\n* Fixed bug where if server version is not 2.0 exactly then `Ndex2()` object incorrectly falls back to version of 1.3 of REST calls\n `Issue #40 <https://github.com/ndexbio/ndex2-client/issues/40>`_\n\n* Fixed bug in `NiceCXNetwork.add_network_attribute()` method where type not properly reset when adding duplicate attribute\n `Issue #50 <https://github.com/ndexbio/ndex2-client/issues/50>`_\n\n* Added `delete_networksets()` method to Ndex2 client to allow deletion of networksets `Issue #59 <https://github.com/ndexbio/ndex2-client/issues/59>`_\n\n\n3.2.0 (2019-04-23)\n------------------\n\n* Verify consistent conversion of CX for networkx 1.11 and 2.0+\n `Issue #30 <https://github.com/ndexbio/ndex2-client/issues/30>`_\n\n* `NiceCXNetwork.get_nodes()`, `NiceCXNetwork.get_edges()`, `NiceCXNetwork.get_metadata()` needs to make correct iterator call in Python 2\n `Issue #44 <https://github.com/ndexbio/ndex2-client/issues/44>`_\n\n* Add `NiceCXNetwork.get_network_attribute_names()` function enhancement\n `Issue #45 <https://github.com/ndexbio/ndex2-client/issues/45>`_\n\n* `NiceCXNetwork.create_edge()` fails to correctly create edge when node dict passed in\n `Issue #46 <https://github.com/ndexbio/ndex2-client/issues/46>`_\n\n3.1.0a1 (2019-03-20)\n--------------------\n\n* Add method to ndex2 python client to apply style from one NiceCXNetwork \n to another NiceCXNetwork\n `Issue #43 <https://github.com/ndexbio/ndex2-client/issues/43>`_\n\n3.0.0a1 (2019-02-11)\n--------------------\n\n* In NiceCXNetwork class ability to add to User-Agent for calls to NDEx service\n `Issue #36 <https://github.com/ndexbio/ndex2-client/issues/36>`_\n\n* Methods in `ndex2/client.py` should raise an NDExError for invalid credentials\n `Issue #39 <https://github.com/ndexbio/ndex2-client/issues/39>`_\n\n* Add timeout flag to all web request calls\n `Issue #33 <https://github.com/ndexbio/ndex2-client/issues/33>`_\n\n* Update `User-Agent` to reflect actual version of software\n `Issue #35 <https://github.com/ndexbio/ndex2-client/issues/35>`_\n\n* `NiceCXNetwork.set_node_attribute()` incorrectly handles duplicate attributes\n `Issue #41 <https://github.com/ndexbio/ndex2-client/issues/41>`_\n\n* `NiceCXNetwork.set_node_attribute()` fails if node object passed to it\n `Issue #42 <https://github.com/ndexbio/ndex2-client/issues/42>`_\n\n* Passing None to user_agent parameterin `Ndex2()` constructor raises TypeError\n `Issue #34 <https://github.com/ndexbio/ndex2-client/issues/34>`_\n\n* `Ndex2()` constructor does not properly handle invalid json from server\n `Issue #28 <https://github.com/ndexbio/ndex2-client/issues/28>`_\n\n* Eliminate circular import between ndex2 and ndex2cx/nice_cx_builder.py\n `Issue #31 <https://github.com/ndexbio/ndex2-client/issues/31>`_\n\n* Replace print statements with logging calls in `ndex2/client.py`\n `Issue #32 <https://github.com/ndexbio/ndex2-client/issues/32>`_\n\n\n2.0.1 (2019-01-03)\n------------------\n\n* Fixed bug where logs directory is created within\n the package installation directory. \n `Issue #26 <https://github.com/ndexbio/ndex2-client/issues/26>`_\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "Nice CX Python includes a client and a data model.",
"version": "3.9.0",
"project_urls": {
"Homepage": "https://github.com/ndexbio/ndex2-client"
},
"split_keywords": [
"network",
"analysis",
"biology"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c5e7e653b302a18638b8dbcb7e4f2579596f82b3b57baef081f842849c4b5742",
"md5": "9d16c00637945dcbcbd54dd0984803c4",
"sha256": "168a6ed3209f2c9596752897fe535599b11f87305c10d55446bf8ffef4762283"
},
"downloads": -1,
"filename": "ndex2-3.9.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "9d16c00637945dcbcbd54dd0984803c4",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 76989,
"upload_time": "2024-06-18T23:01:29",
"upload_time_iso_8601": "2024-06-18T23:01:29.220923Z",
"url": "https://files.pythonhosted.org/packages/c5/e7/e653b302a18638b8dbcb7e4f2579596f82b3b57baef081f842849c4b5742/ndex2-3.9.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1dbd63d2d45d02d01d1bfebeca32eb6dcde201984f273aa50cb79250976b5f65",
"md5": "0ff66e45b88f6c84dc90c8b3b13868a2",
"sha256": "388b2f110b2eb1ba787298bc4210ca0cea821c462ec71a4ec4cb6eb0e1b74f70"
},
"downloads": -1,
"filename": "ndex2-3.9.0.tar.gz",
"has_sig": false,
"md5_digest": "0ff66e45b88f6c84dc90c8b3b13868a2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 230397,
"upload_time": "2024-06-18T23:01:36",
"upload_time_iso_8601": "2024-06-18T23:01:36.487143Z",
"url": "https://files.pythonhosted.org/packages/1d/bd/63d2d45d02d01d1bfebeca32eb6dcde201984f273aa50cb79250976b5f65/ndex2-3.9.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-18 23:01:36",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ndexbio",
"github_project": "ndex2-client",
"travis_ci": true,
"coveralls": true,
"github_actions": false,
"requirements": [],
"tox": true,
"lcname": "ndex2"
}