Skip to content

Releases: Tribler/py-ipv8

IPv8 v2.14.2170 release

24 Oct 11:27
f6d55a2
Compare
Choose a tag to compare

Includes the first 2170 commits (+59 since v2.13) for IPv8, containing:

  • Added methods for task retrieval to TaskManager
  • Added ruff/mypy/unittest workflows
  • Added serialization of lists of ints and booleans
  • Added validation tests to GitHub Actions
  • Added workflow for generating code coverage reports
  • Fixed GitHub increment version not pushing to correct remote
  • Fixed bootstrap with infinite max_peers
  • Fixed coverage job failures
  • Fixed increment version deleting its current branch
  • Fixed indentation in coverage.yml
  • Fixed missing file key in ConfigBuilder
  • Fixed pending task error in test_unload_while_contacting_node
  • Fixed relaying to exits
  • Fixed run_all_tests for Mac
  • Removed IRMA identity format
  • Removed expired DNS entries from bootstrap list
  • Updated README.md workflow badge
  • Updated TunnelCommunity docs
  • Updated default dll import path to be '.'
  • Updated the Mock DHT provider to inherit from its intended superclass

IPv8 v2.13.2111 release

14 Feb 08:29
3ba7ccd
Compare
Choose a tag to compare

Includes the first 2111 commits (+108 since v2.12) for IPv8, containing:

  • Added IPv6 support to TunnelCommunity
  • Added Python 3.12 support
  • Added automatic libsodium.dll downloader for Windows unit tests
  • Added cryptography-based fallback when NaCL import fails
  • Added direction argument to encrypt_str/decrypto_str
  • Added dummy workflow file for extended validation tests
  • Added support for Futures to the TaskManager
  • Added validation action status checks
  • Added pip dependencies cache in validate runs
  • Fixed DHT storage not getting cleaned up
  • Fixed cache leaks in Network
  • Fixed empty sha on validate action status setting
  • Fixed issue with serializing nested payloads that use raw
  • Fixed missing dependency: typing-extensions
  • Fixed mock IPv6 address generation
  • Fixed peer addresses not being updated
  • Fixed possibly unclosed sockets for LAN discovery
  • Fixed spelling and grammar instance in index.rst
  • Fixed the GitHub validate action
  • Fixed tracker service super args
  • Fixed tunnel endpoints
  • Fixed typing issues
  • Fixed validate job not installing dependencies
  • Fixed validation action errors
  • Fixed wrong hypen location in GitHub validate PR action
  • Removed distutils_forwardport.py
  • Removed overwrite dataclass construction
  • Removed separate prefix argument from setup_tunnels
  • Updated Endpoint.close to be optionally async
  • Updated IPv8 exit node script to use RustEndpoint
  • Updated TunnelCommunity cell logic
  • Updated aiohttp version
  • Updated best practices code to fit CommunitySettings
  • Updated hidden services to stop removing data circuits
  • Updated the project age
  • Updated validate action to run the unit tests

IPv8 v2.12.2003 release

05 Oct 13:04
51d8342
Compare
Choose a tag to compare

Includes the first 2003 commits (+103 since v2.11) for IPv8, containing:

  • Added ruff configuration file
  • Added typed request cache add/get/pop
  • Fixed ReadTheDocs configuration build.os
  • Fixed Sphinx deprecations and dependency versions
  • Fixed TestBase hanging when event loop missing
  • Fixed crypto related issues in TunnelCommunity
  • Fixed doc validation not running as main
  • Fixed example lines in testbase_tutorial
  • Fixed line numbers in docs
  • Fixed ruff violations
  • Removed simulation code
  • Updated DiscoveryCommunity payloads to use ipv4 instead of 4SH
  • Updated DiscoveryStrategy to be a generic of its overlay
  • Updated IPv8 scripts to use asyncio.run
  • Updated LAN discovery to run on a different thread
  • Updated MockRestIPv8 to not use real socket
  • Updated TestIdentityEndpoint to not use real files
  • Updated test_load_key to not use a real db file
  • Updated bootstrappers to be less complex
  • Updated codebase with pyupgrade
  • Updated dht community to use DHTValue type
  • Updated mid to always be the hash of the public key
  • Updated overlay basics doc to use PeerObserver
  • Updated overlays to use a settings parameter
  • Updated readme test instructions
  • Updated the ruff rules to allow more args and ignore pandas violations

IPv8 v2.11.1899 release

10 Jul 08:59
066f932
Compare
Choose a tag to compare

Includes the first 1899 commits (+29 since v2.10) for IPv8, containing:

  • Added Network PeerObservers
  • Added test for JSON serialization of config
  • Fixed MyPy issues after upgrade
  • Fixed PeriodicSimilarity sampling from set
  • Fixed circuit retry log message
  • Fixed discovery cache creation
  • Fixed truncation in verbose test results
  • Fixed vp_compile not passing default values
  • Removed asynctest requirement for Python > 3.7
  • Updated IPv8 class to guard against get_peers()
  • Updated run_all_tests.py to handle segfaults
  • Updated LAN interface discovery
  • Updated Windows test runner script

IPv8 v2.10.1870 release

24 Jan 08:07
d51c79a
Compare
Choose a tag to compare

Includes the first 1870 commits (+18 since v2.9) for IPv8, containing:

  • Added Python 3.11 support
  • Added TestBase 'received by' assertion logic
  • Added advanced discovery docs
  • Added auto PR review
  • Fixed create_task in DiscreteLoop
  • Removed autoprreview.yml
  • Updated project age in README
  • Updated supported Python versions in setup.py

IPv8 v2.9.1852 release

24 Jun 09:50
5e169ea
Compare
Choose a tag to compare

🥳🎉 In celebration of the IPv8 repository's 5-year anniversary! 🥳🎉

Includes the first 1852 commits (+43 since v2.8) for IPv8, containing:

  • Added ConfigBuilder ephemeral key shortcut
  • Added UDP broadcast bootstrap timeout
  • Added documentation on third-party serialization (and nested payloads)
  • Fixed GitHub issue template labels
  • Fixed CommunityLauncher and test_loader super() usage
  • Fixed vp_compile decorator having wrong return type
  • Fixed anonymization utils using absolute import
  • Fixed bootstrap received addresses callback not checking for cancel
  • Fixed duplicate schema in tunnel REST endpoint
  • Fixed idna Lookup Error
  • Fixed shutdown of RequestCache in tests
  • Fixed test suite crash with 0.0.0.0 subnet mask
  • Updated error when community_id is missing
  • Updated exit data rules
  • Updated issue templates for new tags
  • Updated overlay tutorial to use dataclass payloads
  • Updated retry cache for circuits
  • Updated support for different coverage versions

IPv8 v2.8.1809 release

27 Oct 07:17
9f31b5b
Compare
Choose a tag to compare

Includes the first 1809 commits (+52 since v2.7) for IPv8, containing:

  • Added API documentation generation
  • Added Payload match support
  • Added ReadTheDocs config file
  • Added best practices documentation
  • Added bootstrapping documentation
  • Added dataclass Payload
  • Added option to configure IPv8 with raw private key material
  • Added script to publish standalone TaskManager
  • Added tasks tutorial
  • Added support for custom my_peer instead of key curve in MockIPv8
  • Fixed AddressTester using different LAN check
  • Fixed ReadTheDocs unrendered code-blocks
  • Fixed crashing unitialized endpoint on shutdown
  • Fixed dataclass typing
  • Fixed deprecated config not having fallbacks
  • Fixed missing token for TaskManager PyPi project
  • Fixed readthedocs links
  • Removed old database.py workarounds
  • Updated CONTRIBUTING to exempt tests from linked issues
  • Updated Endpoint initialization to use 'interfaces' configuration
  • Updated MockEndpoint behavior
  • Updated discovery docs directory

IPv8 v2.7.1757 release

25 Jun 13:53
527a039
Compare
Choose a tag to compare

Includes the first 1757 commits (+58 since v2.6) for IPv8, containing:

  • Added RequestCache.passthrough()
  • Added TestBase tutorial
  • Added UDP broadcast bootstrapper
  • Added basic simulation capabilities to IPv8
  • Added link latencies to the IPv8 simulator
  • Fixed CONTRIBUTING.md grammar
  • Fixed compatibility with Python 3.8
  • Fixed estimated WAN address being set to a LAN address
  • Fixed for getting exits from TunnelEndpoint
  • Fixed pytest compatibility
  • Fixed uninitialized EndpointListener._local_interfaces
  • Updated CreatePayloads to use a unique identifier while sending
  • Updated IRMA enroll script
  • Updated hidden services peer discovery
  • Updated hidden services to disallow IPv8 packets over end-to-end circuits
  • Updated prefix decoding before printing
  • Updated simulation tutorial with bootstrap server
  • Updated typing for Peer key

IPv8 v2.6.1699 release

24 Feb 07:22
27f5d87
Compare
Choose a tag to compare

Includes the first 1699 commits (+45 since v2.5) for IPv8, containing:

  • Added DiscoveryStrategies to OverlaysEndpoint
  • Added RequestCache documentation
  • Added TunnelSettings.from_dict classmethod
  • Added request cache documentation to TOC
  • Added tracker_reporter_plugin script to collect anonymized tracker statistics
  • Fixed DHTCommunityProvider serialization
  • Fixed UDPEndpoint.send when transport is None
  • Fixed awaiting exhaust_callbacks in TestBase
  • Fixed broken image in the peer discovery docs
  • Fixed issue with missing bootstrappers in PexCommunity
  • Fixed result signature for EZPackOverlay._ez_unpack_auth
  • Fixed scripts due to bootstrap refactoring
  • Updated Community bootstrapping to be modular
  • Updated the name of CommunityLauncher
  • Updated tracker script

IPv8 v2.5.1654 release

14 Dec 07:35
fb46f5e
Compare
Choose a tag to compare

Includes the first 1654 commits (+119 since v2.4) for IPv8, containing:

  • Added 'q' format to Serializer defaults
  • Added Community base class IPv6 support
  • Added CommunityLauncher decorators
  • Added Endpoint unit tests
  • Added IPv6 support to DHTCommunity
  • Added Network.snapshot support for all addresses
  • Added Sentry support to the exit node script
  • Added TestBase shortcuts
  • Added address packer to default Serializer
  • Added cache retrieval wrapper
  • Added coverage barplot script generation
  • Added deferred bootstrap DNS resolution
  • Added documentation examples validation script
  • Added fragile packet handling mode in TestBase
  • Added hiddenimports to CommunityLauncher
  • Added identity integration test isolation
  • Added identity integration test scripts
  • Added isolation endpoint tests
  • Added overlay and walk strategy loading from a function
  • Added static typing support
  • Added tests for the REST overlays endpoint
  • Added typing for VariablePayload
  • Added unload_overlay to mock IPv8
  • Fixed Bootstrap script resolving IPv6 tuples
  • Fixed RequestCache futures not being cancelled after shutdown
  • Fixed for introducing peers to outdated addresses
  • Fixed incorrect lan_introduction_address in the IntroductionResponse
  • Fixed new style punctures sent to old style peers
  • Fixed overzealous defensive programming in create_introduction_request
  • Fixed setting anonymization and statistics for overwritten endpoints
  • Fixed tracker peer for intro overwrite
  • Fixed tracker script not being general listener
  • Removed Trustchain (moved to AnyDex)
  • Removed UDPIPv6 from default endpoints
  • Removed generate_key script
  • Removed end-of-life tracker
  • Updated "too many peers" log level to DEBUG
  • Updated CreateRequestCache to use the payload identifier
  • Updated DHTCommunity serialization
  • Updated MockIPv8.unload naming to MockIPv8.stop
  • Updated Network class polish
  • Updated NumberCache.on_timeout to no longer be abstract
  • Updated TunnelCommunity payloads and crypto
  • Updated documentation by extracting examples into Python files