Access the IETF Data Tracker and RFC Index
Project description
ietfdata - Access the IETF Datatracker and related resources
This project contains Python 3 libraries to interact with, and access, the IETF datatracker, RFC index, and related resources.
Getting started
The project uses Pipenv for dependency management. To begin, run:
pipenv install --dev -e .
to create a Python virtual environment with appropriate packages install. Then, run:
pipenv shell
to start the virtual environment, within which you can run the scripts.
Once the virtual environment is started, running:
python3 tests/test_datatracker.py
will run the test suite for the datatracker module. Running:
python3 tests/test_rfcindex.py
Will test the rfcindex module.
Caching
The ietfdata library can use a MongoDB instance as a cache. Using a cache reduces the number of requests that are made directly to the Datatracker, improving performance, and reducing the impact on the IETF's infrastructure. While using a cache is optional when accessing the Datatracker, it is required when accessing the mail archive.
The hostname, port, username, and password for the MongoDB instance that is to
be used as the cache can be set when instantiated the DataTracker or
MailArchive objects. Alternatively, the following environment variables can be
set:
IETFDATA_CACHE_HOST(defaults tolocalhostwhen accessing the mail archive)IETFDATA_CACHE_PORT(defaults to27017)IETFDATA_CACHE_USER(optional)IETFDATA_CACHE_PORT(optional)
Release Process
- Edit CHANGELOG.md and ensure up-to-date
- Edit setup.py to ensure the correct version number is present
- Edit pyproject.toml to ensure the correct version number is present
- Edit ietfdata/datatracker.py to fix version number in DataTracker::ua
- Run
make testto run the test suite. If any tests fail, fix then restart the release process - Commit changes and push to GitHub
- Check that the GitHub Continuous Integration run succeeds, and fix any problems (this runs with a fresh cache, so can sometimes catch problems that aren't found by local tests).
- Run
python3 setup.py sdist bdist_wheelto prepare the package - Run
python3 -m twine upload dist/*to upload the package - Commit the packages files in
dist/*push to GitHub - Tag the release in GitHub
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ietfdata-0.8.3.tar.gz.
File metadata
- Download URL: ietfdata-0.8.3.tar.gz
- Upload date:
- Size: 101.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db5cf3c4e208cc88289129689f1e67fe5aa5d88fabf34a141925df77c48744f9
|
|
| MD5 |
4a5df5c1091571b6d7312b43dee43f58
|
|
| BLAKE2b-256 |
90c89a8a7eee27377b6249bf2fc83255409fc53096b1ae99ea378eb51bfebe58
|
File details
Details for the file ietfdata-0.8.3-py3-none-any.whl.
File metadata
- Download URL: ietfdata-0.8.3-py3-none-any.whl
- Upload date:
- Size: 138.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f376508829f88ab50d5690778bd3b2dd5eb8004eb400df2742b421ace0506d7f
|
|
| MD5 |
8dbb677405657f9872d62021e7a8ff44
|
|
| BLAKE2b-256 |
e5fb7da24caa3810506fc6bbec444c061b6f4814e8ad2849025f0d2178afa49c
|