Procházet zdrojové kódy

Merge pull request #18267 from netbox-community/develop

Release v4.1.10
Jeremy Stretch před 1 rokem
rodič
revize
c6452b33d8

+ 1 - 1
.github/ISSUE_TEMPLATE/01-feature_request.yaml

@@ -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: v4.1.8
+      placeholder: v4.1.10
     validations:
     validations:
       required: true
       required: true
   - type: dropdown
   - type: dropdown

+ 1 - 1
.github/ISSUE_TEMPLATE/02-bug_report.yaml

@@ -39,7 +39,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: v4.1.8
+      placeholder: v4.1.10
     validations:
     validations:
       required: true
       required: true
   - type: dropdown
   - type: dropdown

+ 11 - 0
docs/release-notes/version-4.1.md

@@ -1,7 +1,18 @@
 # NetBox v4.1
 # NetBox v4.1
 
 
+## v4.1.10 (2024-12-23)
+
+### Bug Fixes
+
+* [#18260](https://github.com/netbox-community/netbox/issues/18260) - Fix object change logging
+
+---
+
 ## v4.1.9 (2024-12-17)
 ## v4.1.9 (2024-12-17)
 
 
+!!! danger "Do Not Use"
+    This release contains a regression which breaks change logging. Please use release v4.1.10 instead.
+
 ### Enhancements
 ### Enhancements
 
 
 * [#17215](https://github.com/netbox-community/netbox/issues/17215) - Change the highlighted color of disabled interfaces in interface lists
 * [#17215](https://github.com/netbox-community/netbox/issues/17215) - Change the highlighted color of disabled interfaces in interface lists

+ 1 - 0
netbox/core/apps.py

@@ -21,6 +21,7 @@ class CoreConfig(AppConfig):
         from core.api import schema  # noqa: F401
         from core.api import schema  # noqa: F401
         from netbox.models.features import register_models
         from netbox.models.features import register_models
         from . import data_backends, events, search  # noqa: F401
         from . import data_backends, events, search  # noqa: F401
+        from netbox import context_managers  # noqa: F401
 
 
         # Register models
         # Register models
         register_models(*self.get_models())
         register_models(*self.get_models())

+ 2 - 2
netbox/release.yaml

@@ -1,3 +1,3 @@
-version: "4.1.9"
+version: "4.1.10"
 edition: "Community"
 edition: "Community"
-published: "2024-12-17"
+published: "2024-12-23"

binární
netbox/translations/ja/LC_MESSAGES/django.mo


+ 88 - 85
netbox/translations/ja/LC_MESSAGES/django.po

@@ -13,7 +13,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-12-12 05:02+0000\n"
+"POT-Creation-Date: 2024-12-13 05:02+0000\n"
 "PO-Revision-Date: 2023-10-30 17:48+0000\n"
 "PO-Revision-Date: 2023-10-30 17:48+0000\n"
 "Last-Translator: teapot, 2024\n"
 "Last-Translator: teapot, 2024\n"
 "Language-Team: Japanese (https://app.transifex.com/netbox-community/teams/178115/ja/)\n"
 "Language-Team: Japanese (https://app.transifex.com/netbox-community/teams/178115/ja/)\n"
@@ -151,7 +151,7 @@ msgstr "非アクティブ"
 #: netbox/dcim/filtersets.py:464 netbox/dcim/filtersets.py:1021
 #: netbox/dcim/filtersets.py:464 netbox/dcim/filtersets.py:1021
 #: netbox/dcim/filtersets.py:1368 netbox/dcim/filtersets.py:1903
 #: netbox/dcim/filtersets.py:1368 netbox/dcim/filtersets.py:1903
 #: netbox/dcim/filtersets.py:2146 netbox/dcim/filtersets.py:2204
 #: netbox/dcim/filtersets.py:2146 netbox/dcim/filtersets.py:2204
-#: netbox/ipam/filtersets.py:339 netbox/ipam/filtersets.py:959
+#: netbox/ipam/filtersets.py:341 netbox/ipam/filtersets.py:961
 #: netbox/virtualization/filtersets.py:45
 #: netbox/virtualization/filtersets.py:45
 #: netbox/virtualization/filtersets.py:173 netbox/vpn/filtersets.py:358
 #: netbox/virtualization/filtersets.py:173 netbox/vpn/filtersets.py:358
 msgid "Region (ID)"
 msgid "Region (ID)"
@@ -163,8 +163,8 @@ msgstr "リージョン (ID)"
 #: netbox/dcim/filtersets.py:471 netbox/dcim/filtersets.py:1028
 #: netbox/dcim/filtersets.py:471 netbox/dcim/filtersets.py:1028
 #: netbox/dcim/filtersets.py:1375 netbox/dcim/filtersets.py:1910
 #: netbox/dcim/filtersets.py:1375 netbox/dcim/filtersets.py:1910
 #: netbox/dcim/filtersets.py:2153 netbox/dcim/filtersets.py:2211
 #: netbox/dcim/filtersets.py:2153 netbox/dcim/filtersets.py:2211
-#: netbox/extras/filtersets.py:509 netbox/ipam/filtersets.py:346
-#: netbox/ipam/filtersets.py:966 netbox/virtualization/filtersets.py:52
+#: netbox/extras/filtersets.py:509 netbox/ipam/filtersets.py:348
+#: netbox/ipam/filtersets.py:968 netbox/virtualization/filtersets.py:52
 #: netbox/virtualization/filtersets.py:180 netbox/vpn/filtersets.py:353
 #: netbox/virtualization/filtersets.py:180 netbox/vpn/filtersets.py:353
 msgid "Region (slug)"
 msgid "Region (slug)"
 msgstr "リージョン (slug)"
 msgstr "リージョン (slug)"
@@ -174,8 +174,8 @@ msgstr "リージョン (slug)"
 #: netbox/dcim/filtersets.py:346 netbox/dcim/filtersets.py:477
 #: netbox/dcim/filtersets.py:346 netbox/dcim/filtersets.py:477
 #: netbox/dcim/filtersets.py:1034 netbox/dcim/filtersets.py:1381
 #: netbox/dcim/filtersets.py:1034 netbox/dcim/filtersets.py:1381
 #: netbox/dcim/filtersets.py:1916 netbox/dcim/filtersets.py:2159
 #: netbox/dcim/filtersets.py:1916 netbox/dcim/filtersets.py:2159
-#: netbox/dcim/filtersets.py:2217 netbox/ipam/filtersets.py:352
-#: netbox/ipam/filtersets.py:972 netbox/virtualization/filtersets.py:58
+#: netbox/dcim/filtersets.py:2217 netbox/ipam/filtersets.py:354
+#: netbox/ipam/filtersets.py:974 netbox/virtualization/filtersets.py:58
 #: netbox/virtualization/filtersets.py:186
 #: netbox/virtualization/filtersets.py:186
 msgid "Site group (ID)"
 msgid "Site group (ID)"
 msgstr "サイトグループ (ID)"
 msgstr "サイトグループ (ID)"
@@ -186,7 +186,7 @@ msgstr "サイトグループ (ID)"
 #: netbox/dcim/filtersets.py:1041 netbox/dcim/filtersets.py:1388
 #: netbox/dcim/filtersets.py:1041 netbox/dcim/filtersets.py:1388
 #: netbox/dcim/filtersets.py:1923 netbox/dcim/filtersets.py:2166
 #: netbox/dcim/filtersets.py:1923 netbox/dcim/filtersets.py:2166
 #: netbox/dcim/filtersets.py:2224 netbox/extras/filtersets.py:515
 #: netbox/dcim/filtersets.py:2224 netbox/extras/filtersets.py:515
-#: netbox/ipam/filtersets.py:359 netbox/ipam/filtersets.py:979
+#: netbox/ipam/filtersets.py:361 netbox/ipam/filtersets.py:981
 #: netbox/virtualization/filtersets.py:65
 #: netbox/virtualization/filtersets.py:65
 #: netbox/virtualization/filtersets.py:193
 #: netbox/virtualization/filtersets.py:193
 msgid "Site group (slug)"
 msgid "Site group (slug)"
@@ -256,8 +256,8 @@ msgstr "サイト"
 #: netbox/circuits/filtersets.py:62 netbox/circuits/filtersets.py:229
 #: netbox/circuits/filtersets.py:62 netbox/circuits/filtersets.py:229
 #: netbox/circuits/filtersets.py:274 netbox/dcim/filtersets.py:242
 #: netbox/circuits/filtersets.py:274 netbox/dcim/filtersets.py:242
 #: netbox/dcim/filtersets.py:363 netbox/dcim/filtersets.py:458
 #: netbox/dcim/filtersets.py:363 netbox/dcim/filtersets.py:458
-#: netbox/extras/filtersets.py:531 netbox/ipam/filtersets.py:238
-#: netbox/ipam/filtersets.py:369 netbox/ipam/filtersets.py:989
+#: netbox/extras/filtersets.py:531 netbox/ipam/filtersets.py:240
+#: netbox/ipam/filtersets.py:371 netbox/ipam/filtersets.py:991
 #: netbox/virtualization/filtersets.py:75
 #: netbox/virtualization/filtersets.py:75
 #: netbox/virtualization/filtersets.py:203 netbox/vpn/filtersets.py:363
 #: netbox/virtualization/filtersets.py:203 netbox/vpn/filtersets.py:363
 msgid "Site (slug)"
 msgid "Site (slug)"
@@ -276,13 +276,13 @@ msgstr "ASN"
 
 
 #: netbox/circuits/filtersets.py:95 netbox/circuits/filtersets.py:122
 #: netbox/circuits/filtersets.py:95 netbox/circuits/filtersets.py:122
 #: netbox/circuits/filtersets.py:156 netbox/circuits/filtersets.py:283
 #: netbox/circuits/filtersets.py:156 netbox/circuits/filtersets.py:283
-#: netbox/circuits/filtersets.py:325 netbox/ipam/filtersets.py:243
+#: netbox/circuits/filtersets.py:325 netbox/ipam/filtersets.py:245
 msgid "Provider (ID)"
 msgid "Provider (ID)"
 msgstr "プロバイダ (ID)"
 msgstr "プロバイダ (ID)"
 
 
 #: netbox/circuits/filtersets.py:101 netbox/circuits/filtersets.py:128
 #: netbox/circuits/filtersets.py:101 netbox/circuits/filtersets.py:128
 #: netbox/circuits/filtersets.py:162 netbox/circuits/filtersets.py:289
 #: netbox/circuits/filtersets.py:162 netbox/circuits/filtersets.py:289
-#: netbox/circuits/filtersets.py:331 netbox/ipam/filtersets.py:249
+#: netbox/circuits/filtersets.py:331 netbox/ipam/filtersets.py:251
 msgid "Provider (slug)"
 msgid "Provider (slug)"
 msgstr "プロバイダ (slug)"
 msgstr "プロバイダ (slug)"
 
 
@@ -311,8 +311,8 @@ msgstr "回線タイプ (slug)"
 #: netbox/dcim/filtersets.py:452 netbox/dcim/filtersets.py:1045
 #: netbox/dcim/filtersets.py:452 netbox/dcim/filtersets.py:1045
 #: netbox/dcim/filtersets.py:1393 netbox/dcim/filtersets.py:1928
 #: netbox/dcim/filtersets.py:1393 netbox/dcim/filtersets.py:1928
 #: netbox/dcim/filtersets.py:2170 netbox/dcim/filtersets.py:2229
 #: netbox/dcim/filtersets.py:2170 netbox/dcim/filtersets.py:2229
-#: netbox/ipam/filtersets.py:232 netbox/ipam/filtersets.py:363
-#: netbox/ipam/filtersets.py:983 netbox/virtualization/filtersets.py:69
+#: netbox/ipam/filtersets.py:234 netbox/ipam/filtersets.py:365
+#: netbox/ipam/filtersets.py:985 netbox/virtualization/filtersets.py:69
 #: netbox/virtualization/filtersets.py:197 netbox/vpn/filtersets.py:368
 #: netbox/virtualization/filtersets.py:197 netbox/vpn/filtersets.py:368
 msgid "Site (ID)"
 msgid "Site (ID)"
 msgstr "サイト (ID)"
 msgstr "サイト (ID)"
@@ -1101,7 +1101,7 @@ msgstr "割当"
 #: netbox/circuits/tables/circuits.py:155 netbox/dcim/forms/bulk_edit.py:118
 #: netbox/circuits/tables/circuits.py:155 netbox/dcim/forms/bulk_edit.py:118
 #: netbox/dcim/forms/bulk_import.py:100 netbox/dcim/forms/model_forms.py:117
 #: netbox/dcim/forms/bulk_import.py:100 netbox/dcim/forms/model_forms.py:117
 #: netbox/dcim/tables/sites.py:89 netbox/extras/forms/filtersets.py:480
 #: netbox/dcim/tables/sites.py:89 netbox/extras/forms/filtersets.py:480
-#: netbox/ipam/filtersets.py:999 netbox/ipam/forms/bulk_edit.py:493
+#: netbox/ipam/filtersets.py:1001 netbox/ipam/forms/bulk_edit.py:493
 #: netbox/ipam/forms/bulk_import.py:460 netbox/ipam/forms/model_forms.py:561
 #: netbox/ipam/forms/bulk_import.py:460 netbox/ipam/forms/model_forms.py:561
 #: netbox/ipam/tables/fhrp.py:67 netbox/ipam/tables/vlans.py:122
 #: netbox/ipam/tables/fhrp.py:67 netbox/ipam/tables/vlans.py:122
 #: netbox/ipam/tables/vlans.py:226
 #: netbox/ipam/tables/vlans.py:226
@@ -2925,7 +2925,7 @@ msgid "Parent site group (slug)"
 msgstr "親サイトグループ (slug)"
 msgstr "親サイトグループ (slug)"
 
 
 #: netbox/dcim/filtersets.py:164 netbox/extras/filtersets.py:364
 #: netbox/dcim/filtersets.py:164 netbox/extras/filtersets.py:364
-#: netbox/ipam/filtersets.py:841 netbox/ipam/filtersets.py:993
+#: netbox/ipam/filtersets.py:843 netbox/ipam/filtersets.py:995
 msgid "Group (ID)"
 msgid "Group (ID)"
 msgstr "グループ (ID)"
 msgstr "グループ (ID)"
 
 
@@ -2983,15 +2983,15 @@ msgstr "ラックタイプ (ID)"
 
 
 #: netbox/dcim/filtersets.py:411 netbox/dcim/filtersets.py:892
 #: netbox/dcim/filtersets.py:411 netbox/dcim/filtersets.py:892
 #: netbox/dcim/filtersets.py:994 netbox/dcim/filtersets.py:1850
 #: netbox/dcim/filtersets.py:994 netbox/dcim/filtersets.py:1850
-#: netbox/ipam/filtersets.py:381 netbox/ipam/filtersets.py:493
-#: netbox/ipam/filtersets.py:1003 netbox/virtualization/filtersets.py:210
+#: netbox/ipam/filtersets.py:383 netbox/ipam/filtersets.py:495
+#: netbox/ipam/filtersets.py:1005 netbox/virtualization/filtersets.py:210
 msgid "Role (ID)"
 msgid "Role (ID)"
 msgstr "ロール (ID)"
 msgstr "ロール (ID)"
 
 
 #: netbox/dcim/filtersets.py:417 netbox/dcim/filtersets.py:898
 #: netbox/dcim/filtersets.py:417 netbox/dcim/filtersets.py:898
 #: netbox/dcim/filtersets.py:1000 netbox/dcim/filtersets.py:1856
 #: netbox/dcim/filtersets.py:1000 netbox/dcim/filtersets.py:1856
-#: netbox/extras/filtersets.py:558 netbox/ipam/filtersets.py:387
-#: netbox/ipam/filtersets.py:499 netbox/ipam/filtersets.py:1009
+#: netbox/extras/filtersets.py:558 netbox/ipam/filtersets.py:389
+#: netbox/ipam/filtersets.py:501 netbox/ipam/filtersets.py:1011
 #: netbox/virtualization/filtersets.py:216
 #: netbox/virtualization/filtersets.py:216
 msgid "Role (slug)"
 msgid "Role (slug)"
 msgstr "ロール (slug)"
 msgstr "ロール (slug)"
@@ -3189,7 +3189,7 @@ msgstr "VDC (ID)"
 msgid "Device model"
 msgid "Device model"
 msgstr "デバイスモデル"
 msgstr "デバイスモデル"
 
 
-#: netbox/dcim/filtersets.py:1267 netbox/ipam/filtersets.py:632
+#: netbox/dcim/filtersets.py:1267 netbox/ipam/filtersets.py:634
 #: netbox/vpn/filtersets.py:102 netbox/vpn/filtersets.py:401
 #: netbox/vpn/filtersets.py:102 netbox/vpn/filtersets.py:401
 msgid "Interface (ID)"
 msgid "Interface (ID)"
 msgstr "インタフェース (ID)"
 msgstr "インタフェース (ID)"
@@ -3203,8 +3203,8 @@ msgid "Module bay (ID)"
 msgstr "モジュールベイ (ID)"
 msgstr "モジュールベイ (ID)"
 
 
 #: netbox/dcim/filtersets.py:1333 netbox/dcim/filtersets.py:1425
 #: netbox/dcim/filtersets.py:1333 netbox/dcim/filtersets.py:1425
-#: netbox/ipam/filtersets.py:611 netbox/ipam/filtersets.py:851
-#: netbox/ipam/filtersets.py:1115 netbox/virtualization/filtersets.py:161
+#: netbox/ipam/filtersets.py:613 netbox/ipam/filtersets.py:853
+#: netbox/ipam/filtersets.py:1117 netbox/virtualization/filtersets.py:161
 #: netbox/vpn/filtersets.py:379
 #: netbox/vpn/filtersets.py:379
 msgid "Device (ID)"
 msgid "Device (ID)"
 msgstr "デバイス (ID)"
 msgstr "デバイス (ID)"
@@ -3213,8 +3213,8 @@ msgstr "デバイス (ID)"
 msgid "Rack (name)"
 msgid "Rack (name)"
 msgstr "ラック (名前)"
 msgstr "ラック (名前)"
 
 
-#: netbox/dcim/filtersets.py:1431 netbox/ipam/filtersets.py:606
-#: netbox/ipam/filtersets.py:846 netbox/ipam/filtersets.py:1121
+#: netbox/dcim/filtersets.py:1431 netbox/ipam/filtersets.py:608
+#: netbox/ipam/filtersets.py:848 netbox/ipam/filtersets.py:1123
 #: netbox/vpn/filtersets.py:374
 #: netbox/vpn/filtersets.py:374
 msgid "Device (name)"
 msgid "Device (name)"
 msgstr "デバイス (名前)"
 msgstr "デバイス (名前)"
@@ -3266,9 +3266,9 @@ msgstr "割当 VID"
 #: netbox/dcim/forms/bulk_import.py:913 netbox/dcim/forms/filtersets.py:1428
 #: netbox/dcim/forms/bulk_import.py:913 netbox/dcim/forms/filtersets.py:1428
 #: netbox/dcim/forms/model_forms.py:1385
 #: netbox/dcim/forms/model_forms.py:1385
 #: netbox/dcim/models/device_components.py:711
 #: netbox/dcim/models/device_components.py:711
-#: netbox/dcim/tables/devices.py:626 netbox/ipam/filtersets.py:316
-#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
-#: netbox/ipam/filtersets.py:584 netbox/ipam/filtersets.py:595
+#: netbox/dcim/tables/devices.py:626 netbox/ipam/filtersets.py:318
+#: netbox/ipam/filtersets.py:329 netbox/ipam/filtersets.py:485
+#: netbox/ipam/filtersets.py:586 netbox/ipam/filtersets.py:597
 #: netbox/ipam/forms/bulk_edit.py:242 netbox/ipam/forms/bulk_edit.py:298
 #: netbox/ipam/forms/bulk_edit.py:242 netbox/ipam/forms/bulk_edit.py:298
 #: netbox/ipam/forms/bulk_edit.py:340 netbox/ipam/forms/bulk_import.py:157
 #: netbox/ipam/forms/bulk_edit.py:340 netbox/ipam/forms/bulk_import.py:157
 #: netbox/ipam/forms/bulk_import.py:243 netbox/ipam/forms/bulk_import.py:279
 #: netbox/ipam/forms/bulk_import.py:243 netbox/ipam/forms/bulk_import.py:279
@@ -3295,19 +3295,19 @@ msgstr "割当 VID"
 msgid "VRF"
 msgid "VRF"
 msgstr "VRF"
 msgstr "VRF"
 
 
-#: netbox/dcim/filtersets.py:1619 netbox/ipam/filtersets.py:322
-#: netbox/ipam/filtersets.py:333 netbox/ipam/filtersets.py:489
-#: netbox/ipam/filtersets.py:590 netbox/ipam/filtersets.py:601
+#: netbox/dcim/filtersets.py:1619 netbox/ipam/filtersets.py:324
+#: netbox/ipam/filtersets.py:335 netbox/ipam/filtersets.py:491
+#: netbox/ipam/filtersets.py:592 netbox/ipam/filtersets.py:603
 msgid "VRF (RD)"
 msgid "VRF (RD)"
 msgstr "VRF (RD)"
 msgstr "VRF (RD)"
 
 
-#: netbox/dcim/filtersets.py:1624 netbox/ipam/filtersets.py:1030
+#: netbox/dcim/filtersets.py:1624 netbox/ipam/filtersets.py:1032
 #: netbox/vpn/filtersets.py:342
 #: netbox/vpn/filtersets.py:342
 msgid "L2VPN (ID)"
 msgid "L2VPN (ID)"
 msgstr "L2VPN (ID)"
 msgstr "L2VPN (ID)"
 
 
 #: netbox/dcim/filtersets.py:1630 netbox/dcim/forms/filtersets.py:1433
 #: netbox/dcim/filtersets.py:1630 netbox/dcim/forms/filtersets.py:1433
-#: netbox/dcim/tables/devices.py:570 netbox/ipam/filtersets.py:1036
+#: netbox/dcim/tables/devices.py:570 netbox/ipam/filtersets.py:1038
 #: netbox/ipam/forms/filtersets.py:518 netbox/ipam/tables/vlans.py:137
 #: netbox/ipam/forms/filtersets.py:518 netbox/ipam/tables/vlans.py:137
 #: netbox/templates/dcim/interface.html:93 netbox/templates/ipam/vlan.html:66
 #: netbox/templates/dcim/interface.html:93 netbox/templates/ipam/vlan.html:66
 #: netbox/templates/vpn/l2vpntermination.html:12
 #: netbox/templates/vpn/l2vpntermination.html:12
@@ -4208,7 +4208,7 @@ msgstr "割当ロール名"
 
 
 #: netbox/dcim/forms/bulk_import.py:264
 #: netbox/dcim/forms/bulk_import.py:264
 msgid "Rack type model"
 msgid "Rack type model"
-msgstr ""
+msgstr "ラックタイプモデル"
 
 
 #: netbox/dcim/forms/bulk_import.py:292 netbox/dcim/forms/bulk_import.py:435
 #: netbox/dcim/forms/bulk_import.py:292 netbox/dcim/forms/bulk_import.py:435
 #: netbox/dcim/forms/bulk_import.py:605
 #: netbox/dcim/forms/bulk_import.py:605
@@ -4217,11 +4217,11 @@ msgstr "エアフロー"
 
 
 #: netbox/dcim/forms/bulk_import.py:324
 #: netbox/dcim/forms/bulk_import.py:324
 msgid "Width must be set if not specifying a rack type."
 msgid "Width must be set if not specifying a rack type."
-msgstr ""
+msgstr "ラックタイプを指定しない場合は、幅を設定する必要があります。"
 
 
 #: netbox/dcim/forms/bulk_import.py:326
 #: netbox/dcim/forms/bulk_import.py:326
 msgid "U height must be set if not specifying a rack type."
 msgid "U height must be set if not specifying a rack type."
-msgstr ""
+msgstr "ラックタイプを指定しない場合は U 高さを設定する必要があります。"
 
 
 #: netbox/dcim/forms/bulk_import.py:334
 #: netbox/dcim/forms/bulk_import.py:334
 msgid "Parent site"
 msgid "Parent site"
@@ -4869,6 +4869,9 @@ msgid ""
 "present, will be automatically replaced with the position value when "
 "present, will be automatically replaced with the position value when "
 "creating a new module."
 "creating a new module."
 msgstr ""
 msgstr ""
+"英数字の範囲は一括作成に対応しています。1 つの範囲内で大文字と小文字や文字種の混在は対応していません (例: "
+"<code>1[ge,xe]-0/0/[0-9]1</code>)。トークン "
+"<code>{module}</code>が存在する場合、新しいモジュールを作成する際に、自動的に位置の値に置き換えられます。"
 
 
 #: netbox/dcim/forms/model_forms.py:1094
 #: netbox/dcim/forms/model_forms.py:1094
 msgid "Console port template"
 msgid "Console port template"
@@ -9131,129 +9134,129 @@ msgstr "L2VPN のエクスポート"
 msgid "Exporting L2VPN (identifier)"
 msgid "Exporting L2VPN (identifier)"
 msgstr "L2VPN (識別子) のエクスポート"
 msgstr "L2VPN (識別子) のエクスポート"
 
 
-#: netbox/ipam/filtersets.py:155 netbox/ipam/filtersets.py:281
+#: netbox/ipam/filtersets.py:155 netbox/ipam/filtersets.py:283
 #: netbox/ipam/forms/model_forms.py:229 netbox/ipam/tables/ip.py:212
 #: netbox/ipam/forms/model_forms.py:229 netbox/ipam/tables/ip.py:212
 #: netbox/templates/ipam/prefix.html:12
 #: netbox/templates/ipam/prefix.html:12
 msgid "Prefix"
 msgid "Prefix"
 msgstr "プレフィックス"
 msgstr "プレフィックス"
 
 
 #: netbox/ipam/filtersets.py:159 netbox/ipam/filtersets.py:198
 #: netbox/ipam/filtersets.py:159 netbox/ipam/filtersets.py:198
-#: netbox/ipam/filtersets.py:221
+#: netbox/ipam/filtersets.py:223
 msgid "RIR (ID)"
 msgid "RIR (ID)"
 msgstr "RIR (ID)"
 msgstr "RIR (ID)"
 
 
 #: netbox/ipam/filtersets.py:165 netbox/ipam/filtersets.py:204
 #: netbox/ipam/filtersets.py:165 netbox/ipam/filtersets.py:204
-#: netbox/ipam/filtersets.py:227
+#: netbox/ipam/filtersets.py:229
 msgid "RIR (slug)"
 msgid "RIR (slug)"
 msgstr "RIR (slug)"
 msgstr "RIR (slug)"
 
 
-#: netbox/ipam/filtersets.py:285
+#: netbox/ipam/filtersets.py:287
 msgid "Within prefix"
 msgid "Within prefix"
 msgstr "プレフィックス内"
 msgstr "プレフィックス内"
 
 
-#: netbox/ipam/filtersets.py:289
+#: netbox/ipam/filtersets.py:291
 msgid "Within and including prefix"
 msgid "Within and including prefix"
 msgstr "プレフィックス内およびプレフィックスを含む"
 msgstr "プレフィックス内およびプレフィックスを含む"
 
 
-#: netbox/ipam/filtersets.py:293
+#: netbox/ipam/filtersets.py:295
 msgid "Prefixes which contain this prefix or IP"
 msgid "Prefixes which contain this prefix or IP"
 msgstr "このプレフィックス / IP を含むプレフィックス"
 msgstr "このプレフィックス / IP を含むプレフィックス"
 
 
-#: netbox/ipam/filtersets.py:304 netbox/ipam/filtersets.py:572
+#: netbox/ipam/filtersets.py:306 netbox/ipam/filtersets.py:574
 #: netbox/ipam/forms/bulk_edit.py:343 netbox/ipam/forms/filtersets.py:196
 #: netbox/ipam/forms/bulk_edit.py:343 netbox/ipam/forms/filtersets.py:196
 #: netbox/ipam/forms/filtersets.py:331
 #: netbox/ipam/forms/filtersets.py:331
 msgid "Mask length"
 msgid "Mask length"
 msgstr "マスクの長さ"
 msgstr "マスクの長さ"
 
 
-#: netbox/ipam/filtersets.py:373 netbox/vpn/filtersets.py:427
+#: netbox/ipam/filtersets.py:375 netbox/vpn/filtersets.py:427
 msgid "VLAN (ID)"
 msgid "VLAN (ID)"
 msgstr "VLAN (ID)"
 msgstr "VLAN (ID)"
 
 
-#: netbox/ipam/filtersets.py:377 netbox/vpn/filtersets.py:422
+#: netbox/ipam/filtersets.py:379 netbox/vpn/filtersets.py:422
 msgid "VLAN number (1-4094)"
 msgid "VLAN number (1-4094)"
 msgstr "VLAN 番号 (1-4094)"
 msgstr "VLAN 番号 (1-4094)"
 
 
-#: netbox/ipam/filtersets.py:471 netbox/ipam/filtersets.py:475
-#: netbox/ipam/filtersets.py:567 netbox/ipam/forms/model_forms.py:496
+#: netbox/ipam/filtersets.py:473 netbox/ipam/filtersets.py:477
+#: netbox/ipam/filtersets.py:569 netbox/ipam/forms/model_forms.py:496
 #: netbox/templates/tenancy/contact.html:53
 #: netbox/templates/tenancy/contact.html:53
 #: netbox/tenancy/forms/bulk_edit.py:113
 #: netbox/tenancy/forms/bulk_edit.py:113
 msgid "Address"
 msgid "Address"
 msgstr "アドレス"
 msgstr "アドレス"
 
 
-#: netbox/ipam/filtersets.py:479
+#: netbox/ipam/filtersets.py:481
 msgid "Ranges which contain this prefix or IP"
 msgid "Ranges which contain this prefix or IP"
 msgstr "このプレフィックス / IP を含む範囲"
 msgstr "このプレフィックス / IP を含む範囲"
 
 
-#: netbox/ipam/filtersets.py:507 netbox/ipam/filtersets.py:563
+#: netbox/ipam/filtersets.py:509 netbox/ipam/filtersets.py:565
 msgid "Parent prefix"
 msgid "Parent prefix"
 msgstr "親プレフィックス"
 msgstr "親プレフィックス"
 
 
-#: netbox/ipam/filtersets.py:616 netbox/ipam/filtersets.py:856
-#: netbox/ipam/filtersets.py:1131 netbox/vpn/filtersets.py:385
+#: netbox/ipam/filtersets.py:618 netbox/ipam/filtersets.py:858
+#: netbox/ipam/filtersets.py:1133 netbox/vpn/filtersets.py:385
 msgid "Virtual machine (name)"
 msgid "Virtual machine (name)"
 msgstr "仮想マシン (名前)"
 msgstr "仮想マシン (名前)"
 
 
-#: netbox/ipam/filtersets.py:621 netbox/ipam/filtersets.py:861
-#: netbox/ipam/filtersets.py:1125 netbox/virtualization/filtersets.py:282
+#: netbox/ipam/filtersets.py:623 netbox/ipam/filtersets.py:863
+#: netbox/ipam/filtersets.py:1127 netbox/virtualization/filtersets.py:282
 #: netbox/virtualization/filtersets.py:321 netbox/vpn/filtersets.py:390
 #: netbox/virtualization/filtersets.py:321 netbox/vpn/filtersets.py:390
 msgid "Virtual machine (ID)"
 msgid "Virtual machine (ID)"
 msgstr "仮想マシン (ID)"
 msgstr "仮想マシン (ID)"
 
 
-#: netbox/ipam/filtersets.py:627 netbox/vpn/filtersets.py:97
+#: netbox/ipam/filtersets.py:629 netbox/vpn/filtersets.py:97
 #: netbox/vpn/filtersets.py:396
 #: netbox/vpn/filtersets.py:396
 msgid "Interface (name)"
 msgid "Interface (name)"
 msgstr "インタフェース (名前)"
 msgstr "インタフェース (名前)"
 
 
-#: netbox/ipam/filtersets.py:638 netbox/vpn/filtersets.py:108
+#: netbox/ipam/filtersets.py:640 netbox/vpn/filtersets.py:108
 #: netbox/vpn/filtersets.py:407
 #: netbox/vpn/filtersets.py:407
 msgid "VM interface (name)"
 msgid "VM interface (name)"
 msgstr "VM インタフェース (名前)"
 msgstr "VM インタフェース (名前)"
 
 
-#: netbox/ipam/filtersets.py:643 netbox/vpn/filtersets.py:113
+#: netbox/ipam/filtersets.py:645 netbox/vpn/filtersets.py:113
 msgid "VM interface (ID)"
 msgid "VM interface (ID)"
 msgstr "VM インタフェース (ID)"
 msgstr "VM インタフェース (ID)"
 
 
-#: netbox/ipam/filtersets.py:648
+#: netbox/ipam/filtersets.py:650
 msgid "FHRP group (ID)"
 msgid "FHRP group (ID)"
 msgstr "FHRP グループ (ID)"
 msgstr "FHRP グループ (ID)"
 
 
-#: netbox/ipam/filtersets.py:652
+#: netbox/ipam/filtersets.py:654
 msgid "Is assigned to an interface"
 msgid "Is assigned to an interface"
 msgstr "インタフェースに割り当てられているか"
 msgstr "インタフェースに割り当てられているか"
 
 
-#: netbox/ipam/filtersets.py:656
+#: netbox/ipam/filtersets.py:658
 msgid "Is assigned"
 msgid "Is assigned"
 msgstr "割当済みか"
 msgstr "割当済みか"
 
 
-#: netbox/ipam/filtersets.py:668
+#: netbox/ipam/filtersets.py:670
 msgid "Service (ID)"
 msgid "Service (ID)"
 msgstr "サービス (ID)"
 msgstr "サービス (ID)"
 
 
-#: netbox/ipam/filtersets.py:673
+#: netbox/ipam/filtersets.py:675
 msgid "NAT inside IP address (ID)"
 msgid "NAT inside IP address (ID)"
 msgstr "NAT 内部の IP アドレス (ID)"
 msgstr "NAT 内部の IP アドレス (ID)"
 
 
-#: netbox/ipam/filtersets.py:1041 netbox/ipam/forms/bulk_import.py:322
+#: netbox/ipam/filtersets.py:1043 netbox/ipam/forms/bulk_import.py:322
 msgid "Assigned interface"
 msgid "Assigned interface"
 msgstr "割当インタフェース"
 msgstr "割当インタフェース"
 
 
-#: netbox/ipam/filtersets.py:1046
+#: netbox/ipam/filtersets.py:1048
 msgid "Assigned VM interface"
 msgid "Assigned VM interface"
 msgstr "割り当てられた VM インターフェイス"
 msgstr "割り当てられた VM インターフェイス"
 
 
-#: netbox/ipam/filtersets.py:1136
+#: netbox/ipam/filtersets.py:1138
 msgid "IP address (ID)"
 msgid "IP address (ID)"
 msgstr "IP アドレス (ID)"
 msgstr "IP アドレス (ID)"
 
 
-#: netbox/ipam/filtersets.py:1142 netbox/ipam/models/ip.py:788
+#: netbox/ipam/filtersets.py:1144 netbox/ipam/models/ip.py:788
 msgid "IP address"
 msgid "IP address"
 msgstr "IP アドレス"
 msgstr "IP アドレス"
 
 
-#: netbox/ipam/filtersets.py:1167
+#: netbox/ipam/filtersets.py:1169
 msgid "Primary IPv4 (ID)"
 msgid "Primary IPv4 (ID)"
 msgstr "プライマリ IPv4 (ID)"
 msgstr "プライマリ IPv4 (ID)"
 
 
-#: netbox/ipam/filtersets.py:1172
+#: netbox/ipam/filtersets.py:1174
 msgid "Primary IPv6 (ID)"
 msgid "Primary IPv6 (ID)"
 msgstr "プライマリ IPv6 (ID)"
 msgstr "プライマリ IPv6 (ID)"
 
 
@@ -9477,11 +9480,11 @@ msgstr "割当デバイスのプライマリ IP アドレスにする"
 
 
 #: netbox/ipam/forms/bulk_import.py:330
 #: netbox/ipam/forms/bulk_import.py:330
 msgid "Is out-of-band"
 msgid "Is out-of-band"
-msgstr ""
+msgstr "帯域外"
 
 
 #: netbox/ipam/forms/bulk_import.py:331
 #: netbox/ipam/forms/bulk_import.py:331
 msgid "Designate this as the out-of-band IP address for the assigned device"
 msgid "Designate this as the out-of-band IP address for the assigned device"
-msgstr ""
+msgstr "これを、割当デバイスの帯域外 IP アドレスとして指定します。"
 
 
 #: netbox/ipam/forms/bulk_import.py:371
 #: netbox/ipam/forms/bulk_import.py:371
 msgid "No device or virtual machine specified; cannot set as primary IP"
 msgid "No device or virtual machine specified; cannot set as primary IP"
@@ -9489,11 +9492,11 @@ msgstr "デバイスまたは仮想マシンが指定されていないため、
 
 
 #: netbox/ipam/forms/bulk_import.py:375
 #: netbox/ipam/forms/bulk_import.py:375
 msgid "No device specified; cannot set as out-of-band IP"
 msgid "No device specified; cannot set as out-of-band IP"
-msgstr ""
+msgstr "デバイスが指定されていないため、帯域外IP として設定できません"
 
 
 #: netbox/ipam/forms/bulk_import.py:379
 #: netbox/ipam/forms/bulk_import.py:379
 msgid "Cannot set out-of-band IP for virtual machines"
 msgid "Cannot set out-of-band IP for virtual machines"
-msgstr ""
+msgstr "仮想マシンには帯域外 IP を設定できません"
 
 
 #: netbox/ipam/forms/bulk_import.py:383
 #: netbox/ipam/forms/bulk_import.py:383
 msgid "No interface specified; cannot set as primary IP"
 msgid "No interface specified; cannot set as primary IP"
@@ -9501,7 +9504,7 @@ msgstr "インタフェースが指定されていないため、プライマリ
 
 
 #: netbox/ipam/forms/bulk_import.py:387
 #: netbox/ipam/forms/bulk_import.py:387
 msgid "No interface specified; cannot set as out-of-band IP"
 msgid "No interface specified; cannot set as out-of-band IP"
-msgstr ""
+msgstr "インターフェイスが指定されていないため、帯域外IP として設定できません"
 
 
 #: netbox/ipam/forms/bulk_import.py:422
 #: netbox/ipam/forms/bulk_import.py:422
 msgid "Auth type"
 msgid "Auth type"
@@ -9678,7 +9681,7 @@ msgstr "デバイス/VMのプライマリIPにする"
 
 
 #: netbox/ipam/forms/model_forms.py:314
 #: netbox/ipam/forms/model_forms.py:314
 msgid "Make this the out-of-band IP for the device"
 msgid "Make this the out-of-band IP for the device"
-msgstr ""
+msgstr "これをデバイスの帯域外IPにする"
 
 
 #: netbox/ipam/forms/model_forms.py:329
 #: netbox/ipam/forms/model_forms.py:329
 msgid "NAT IP (Inside)"
 msgid "NAT IP (Inside)"
@@ -9690,11 +9693,11 @@ msgstr "IP アドレスは 1 つのオブジェクトにのみ割り当てるこ
 
 
 #: netbox/ipam/forms/model_forms.py:398
 #: netbox/ipam/forms/model_forms.py:398
 msgid "Cannot reassign primary IP address for the parent device/VM"
 msgid "Cannot reassign primary IP address for the parent device/VM"
-msgstr ""
+msgstr "親デバイス/VMのプライマリ IP アドレスを再割り当てできません"
 
 
 #: netbox/ipam/forms/model_forms.py:402
 #: netbox/ipam/forms/model_forms.py:402
 msgid "Cannot reassign out-of-Band IP address for the parent device"
 msgid "Cannot reassign out-of-Band IP address for the parent device"
-msgstr ""
+msgstr "親デバイスに帯域外IP アドレスを再割り当てできません"
 
 
 #: netbox/ipam/forms/model_forms.py:412
 #: netbox/ipam/forms/model_forms.py:412
 msgid ""
 msgid ""
@@ -9705,7 +9708,7 @@ msgstr "プライマリ IP として指定できるのは、インタフェー
 msgid ""
 msgid ""
 "Only IP addresses assigned to a device interface can be designated as the "
 "Only IP addresses assigned to a device interface can be designated as the "
 "out-of-band IP for a device."
 "out-of-band IP for a device."
-msgstr ""
+msgstr "デバイスの帯域外 IP として指定できるのは、デバイスインタフェイスに割り当てられた IP アドレスのみです。"
 
 
 #: netbox/ipam/forms/model_forms.py:508
 #: netbox/ipam/forms/model_forms.py:508
 msgid "Virtual IP Address"
 msgid "Virtual IP Address"
@@ -10087,19 +10090,19 @@ msgstr "scope_typeなしでscope_idを設定することはできません。"
 #: netbox/ipam/models/vlans.py:105
 #: netbox/ipam/models/vlans.py:105
 #, python-brace-format
 #, python-brace-format
 msgid "Starting VLAN ID in range ({value}) cannot be less than {minimum}"
 msgid "Starting VLAN ID in range ({value}) cannot be less than {minimum}"
-msgstr ""
+msgstr "範囲の開始 VLAN ID ({value}) は{minimum}以下であってはなりません "
 
 
 #: netbox/ipam/models/vlans.py:111
 #: netbox/ipam/models/vlans.py:111
 #, python-brace-format
 #, python-brace-format
 msgid "Ending VLAN ID in range ({value}) cannot exceed {maximum}"
 msgid "Ending VLAN ID in range ({value}) cannot exceed {maximum}"
-msgstr ""
+msgstr "範囲の終了 VLAN ID ({value}) は{maximum}を超えることはできません "
 
 
 #: netbox/ipam/models/vlans.py:118
 #: netbox/ipam/models/vlans.py:118
 #, python-brace-format
 #, python-brace-format
 msgid ""
 msgid ""
 "Ending VLAN ID in range must be greater than or equal to the starting VLAN "
 "Ending VLAN ID in range must be greater than or equal to the starting VLAN "
 "ID ({range})"
 "ID ({range})"
-msgstr ""
+msgstr "範囲の終了 VLAN ID は、開始 VLAN ID ({range})以上である必要があります"
 
 
 #: netbox/ipam/models/vlans.py:124
 #: netbox/ipam/models/vlans.py:124
 msgid "Ranges cannot overlap."
 msgid "Ranges cannot overlap."
@@ -12434,11 +12437,11 @@ msgstr "ダウンロード"
 #: netbox/templates/dcim/device/render_config.html:64
 #: netbox/templates/dcim/device/render_config.html:64
 #: netbox/templates/virtualization/virtualmachine/render_config.html:64
 #: netbox/templates/virtualization/virtualmachine/render_config.html:64
 msgid "Error rendering template"
 msgid "Error rendering template"
-msgstr ""
+msgstr "エラーレンダリングテンプレート"
 
 
 #: netbox/templates/dcim/device/render_config.html:70
 #: netbox/templates/dcim/device/render_config.html:70
 msgid "No configuration template has been assigned for this device."
 msgid "No configuration template has been assigned for this device."
-msgstr ""
+msgstr "このデバイスには設定テンプレートが割り当てられていません。"
 
 
 #: netbox/templates/dcim/device_edit.html:44
 #: netbox/templates/dcim/device_edit.html:44
 msgid "Parent Bay"
 msgid "Parent Bay"
@@ -14091,7 +14094,7 @@ msgstr "仮想ディスクを追加"
 
 
 #: netbox/templates/virtualization/virtualmachine/render_config.html:70
 #: netbox/templates/virtualization/virtualmachine/render_config.html:70
 msgid "No configuration template has been assigned for this virtual machine."
 msgid "No configuration template has been assigned for this virtual machine."
-msgstr ""
+msgstr "このVMには構成テンプレートが割り当てられていません。"
 
 
 #: netbox/templates/vpn/ikepolicy.html:10
 #: netbox/templates/vpn/ikepolicy.html:10
 #: netbox/templates/vpn/ipsecprofile.html:33 netbox/vpn/tables/crypto.py:166
 #: netbox/templates/vpn/ipsecprofile.html:33 netbox/vpn/tables/crypto.py:166
@@ -15323,19 +15326,19 @@ msgstr "GRE"
 
 
 #: netbox/vpn/choices.py:39
 #: netbox/vpn/choices.py:39
 msgid "WireGuard"
 msgid "WireGuard"
-msgstr ""
+msgstr "WireGuard"
 
 
 #: netbox/vpn/choices.py:40
 #: netbox/vpn/choices.py:40
 msgid "OpenVPN"
 msgid "OpenVPN"
-msgstr ""
+msgstr "OpenVPN"
 
 
 #: netbox/vpn/choices.py:41
 #: netbox/vpn/choices.py:41
 msgid "L2TP"
 msgid "L2TP"
-msgstr ""
+msgstr "L2TP"
 
 
 #: netbox/vpn/choices.py:42
 #: netbox/vpn/choices.py:42
 msgid "PPTP"
 msgid "PPTP"
-msgstr ""
+msgstr "PPTP"
 
 
 #: netbox/vpn/choices.py:64
 #: netbox/vpn/choices.py:64
 msgid "Hub"
 msgid "Hub"