Release Notes

The release notes list the GitHub issues and a summary of what has changed in PeeringDB software releases.

Each new release has a one week beta test period on the beta server before it goes live. The beta and new releases are announced on the PeeringDB Announce Mailing List and on Twitter, LinkedIn and Facebook.

This page was started in April 2020, and will only have information about PeeringDB releases starting from that date.

Release 2.22.0

Beta Announcement Date: 15 July, 2020
Release Date: 12 August, 2020

GitHub Issue Summary
#249 - Add the IX-F Member Export URL to the ixlan API endpoint There are two new fields in the ixlan section resp. the ixlan object, called ixf_ixp_member_list_url and ixf_ixp_member_list_url_visible. The first one contains the URL to the IX-F import file while the second governs the visibility of the URL. Values are the same as for the poc object, namely "Public", "Users" and "Private", defaulting to "Private" (i.e. or users who are members of the org).
#268 - Database: unique constraints This issue fixes internal DB behaviour.
#358 - Lock ASN once the record is created Once a network has been created, the field asn is made read-only. As the ASN is unique there is no reason to change it. Making the field read-only is to prevent unwanted side effects.
#431 - Null 'rencode' from facility Null out all values for legacy unused rencode field, and make it read only to prepare for removal in PDB v3 [#625] (
#600 - Visibility for "Allow IXP update" switch A new field is added to the API net object, called allow_ixp_update. Furthermore, a line is added in global stats in the footer with a count (called "Automated Networks") of the networks which have "Allow IXP Update" enabled.
#649 - Possible for 'ok' ixpfx to exist in 'pending' ixlan This issue fixes an internal bug.
#683 - Add net_count_ixf field to ix object A field is added to the API object ix, called net_count_ixf, which indicates the number of net objects the exchange has in their IX-F JSON if they provide one. Otherwise, the value is null.
#696 - Lock some objects from being deleted by the owner To protect operational data objects fac, ix, ixlan and org are prevented from being deleted as long as there are other objects related to it. First, these objects must be deleted before the object itself can be deleted. The attempt to delete such a protected object gives an error message and also opens a ticket with the PeeringDB support.
#697 - Creating, changing, and deleting a netixlan object We completely re-implemented the way a connection to an exchange is handled. This new procedure allows both for a safe heads up a network can give to their peers as well as a safe way for exchanges to get rid of stale entries. Moreover, it allows networks to easily acknowledge new entries at exchanges which use the IX-F importer feature. See also the webinar for detailed information on this new procedure.

Release 2.21.0

Beta Announcement Date: 24 June, 2020
Release Date: 1 July, 2020

GitHub Issue Summary
#72 - Enable sort and reverse sort of IP column in IX display Sort and reverse sort of IP column in IX display are added. Sort of the IP addresses in the expected natural order. The IPv4 address is the primary sort key. The IPv6 address is the secondary key.
#121 - missing delete button for organisations New feature. An admin user is able to delete an org if it has no live objects under it.
#290 - Offer 2FA 2FA is offered now. The implementation includes
  • optional 2FA using TOTP is offered
  • there is a knob in the user profile to enable and set it up
  • email recovery is added using the verified user email address
  • an icon is added in the org admin section to denote to org admins if users have 2FA enabled
#352 - Mark IXP peering LAN as bogon Allow IXP to tag their LAN prefixes as bogons. In general, LAN prefixes should not be visible in the DFZ. If it should be visible, IXPs are able to debogonise them
#356 - Sorting by clicking table headers should use local-compare Bugfix. Sorting now honours locale-sorting
#519 - Make spelling of traffic levels consistent This is a bug fix and a minor improvement. Spelling is made consistent and traffic levels up to 100+Tbps are added.
#526 - Show "Last Updated" fields on fac, ix, org records A "Last Updated" field is visible now for fac, ix, and org objects
#537 - Posting onto social media doesn't select a good preview image Add opengraph image for page preview.
#566 - Should deleted personal data be accessable through the API? If a poc object is deleted it is made immediately non-gettable via the API, too. In case the corresponding net object was deleted unintentionally the object is still kept in the DB. After 30 days it will be hard-deleted.
#569 - Don't return any POC data with status=deleted POC objects do have a visibility scope. If a POC record is deleted it should not be able to retrieve it at all, even if visibility had been set to "public" before. The data will still be kept internally for 30 days for rollback if the deletion happened unintentionally. After 30 days the record will be hard-deleted.
#580 - Add a clear error message, when user tries to re-add a previously deleted facility Bug fix for an unclear behaviour. If a connection from a network to a facility was deleted the user was unable to re-add this connection by themselves and an unclear error message was given. Now, the user is able to re-add the connection.
#618 - Support alternative direction of writing, e.g. Arabic For right-to-left written languages, the entire layout of the PeeringDB website has to be flipped around.
#644 - Undeleting an ixlan with an emtpy IPv4 XOR IPv6 field throws a silly error Bugfix for the Admin Committee UI. An empty field was considered to be a legit non-null value and the system hence enforced uniqueness
#650 - Add pointer from API docs to tutorial A URL is added from the API documentation website to the PeeringDB tutorials
#654 - Add pointer from API docs to tutorial Bugfix for the Admin Committee UI.
#663 - change default encoding of API calls to 'utf-8' The output of API calls will change from content-type: application/json; charset=iso-8859-1 to content-type: application/json; charset=utf-8
#664 - Selection should only present undeleted objects Admin Committee only related. Only non-deleted should be presented for selection
#666 - Selection should only present undeleted objects When changing owner of an ix admin GUI borks because of "Ixlan for exchange already exists"
#669 - Add help text to "Add {Facility, Network, Exchange} tab Added a better help text to make crystal clear that adding a Facility, Network, or Exchange means that you are owning this object.
#679 - Add read-only Superuser Provide PC members with a read-only access to the Admin UI.
#712 - User is unable to update their net record Bug fix. Missing pointer to where the non-compliant value is

Release 2.20.2

Beta Announcement Date: N/A
Release Date: 23 April, 2020

GitHub Issue Summary
#707 - Make source not required for IRR records Making source not required for IRR records. This requirement was an oversight during implementation of [#151 - Validation of IRR Records] ( that was released with 2.20.0 - see below. Product Committee revisited the issue after 2.20.0 and reports of concern from community and decided to retract the requirement in an emergency release

Release 2.20.1

Beta Announcement Date: N/A
Release Date: 21 April, 2020

GitHub Issue Summary
#702 - Requests from peeringdb-py error 500 Emergency release for a config change

Release 2.20.0

Beta Announcement Date: 15 April, 2020
Release Date: 21 April, 2020

GitHub Issue Summary
#151 - Validation of IRR Records To make the IRR as-set/route-set field of more operational value, strict rules apply
  • the as-set/rs-set name has to conform to RFC 2622 (5.1 and 5.2)
  • the source may be specified by AS-SET@SOURCE or SOURCE::AS-SET (preferred)
  • valid sources are taken from the list of known IRRs
  • multiple values must be separated by either ,, , or , (i.e. comma, space or comma followed by space)
#189 - Improve explanatory and help text A clear help text is added for requesting affiliation to an organisation.
#251 - Limit number of concurrent affiliation requests per user In order to reduce organization affiliation request spamming, the number of pending organization requests has been limited to 5.
#295 Desk pro tickets -> DeskPRO tickets This is a bug fix and only affects the Admin UI.
#378 - Add contact information for Facilities (fac) the same way as for ix and net Contact information is added to Facilities and IXP.
#452 - Org/Network name of a sponsor should not link to /sponsors, only the sponsor badge should This is a bug fix. From now on only when clicking on the sponsor badge will direct to the sponsor page.
#462 - Route-server URL starting with ssh:// Add SSH as supported protocol.
#539 - Add attribute 'operational' to 'netixlan' This is a new feature and allows networks to give early notice to their peers that they soon will show up at an IXP. There is a new check box when adding an IXP connection. By default, a connection is considered operational and the box is ticked. When the connection is still in provisioning status, please untick the box. When viewing, the warning glyphicon is shown right to the network name. The correspondent API object netixlan is enhanced by a boolean field operational defaulting to true. This feature is in line with the Data Ownership Policy.
#548 - containerize server Internal software deployment system has been changed to use containers which reduces time spent by the ops team for deployments, allows for better scaling, and reduces the cost of entry for new developers to write and test their code.
#555 - Notes field translate button disappears This is a bug fix. The "Translate" button is there for a moment and then disappeared.
#557 - Show all languages on beta, even if translation is not ready for prod As soon as a new translation is starting it is available on the beta to help the translators and to encourage the community for input.
#598 - bug caused by the org affiliationship request without an asn This is a bug fix and is only relevant for the PeeringDB Admin Committee.
#609 - When creating an ix via the API also return ixlan_id and ixpfx_id When creating an IX record via API, the call will also return the implicitly created ixlan_id and ixpfx_id. This makes it simpler and reduces the number of calls that need to be made to the API.
#615 - Insert links into ID fields in DESKPRO AUTOASN tickets This only affects tickets generated for PeeringDB Admin Committee. A link to the object in the UI is added.
#626 - Update API docs Internal mechanisms for generating the API docs have been updated to current standards. This also allows for easier user contributions to the docs themselves.
#634 - Remove support for python2 Python 2.7 and 3.4 support is being removed from PeeringDB packages.
#636 - Don't create a new net object, when there only is an ASN block This is a bug fix and is only relevant for the PeeringDB Admin Committee.
#667 - Fix use autocomplete fields in the admincom controlpanel to speed up loading times This is a bug fix and is only relevant for the PeeringDB Admin Committee.