[PR #20667] [CLOSED] Closes #20679 - Duplicate all GraphQL hierarchy objects to separate V1 and V2 namespaces #16004

Closed
opened 2025-12-30 00:25:16 +01:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/netbox-community/netbox/pull/20667
Author: @bctiemann
Created: 10/24/2025
Status: Closed

Base: featureHead: 19338-graphql-in_list


📝 Commits (7)

  • 5fdbc0f Clone all GraphQL objects to V1 versions
  • 8215666 Merge branch 'feature' into 19338-graphql-in_list
  • b8fea8c Merge feature
  • 1d6d154 Set GRAPHQL_DEFAULT_VERSION = 2 in testing environment
  • b62f735 Integrate Owner and JournalEntries fields
  • a00b4cd Incorporate Owner fields/types into V1 classes
  • 0100ab5 Add a test to validate versioned GraphQL types

📊 Changes

50 files changed (+6577 additions, -10 deletions)

View changed files

netbox/circuits/graphql/filter_mixins_v1.py (+19 -0)
netbox/circuits/graphql/filters_v1.py (+228 -0)
netbox/circuits/graphql/schema_v1.py (+42 -0)
netbox/circuits/graphql/types_v1.py (+191 -0)
netbox/core/graphql/filter_mixins_v1.py (+36 -0)
netbox/core/graphql/filters_v1.py (+89 -0)
netbox/core/graphql/mixins_v1.py (+35 -0)
netbox/core/graphql/schema_v1.py (+15 -0)
netbox/core/graphql/types_v1.py (+55 -0)
netbox/dcim/graphql/filter_mixins_v1.py (+155 -0)
netbox/dcim/graphql/filters_v1.py (+1020 -0)
netbox/dcim/graphql/gfk_mixins_v1.py (+137 -0)
netbox/dcim/graphql/mixins_v1.py (+43 -0)
netbox/dcim/graphql/schema_v1.py (+138 -0)
netbox/dcim/graphql/types_v1.py (+903 -0)
netbox/extras/graphql/filter_mixins_v1.py (+52 -0)
netbox/extras/graphql/filters_v1.py (+357 -0)
netbox/extras/graphql/mixins_v1.py (+62 -0)
netbox/extras/graphql/schema_v1.py (+60 -0)
netbox/extras/graphql/types_v1.py (+240 -0)

...and 30 more files

📄 Description

Closes: #20679

This has been tested such that the V1 and V2 configurations work as expected as per the GRAPHQL_DEFAULT_VERSION setting. A thorough review would be to look at all the field type definitions and ensure that I didn't miss any V1 suffixes or _v1 module paths in the strawberry.lazy statements.

Note that enums and lookups are not namespaced, though types and filter types are.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/netbox-community/netbox/pull/20667 **Author:** [@bctiemann](https://github.com/bctiemann) **Created:** 10/24/2025 **Status:** ❌ Closed **Base:** `feature` ← **Head:** `19338-graphql-in_list` --- ### 📝 Commits (7) - [`5fdbc0f`](https://github.com/netbox-community/netbox/commit/5fdbc0f9f5d7298f2a27384fb6b1483ad123a55c) Clone all GraphQL objects to V1 versions - [`8215666`](https://github.com/netbox-community/netbox/commit/82156660f755dec664c43ffc62ed887f00d4ec45) Merge branch 'feature' into 19338-graphql-in_list - [`b8fea8c`](https://github.com/netbox-community/netbox/commit/b8fea8c8df125dd19f960637130b463ea07a7f7d) Merge feature - [`1d6d154`](https://github.com/netbox-community/netbox/commit/1d6d154919eb1c6c1551e7a48b4dc09c17830317) Set GRAPHQL_DEFAULT_VERSION = 2 in testing environment - [`b62f735`](https://github.com/netbox-community/netbox/commit/b62f735f6063334b8ebf4d1ff12daf808244fca3) Integrate Owner and JournalEntries fields - [`a00b4cd`](https://github.com/netbox-community/netbox/commit/a00b4cd03caa5912a549e15dc48c137fc55b1b54) Incorporate Owner fields/types into V1 classes - [`0100ab5`](https://github.com/netbox-community/netbox/commit/0100ab5f7b7db4acdecbab6e1f7f01302463e170) Add a test to validate versioned GraphQL types ### 📊 Changes **50 files changed** (+6577 additions, -10 deletions) <details> <summary>View changed files</summary> ➕ `netbox/circuits/graphql/filter_mixins_v1.py` (+19 -0) ➕ `netbox/circuits/graphql/filters_v1.py` (+228 -0) ➕ `netbox/circuits/graphql/schema_v1.py` (+42 -0) ➕ `netbox/circuits/graphql/types_v1.py` (+191 -0) ➕ `netbox/core/graphql/filter_mixins_v1.py` (+36 -0) ➕ `netbox/core/graphql/filters_v1.py` (+89 -0) ➕ `netbox/core/graphql/mixins_v1.py` (+35 -0) ➕ `netbox/core/graphql/schema_v1.py` (+15 -0) ➕ `netbox/core/graphql/types_v1.py` (+55 -0) ➕ `netbox/dcim/graphql/filter_mixins_v1.py` (+155 -0) ➕ `netbox/dcim/graphql/filters_v1.py` (+1020 -0) ➕ `netbox/dcim/graphql/gfk_mixins_v1.py` (+137 -0) ➕ `netbox/dcim/graphql/mixins_v1.py` (+43 -0) ➕ `netbox/dcim/graphql/schema_v1.py` (+138 -0) ➕ `netbox/dcim/graphql/types_v1.py` (+903 -0) ➕ `netbox/extras/graphql/filter_mixins_v1.py` (+52 -0) ➕ `netbox/extras/graphql/filters_v1.py` (+357 -0) ➕ `netbox/extras/graphql/mixins_v1.py` (+62 -0) ➕ `netbox/extras/graphql/schema_v1.py` (+60 -0) ➕ `netbox/extras/graphql/types_v1.py` (+240 -0) _...and 30 more files_ </details> ### 📄 Description ## Closes: #20679 This has been tested such that the V1 and V2 configurations work as expected as per the `GRAPHQL_DEFAULT_VERSION` setting. A thorough review would be to look at all the field type definitions and ensure that I didn't miss any `V1` suffixes or `_v1` module paths in the `strawberry.lazy` statements. Note that enums and lookups are not namespaced, though types and filter types are. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2025-12-30 00:25:16 +01:00
adam closed this issue 2025-12-30 00:25:16 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#16004