Merge pull request #12366 from netbox-community/develop

Release v3.4.10
This commit is contained in:
Jeremy Stretch 2023-04-27 12:03:16 -04:00 committed by GitHub
commit 72767fb5b7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 23 additions and 9 deletions

View File

@ -14,7 +14,7 @@ body:
attributes: attributes:
label: NetBox version label: NetBox version
description: What version of NetBox are you currently running? description: What version of NetBox are you currently running?
placeholder: v3.4.9 placeholder: v3.4.10
validations: validations:
required: true required: true
- type: dropdown - type: dropdown

View File

@ -14,7 +14,7 @@ body:
attributes: attributes:
label: NetBox version label: NetBox version
description: What version of NetBox are you currently running? description: What version of NetBox are you currently running?
placeholder: v3.4.9 placeholder: v3.4.10
validations: validations:
required: true required: true
- type: dropdown - type: dropdown

View File

@ -1,5 +1,15 @@
# NetBox v3.4 # NetBox v3.4
## v3.4.10 (2023-04-27)
### Bug Fixes
* [#11607](https://github.com/netbox-community/netbox/issues/11607) - Fix custom object field assignments made via REST API for for cables
* [#12252](https://github.com/netbox-community/netbox/issues/12252) - Fix ordering of search results when sorting by object name
* [#12355](https://github.com/netbox-community/netbox/issues/12355) - Fix escaping of certain characters in URL when rendering custom links
---
## v3.4.9 (2023-04-26) ## v3.4.9 (2023-04-26)
### Enhancements ### Enhancements

View File

@ -425,7 +425,7 @@ class NestedInventoryItemRoleSerializer(WritableNestedSerializer):
# Cables # Cables
# #
class NestedCableSerializer(BaseModelSerializer): class NestedCableSerializer(WritableNestedSerializer):
url = serializers.HyperlinkedIdentityField(view_name='dcim-api:cable-detail') url = serializers.HyperlinkedIdentityField(view_name='dcim-api:cable-detail')
class Meta: class Meta:

View File

@ -279,7 +279,7 @@ class CustomLink(CloningMixin, ExportTemplatesMixin, WebhooksMixin, ChangeLogged
text = clean_html(text, allowed_schemes) text = clean_html(text, allowed_schemes)
# Sanitize link # Sanitize link
link = urllib.parse.quote_plus(link, safe='/:?&') link = urllib.parse.quote_plus(link, safe='/:?&=%+[]@#')
# Verify link scheme is allowed # Verify link scheme is allowed
result = urllib.parse.urlparse(link) result = urllib.parse.urlparse(link)

View File

@ -145,9 +145,12 @@ class CachedValueSearchBackend(SearchBackend):
) )
# Omit any results pertaining to an object the user does not have permission to view # Omit any results pertaining to an object the user does not have permission to view
return [ ret = []
r for r in results if r.object is not None for r in results:
] if r.object is not None:
r.name = str(r.object)
ret.append(r)
return ret
def cache(self, instances, indexer=None, remove_existing=True): def cache(self, instances, indexer=None, remove_existing=True):
content_type = None content_type = None

View File

@ -25,7 +25,7 @@ from netbox.constants import RQ_QUEUE_DEFAULT, RQ_QUEUE_HIGH, RQ_QUEUE_LOW
# Environment setup # Environment setup
# #
VERSION = '3.4.9' VERSION = '3.4.10'
# Hostname # Hostname
HOSTNAME = platform.node() HOSTNAME = platform.node()

View File

@ -204,7 +204,8 @@ class SearchTable(tables.Table):
order_by="object___meta__verbose_name", order_by="object___meta__verbose_name",
) )
object = tables.Column( object = tables.Column(
linkify=True linkify=True,
order_by=('name', )
) )
field = tables.Column() field = tables.Column()
value = tables.Column() value = tables.Column()