NDN client library with TLV wire format support in native Python
Clone or download
Permalink
Failed to load latest commit information.
.travis.d travis.d: Change cryptography to version 2.3. https://nvd.nist.gov/vu… Jul 31, 2018
doc conf.py: Change to 2.9beta1. Sep 17, 2018
examples examples: In test_get_async, change the demo host to memoria. Jun 19, 2018
include C bindings: Update the C code for ParametersSha256Digest. Refs #4701. Sep 8, 2018
m4 Initial checkin of C bindings code. Jan 8, 2016
python/pyndn Interest: In the constructor, let the Name constructor check the type… Oct 22, 2018
src C bindings: In pyndnmodule, support ParametersSha256Digest. Refs #4701. Sep 8, 2018
tests integration_tests: Added TestAccessManagerV2. Refs #4655. Oct 4, 2018
.gitignore .gitignore: Ignore /.pytest_cache . Apr 11, 2018
.pylint Added .pylint Sep 15, 2014
.travis.yml Add Travis-CI script to build and auto-deploy documentation Sep 15, 2017
CHANGELOG CHANGELOG: Added NAC v2. Refs $4655. Oct 4, 2018
COPYING Global: Change the license to LGPLv3. May 21, 2014
INSTALL.md INSTALL: Added Ubuntu 18.04. Apr 27, 2018
Makefile.am Makefile: Added files for CongestionMark. Apr 24, 2018
Makefile.in configure: Add support for ADD_CFLAGS, etc. Refs #4595. Sep 7, 2018
README.md README: Added a code contributions link. Jan 2, 2018
ar-lib Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
autogen.sh Initial checkin of C bindings code. Jan 8, 2016
compile Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
config.guess Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
config.sub Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
configure configure: Add support for ADD_CFLAGS, etc. Refs #4595. Sep 7, 2018
configure.ac configure: Add support for ADD_CFLAGS, etc. Refs #4595. Sep 7, 2018
depcomp Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
install-sh Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
ltmain.sh Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
missing Makefile: Rebuild using autotools from Homebrew. Apr 5, 2018
setup.py setup.py: Change to version 2.9b1. Sep 17, 2018

README.md

PyNDN: A Named Data Networking client library with TLV wire format support in native Python

PyNDN 2.0 is a new implementation of a Named Data Networking client library written in pure Python. It is wire format compatible with the NDN-TLV encoding.


See the file INSTALL.md for instructions to build and run from the full distribution.

If you are new to the NDN community of software generally, read the Contributor's Guide. Proposed code contributions should use a GitHub pull request.

If you only need to install the pyndn Python module, you can use easy_install. (If you don't have easy_install, see the instructions at https://pypi.python.org/pypi/setuptools#installation-instructions .) To avoid installation problems, make sure you have the latest version of pip.

For OS X, in a terminal, enter:

sudo easy_install pip
sudo CFLAGS=-Qunused-arguments pip install cryptography
sudo easy_install pyndn

For Ubuntu or Raspbian (Raspberry Pi), in a terminal, enter:

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip
sudo easy_install pyndn

For Windows Cygwin, in the Cygwin installer, select and install the "Devel" packages at the top level of the installer. In a terminal, enter:

easy_install pyndn

This installs the pyndn module on the Python search path so that applications which depend on it can use it, but does not install the sample tests or documentation files. If you need these other files, then use the full distribution and see the INSTALL.md file.


Please submit any bugs or issues to the PyNDN issue tracker: http://redmine.named-data.net/projects/pyndn/issues


The library currently requires a remote NDN daemon, and has been tested with NFD from the package https://github.com/named-data/NFD .

The API follows the NDN Common Client Library API also used by ndn-cpp (C++) and ndn-js (JavaScript). See http://named-data.net/doc/ndn-ccl-api .

Since PyNDN 2.0 conforms to the new Common Client Library API, applications written in the pre-2.0 version of PyNDN need to be upgraded.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/. A copy of the GNU Lesser General Public License is in the file COPYING.