swift 2.32.0__py2.py3-none-any.whl → 2.32.1__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. swift/common/middleware/listing_formats.py +26 -38
  2. swift/common/middleware/x_profile/html_viewer.py +1 -1
  3. swift/common/middleware/xprofile.py +5 -0
  4. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/METADATA +31 -33
  5. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/RECORD +49 -49
  6. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/WHEEL +1 -1
  7. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/entry_points.txt +0 -1
  8. swift-2.32.1.dist-info/pbr.json +1 -0
  9. swift-2.32.0.dist-info/pbr.json +0 -1
  10. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-audit +0 -0
  11. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-auditor +0 -0
  12. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-info +0 -0
  13. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-reaper +0 -0
  14. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-replicator +0 -0
  15. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-account-server +0 -0
  16. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-config +0 -0
  17. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-auditor +0 -0
  18. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-info +0 -0
  19. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-reconciler +0 -0
  20. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-replicator +0 -0
  21. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-server +0 -0
  22. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-sharder +0 -0
  23. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-sync +0 -0
  24. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-container-updater +0 -0
  25. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-dispersion-populate +0 -0
  26. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-dispersion-report +0 -0
  27. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-drive-audit +0 -0
  28. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-form-signature +0 -0
  29. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-get-nodes +0 -0
  30. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-init +0 -0
  31. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-auditor +0 -0
  32. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-expirer +0 -0
  33. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-info +0 -0
  34. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-reconstructor +0 -0
  35. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-relinker +0 -0
  36. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-replicator +0 -0
  37. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-server +0 -0
  38. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-object-updater +0 -0
  39. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-oldies +0 -0
  40. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-orphans +0 -0
  41. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-proxy-server +0 -0
  42. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-recon +0 -0
  43. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-recon-cron +0 -0
  44. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-reconciler-enqueue +0 -0
  45. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-ring-builder +0 -0
  46. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-ring-builder-analyzer +0 -0
  47. {swift-2.32.0.data → swift-2.32.1.data}/scripts/swift-ring-composer +0 -0
  48. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/AUTHORS +0 -0
  49. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/LICENSE +0 -0
  50. {swift-2.32.0.dist-info → swift-2.32.1.dist-info}/top_level.txt +0 -0
@@ -18,6 +18,7 @@ import six
18
18
  from xml.etree.cElementTree import Element, SubElement, tostring
19
19
 
20
20
  from swift.common.constraints import valid_api_version
21
+ from swift.common.header_key_dict import HeaderKeyDict
21
22
  from swift.common.http import HTTP_NO_CONTENT
22
23
  from swift.common.request_helpers import get_param
23
24
  from swift.common.swob import HTTPException, HTTPNotAcceptable, Request, \
@@ -178,52 +179,39 @@ class ListingFilter(object):
178
179
  start_response(status, headers)
179
180
  return resp_iter
180
181
 
181
- header_to_index = {}
182
- resp_content_type = resp_length = None
183
- for i, (header, value) in enumerate(headers):
184
- header = header.lower()
185
- if header == 'content-type':
186
- header_to_index[header] = i
187
- resp_content_type = value.partition(';')[0]
188
- elif header == 'content-length':
189
- header_to_index[header] = i
190
- resp_length = int(value)
191
- elif header == 'vary':
192
- header_to_index[header] = i
193
-
194
182
  if not status.startswith(('200 ', '204 ')):
195
183
  start_response(status, headers)
196
184
  return resp_iter
197
185
 
186
+ headers_dict = HeaderKeyDict(headers)
187
+ resp_content_type = headers_dict.get(
188
+ 'content-type', '').partition(';')[0]
189
+ resp_length = headers_dict.get('content-length')
190
+
198
191
  if can_vary:
199
- if 'vary' in header_to_index:
200
- value = headers[header_to_index['vary']][1]
192
+ if 'vary' in headers_dict:
193
+ value = headers_dict['vary']
201
194
  if 'accept' not in list_from_csv(value.lower()):
202
- headers[header_to_index['vary']] = (
203
- 'Vary', value + ', Accept')
195
+ headers_dict['vary'] = value + ', Accept'
204
196
  else:
205
- headers.append(('Vary', 'Accept'))
197
+ headers_dict['vary'] = 'Accept'
206
198
 
207
199
  if resp_content_type != 'application/json':
208
- start_response(status, headers)
200
+ start_response(status, list(headers_dict.items()))
209
201
  return resp_iter
210
202
 
211
- if resp_length is None or \
212
- resp_length > MAX_CONTAINER_LISTING_CONTENT_LENGTH:
213
- start_response(status, headers)
203
+ if req.method == 'HEAD':
204
+ headers_dict['content-type'] = out_content_type + '; charset=utf-8'
205
+ # proxy logging (and maybe other mw?) seem to be good about
206
+ # sticking this on HEAD/204 but we do it here to be responsible
207
+ # and explicit
208
+ headers_dict['content-length'] = 0
209
+ start_response(status, list(headers_dict.items()))
214
210
  return resp_iter
215
211
 
216
- def set_header(header, value):
217
- if value is None:
218
- del headers[header_to_index[header]]
219
- else:
220
- headers[header_to_index[header]] = (
221
- headers[header_to_index[header]][0], str(value))
222
-
223
- if req.method == 'HEAD':
224
- set_header('content-type', out_content_type + '; charset=utf-8')
225
- set_header('content-length', None) # don't know, can't determine
226
- start_response(status, headers)
212
+ if resp_length is None or \
213
+ int(resp_length) > MAX_CONTAINER_LISTING_CONTENT_LENGTH:
214
+ start_response(status, list(headers_dict.items()))
227
215
  return resp_iter
228
216
 
229
217
  body = b''.join(resp_iter)
@@ -237,7 +225,7 @@ class ListingFilter(object):
237
225
  except ValueError:
238
226
  # Static web listing that's returning invalid JSON?
239
227
  # Just pass it straight through; that's about all we *can* do.
240
- start_response(status, headers)
228
+ start_response(status, list(headers_dict.items()))
241
229
  return [body]
242
230
 
243
231
  if not req.allow_reserved_names:
@@ -257,16 +245,16 @@ class ListingFilter(object):
257
245
  body = json.dumps(listing).encode('ascii')
258
246
  except KeyError:
259
247
  # listing was in a bad format -- funky static web listing??
260
- start_response(status, headers)
248
+ start_response(status, list(headers_dict.items()))
261
249
  return [body]
262
250
 
263
251
  if not body:
264
252
  status = '%s %s' % (HTTP_NO_CONTENT,
265
253
  RESPONSE_REASONS[HTTP_NO_CONTENT][0])
266
254
 
267
- set_header('content-type', out_content_type + '; charset=utf-8')
268
- set_header('content-length', len(body))
269
- start_response(status, headers)
255
+ headers_dict['content-type'] = out_content_type + '; charset=utf-8'
256
+ headers_dict['content-length'] = len(body)
257
+ start_response(status, list(headers_dict.items()))
270
258
  return [body]
271
259
 
272
260
 
@@ -246,7 +246,7 @@ class HTMLViewer(object):
246
246
  if multiple:
247
247
  return value
248
248
  if isinstance(value, list):
249
- return eval(value[0]) if isinstance(default, int) else value[0]
249
+ return int(value[0]) if isinstance(default, int) else value[0]
250
250
  else:
251
251
  return value
252
252
 
@@ -16,6 +16,11 @@
16
16
  """
17
17
  Profiling middleware for Swift Servers.
18
18
 
19
+ .. note::
20
+ This middleware is intended for development and testing environments only,
21
+ not production. No authentication is expected or required for the web UI,
22
+ and profiling may incur noticeable performance penalties.
23
+
19
24
  The current implementation is based on eventlet aware profiler.(For the
20
25
  future, more profilers could be added in to collect more data for analysis.)
21
26
  Profiling all incoming requests and accumulating cpu timing statistics
@@ -1,16 +1,14 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: swift
3
- Version: 2.32.0
3
+ Version: 2.32.1
4
4
  Summary: OpenStack Object Storage
5
5
  Home-page: https://docs.openstack.org/swift/latest/
6
6
  Author: OpenStack
7
7
  Author-email: openstack-discuss@lists.openstack.org
8
- License: UNKNOWN
9
8
  Project-URL: Documentation, https://docs.openstack.org/swift/latest/
10
9
  Project-URL: Bug Tracker, https://bugs.launchpad.net/swift
11
10
  Project-URL: Source Code, https://opendev.org/openstack/swift/
12
11
  Project-URL: Release Notes, https://opendev.org/openstack/swift/src/branch/master/CHANGELOG
13
- Platform: UNKNOWN
14
12
  Classifier: Development Status :: 5 - Production/Stable
15
13
  Classifier: Environment :: OpenStack
16
14
  Classifier: Intended Audience :: Information Technology
@@ -26,38 +24,40 @@ Classifier: Programming Language :: Python :: 3.7
26
24
  Classifier: Programming Language :: Python :: 3.8
27
25
  Classifier: Programming Language :: Python :: 3.9
28
26
  Classifier: Programming Language :: Python :: 3.10
29
- Requires-Dist: PasteDeploy (>=2.0.0)
30
- Requires-Dist: PyECLib (>=1.3.1)
31
- Requires-Dist: cryptography (>=2.0.2)
32
- Requires-Dist: eventlet (>=0.25.0)
33
- Requires-Dist: greenlet (>=0.3.2)
34
- Requires-Dist: lxml (>=3.4.1)
35
- Requires-Dist: requests (>=2.14.2)
36
- Requires-Dist: six (>=1.10.0)
37
- Requires-Dist: xattr (>=0.4) ; (sys_platform!='win32')
27
+ License-File: LICENSE
28
+ License-File: AUTHORS
29
+ Requires-Dist: eventlet >=0.25.0
30
+ Requires-Dist: greenlet >=0.3.2
31
+ Requires-Dist: PasteDeploy >=2.0.0
32
+ Requires-Dist: lxml >=3.4.1
33
+ Requires-Dist: requests >=2.14.2
34
+ Requires-Dist: six >=1.10.0
35
+ Requires-Dist: PyECLib >=1.3.1
36
+ Requires-Dist: cryptography >=2.0.2
37
+ Requires-Dist: xattr >=0.4 ; (sys_platform!='win32')
38
38
  Provides-Extra: keystone
39
- Requires-Dist: keystonemiddleware (>=4.17.0) ; extra == 'keystone'
39
+ Requires-Dist: keystonemiddleware >=4.17.0 ; extra == 'keystone'
40
40
  Provides-Extra: kmip_keymaster
41
- Requires-Dist: pykmip (>=0.7.0) ; extra == 'kmip_keymaster'
41
+ Requires-Dist: pykmip >=0.7.0 ; extra == 'kmip_keymaster'
42
42
  Provides-Extra: kms_keymaster
43
- Requires-Dist: castellan (>=0.13.0) ; extra == 'kms_keymaster'
44
- Requires-Dist: oslo.config (!=4.3.0,!=4.4.0,>=4.0.0) ; extra == 'kms_keymaster'
43
+ Requires-Dist: oslo.config !=4.3.0,!=4.4.0,>=4.0.0 ; extra == 'kms_keymaster'
44
+ Requires-Dist: castellan >=0.13.0 ; extra == 'kms_keymaster'
45
45
  Provides-Extra: test
46
- Requires-Dist: bandit (>=1.1.0) ; extra == 'test'
47
- Requires-Dist: boto3 (>=1.9) ; extra == 'test'
48
- Requires-Dist: boto (>=2.32.1) ; extra == 'test'
49
- Requires-Dist: botocore (>=1.12) ; extra == 'test'
50
- Requires-Dist: coverage (>=5.0.4) ; extra == 'test'
51
- Requires-Dist: docutils (>=0.11) ; extra == 'test'
52
- Requires-Dist: hacking (<2.1.0,>=2.0) ; extra == 'test'
53
- Requires-Dist: keystonemiddleware (>=4.17.0) ; extra == 'test'
54
- Requires-Dist: mock (>=2.0) ; extra == 'test'
55
- Requires-Dist: pytest-cov (>=2.12.1) ; extra == 'test'
56
- Requires-Dist: pytest (>=4.6.11) ; extra == 'test'
57
- Requires-Dist: python-keystoneclient (!=2.1.0,>=2.0.0) ; extra == 'test'
58
- Requires-Dist: python-swiftclient (>=3.2.0) ; extra == 'test'
59
- Requires-Dist: requests-mock (>=1.2.0) ; extra == 'test'
60
- Requires-Dist: stestr (>=2.0.0) ; extra == 'test'
46
+ Requires-Dist: hacking <2.1.0,>=2.0 ; extra == 'test'
47
+ Requires-Dist: coverage >=5.0.4 ; extra == 'test'
48
+ Requires-Dist: pytest >=4.6.11 ; extra == 'test'
49
+ Requires-Dist: pytest-cov >=2.12.1 ; extra == 'test'
50
+ Requires-Dist: stestr >=2.0.0 ; extra == 'test'
51
+ Requires-Dist: mock >=2.0 ; extra == 'test'
52
+ Requires-Dist: python-swiftclient >=3.2.0 ; extra == 'test'
53
+ Requires-Dist: python-keystoneclient !=2.1.0,>=2.0.0 ; extra == 'test'
54
+ Requires-Dist: boto >=2.32.1 ; extra == 'test'
55
+ Requires-Dist: boto3 >=1.9 ; extra == 'test'
56
+ Requires-Dist: botocore >=1.12 ; extra == 'test'
57
+ Requires-Dist: requests-mock >=1.2.0 ; extra == 'test'
58
+ Requires-Dist: keystonemiddleware >=4.17.0 ; extra == 'test'
59
+ Requires-Dist: bandit >=1.1.0 ; extra == 'test'
60
+ Requires-Dist: docutils >=0.11 ; extra == 'test'
61
61
 
62
62
  ===============
63
63
  OpenStack Swift
@@ -220,5 +220,3 @@ Thanks,
220
220
 
221
221
  The Swift Development Team
222
222
 
223
-
224
-
@@ -64,7 +64,7 @@ swift/common/middleware/gatekeeper.py,sha256=OlF-Qk1OZ-XKE3tCoKv0TNn-wOnWLHwvqeF
64
64
  swift/common/middleware/healthcheck.py,sha256=3F4UgutBgQpTYfe_Oh2Kh8cQfUbdT0_k4BrmZnjK97M,2075
65
65
  swift/common/middleware/keystoneauth.py,sha256=JUkP2wI8sq3tL6iWYMK_2S9CQvUtnBbB6Jw8J1LOOzI,26901
66
66
  swift/common/middleware/list_endpoints.py,sha256=LkBJhLoREsw7Sy3O0HEOEXO8k2N4sx32hEvILsJzUow,10060
67
- swift/common/middleware/listing_formats.py,sha256=GEKnBQAe3f0_4NQcLahL9aD8UFNzvzkji-GLBdvksB8,10610
67
+ swift/common/middleware/listing_formats.py,sha256=mtxvTW1sRjO3Z6tI-7OdcAlT4DtRjh-U_M7r-HqkfsI,10285
68
68
  swift/common/middleware/memcache.py,sha256=YENYsIaZZ1wM1IWfmlJzVrAfF0Eb0HF8YAwuj1HupoY,1308
69
69
  swift/common/middleware/name_check.py,sha256=K3PzYs7lW1fe7anYFdcC6ijMChcsvNbtw4Sio8Dec_8,5366
70
70
  swift/common/middleware/proxy_logging.py,sha256=EihjISI2J76ZcuB6CyJZmcDJ5T0RXHDxnZNPwJqrBX4,22026
@@ -76,7 +76,7 @@ swift/common/middleware/staticweb.py,sha256=YzDuKc6AqA7UhQ-AgrB_m8AysyB2xiNjgwvE
76
76
  swift/common/middleware/symlink.py,sha256=qzKpxDg1400uYCVs2ia0f-cz2Ty--sP70qALymCsWfw,35236
77
77
  swift/common/middleware/tempauth.py,sha256=7c1nZ2X2t2F7P4E4yH9XIvC5i2Pao0DHPvXKYAtVQ-E,38318
78
78
  swift/common/middleware/tempurl.py,sha256=WctXbxh970QloVdT3fSpg9Kemr5aJWGuovAV_dnE0zg,35489
79
- swift/common/middleware/xprofile.py,sha256=cn_jvy6fSjm-tfKlMGxGRjbN23oG1QlizxZVzQIkjd8,9918
79
+ swift/common/middleware/xprofile.py,sha256=hO5WCHOKhP-ErgWF43cbEgkC83Y0dVeqoJ2w8B0EN6E,10148
80
80
  swift/common/middleware/crypto/__init__.py,sha256=ZI-Tnqg3AMVgDzAhkWFtAlKFJqXGAzYMzSquwK2OnUk,1498
81
81
  swift/common/middleware/crypto/crypto_utils.py,sha256=VQQuWFFrv0dL7XcBMiKLu3mXSL07hcwJLY8j9FlCLi4,11446
82
82
  swift/common/middleware/crypto/decrypter.py,sha256=D8fPuxcZFtAL5GT82n9UcuLai-k9LuW9o4sAbjXtoCg,20452
@@ -133,7 +133,7 @@ swift/common/middleware/versioned_writes/legacy.py,sha256=OLXfy7h_P-zyBDbxRjhrNe
133
133
  swift/common/middleware/versioned_writes/object_versioning.py,sha256=HAxehk0_f7LiLeHEeE3IScxGGfFMNaeEr8weQILNVvc,66014
134
134
  swift/common/middleware/x_profile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
135
135
  swift/common/middleware/x_profile/exceptions.py,sha256=SqY5ctBPu9_PINZGWQeXt8_OfDFg_Mk8zi3vl-hfW7M,1057
136
- swift/common/middleware/x_profile/html_viewer.py,sha256=6jnRMbBr_f2i9iEj7XsVRnPLPZZm3SHVR6Hvkgpdgig,21405
136
+ swift/common/middleware/x_profile/html_viewer.py,sha256=M7ddSZCes4xnzN1aW7Bft5vNbz34eTNznPwZgNrJwHo,21404
137
137
  swift/common/middleware/x_profile/profile_model.py,sha256=E7YoHPvlbSawaWzlSRmicsJZK0Nh7lA1RJpXb9Dw0r8,10237
138
138
  swift/common/ring/__init__.py,sha256=WgGFseZj8r2UtBCBcZiCgzbUoWCGv4ND1MCEv5IW7aA,758
139
139
  swift/common/ring/builder.py,sha256=N61Pcx2vX7JAnEdXR3HR12vd9iC4htOImo-rBKuswf0,81478
@@ -188,49 +188,49 @@ swift/proxy/controllers/base.py,sha256=744QKztsB7HM324Y1qeSBn18O71Wz2S5DGEVW5WZX
188
188
  swift/proxy/controllers/container.py,sha256=nP6-1AwxJOTUk4xw_b47OXuve-MX04YrpuOaM0qMho8,37762
189
189
  swift/proxy/controllers/info.py,sha256=QSvBwBJjwO3QIktINMCjcYgBi-QAi3wHWKmyf4AtQz8,3859
190
190
  swift/proxy/controllers/obj.py,sha256=HuqFGRHu3yc_trLeSeStPb5N3O5LVUkGxgnZIXM09u8,151050
191
- swift-2.32.0.data/scripts/swift-account-audit,sha256=m6SBGlpb1pQG02fknJWSk69GkpxCtNuBeYfSKHRuBVM,16683
192
- swift-2.32.0.data/scripts/swift-account-auditor,sha256=7Rv7iNLdx_AFPyDiCfBIlI2MyktnGUaRFCbclhs0aIw,872
193
- swift-2.32.0.data/scripts/swift-account-info,sha256=fmwMDT6NL5L0sAiRKeBsdJWZ03A6IvJFiGMO3zNNDcY,1716
194
- swift-2.32.0.data/scripts/swift-account-reaper,sha256=cShVUVEAYare4Y7_YnvQq_sk5TRa_P6IpJmIEDndhoI,869
195
- swift-2.32.0.data/scripts/swift-account-replicator,sha256=3WfAFxjOhQtBKA_Kp8XHYjdlhc749MuiXLhDV0CwwvA,1424
196
- swift-2.32.0.data/scripts/swift-account-server,sha256=msohuJQi0IhUcwcxKsce1Nzo0fe-EQgSqmPouVNE3E0,847
197
- swift-2.32.0.data/scripts/swift-config,sha256=OFhAuKVjUcV3XH-GZ3ZyiqN0QR7iCkzoRYDoXPMYHkk,3081
198
- swift-2.32.0.data/scripts/swift-container-auditor,sha256=_6w3v5m6--Ly1P8Hr5ymVVWcLzkcVJrXouTGjlM73yI,878
199
- swift-2.32.0.data/scripts/swift-container-info,sha256=E9XsNRZxxRx4U7gnjRwJmO70OZyDzLfON2H90yvobuk,1946
200
- swift-2.32.0.data/scripts/swift-container-reconciler,sha256=OkLmgJWhXgyJAyjfMwyXC5YV6hJtLCSFTJCZ8GpSgJE,838
201
- swift-2.32.0.data/scripts/swift-container-replicator,sha256=mpTaU5JGCPmP8es4ImDchJcQyjGj1C9YpeyQOg6CxWE,1430
202
- swift-2.32.0.data/scripts/swift-container-server,sha256=iJAbVpY3UG85va-4hyLdWwkBGnTeeSS68l__4P-1cQA,849
203
- swift-2.32.0.data/scripts/swift-container-sharder,sha256=983bTHxlrcum_ABazWb88yKoBy7Opyy5p9tbIeyk_Gk,1693
204
- swift-2.32.0.data/scripts/swift-container-sync,sha256=CstcpsvwRxfKoIlnSRN5JR9DuyWtVFKDTWQoHAhyC4g,869
205
- swift-2.32.0.data/scripts/swift-container-updater,sha256=9V8fkM0jikjtAXSm-6Tvx-veJxGXCQyC1W1BMCelNew,878
206
- swift-2.32.0.data/scripts/swift-dispersion-populate,sha256=ZC4Z4W4NjmQoQu3L76lJsuOppfy1OBBcr4RIVd3vNGY,11409
207
- swift-2.32.0.data/scripts/swift-dispersion-report,sha256=aY4GzuRqTKERW0hm0ot6VYDk139lU1VDP30cjjlo-eA,726
208
- swift-2.32.0.data/scripts/swift-drive-audit,sha256=-VqME4BTMs3Trdq6jqfB8M23ChGD9nlWG2rLx1QRxe0,10383
209
- swift-2.32.0.data/scripts/swift-form-signature,sha256=2FG-zmTeF0F1xX15_VtWdk4_qeJxutk3S5KdoVk2rF0,681
210
- swift-2.32.0.data/scripts/swift-get-nodes,sha256=tKZdixw9GkNWS7GmFMtaqM_RgI_sgikwDbPmeYc12fQ,2817
211
- swift-2.32.0.data/scripts/swift-init,sha256=q5NOmFOTWJ34g5L6LwzSXzbGCjt_y3az8iz7wQ1f1rA,5097
212
- swift-2.32.0.data/scripts/swift-object-auditor,sha256=wS5U9bhxE28CO72tV5dQKmTaaklyCuAHK_ealswjiXs,1212
213
- swift-2.32.0.data/scripts/swift-object-expirer,sha256=8SWD9EU28aEdrDm6qxIGmaH7ACkdn-HX1e3_Lr7vNcs,1494
214
- swift-2.32.0.data/scripts/swift-object-info,sha256=3oggJ3ZF531W7LM5CKYR1QEpK1rW2Cdt_3o1zicz1wk,1986
215
- swift-2.32.0.data/scripts/swift-object-reconstructor,sha256=dnm1p2jHrES8-6lLNGAEuw0wvrqWiS74mqgLll7LLxI,1431
216
- swift-2.32.0.data/scripts/swift-object-relinker,sha256=7_srgcnBhvaPgmifZeRb9IreGR0KeQWxkHeWw1NvY-w,668
217
- swift-2.32.0.data/scripts/swift-object-replicator,sha256=aLlEMBR6RVOw8UFm4tqtBZNPntrYxgQHbxjhxMQZVsg,1644
218
- swift-2.32.0.data/scripts/swift-object-server,sha256=T9QaeHkKMtTsXpZOCrC_Pj8RE2FQR3foYksjV6vf5tg,970
219
- swift-2.32.0.data/scripts/swift-object-updater,sha256=bwG2KI9cGCDPKYzpnfIYHT6x4y1pCJ4dgqUhVZmnxIQ,866
220
- swift-2.32.0.data/scripts/swift-oldies,sha256=Wovqw-JpSPp26Bhj_mC42pEzNabNx7H_HGhtyqLtN3s,3346
221
- swift-2.32.0.data/scripts/swift-orphans,sha256=LasdlgiZHGpC7U20gHVl49mBDA2C2zj-_llCGKepLJk,5005
222
- swift-2.32.0.data/scripts/swift-proxy-server,sha256=xoLrYohQri2cZwOsHB70xHMhLPyspdiTuse0-MdYFOk,845
223
- swift-2.32.0.data/scripts/swift-recon,sha256=08VMHgSFgI9w-IND7PjFvyyVwGTJiVAjDEjrQjSMBow,725
224
- swift-2.32.0.data/scripts/swift-recon-cron,sha256=7y7_yXMD_DUt_hSWLUjtiGDZFavQw641vfWW0z99VuQ,2911
225
- swift-2.32.0.data/scripts/swift-reconciler-enqueue,sha256=MUj9Zo_sgBsHxG-CJ675FiJn0duMa5EJfKZAoiO6mpM,2547
226
- swift-2.32.0.data/scripts/swift-ring-builder,sha256=T4fbV9Rf1Sa6eZVnrUNQxo_v9pOsXlKtP5CeI-BV4m8,1093
227
- swift-2.32.0.data/scripts/swift-ring-builder-analyzer,sha256=184GLK94EO7EQhO3Rc8G61sPttJVNOqvMZoD_R83bMM,724
228
- swift-2.32.0.data/scripts/swift-ring-composer,sha256=AnR7DIcCZ-cgLpgyCiRaDgL1BZaRWJUPhtQ03VhkDKI,700
229
- swift-2.32.0.dist-info/AUTHORS,sha256=rgzJnj-X7PE5eC58S6-FTPD0YeuWnLmw7NU5r0R6gvU,17927
230
- swift-2.32.0.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
231
- swift-2.32.0.dist-info/METADATA,sha256=xgWW0C4wvCVeb-RoB85nDn97M-U9ZeJ0VHUs2hAJAGA,8673
232
- swift-2.32.0.dist-info/WHEEL,sha256=kGT74LWyRUZrL4VgLh6_g12IeVl_9u9ZVhadrgXZUEY,110
233
- swift-2.32.0.dist-info/entry_points.txt,sha256=_-B-ljosswQCW6_kbpARA6B2_c0n8sEnFSPQuzuOhkQ,2973
234
- swift-2.32.0.dist-info/pbr.json,sha256=PIoNB37U8EXcXDAD-nzGviPelqIh8vdKUBUE981cVl4,48
235
- swift-2.32.0.dist-info/top_level.txt,sha256=nVzNOToyzq0MM7JtrpalfOaPV9UIfm_lXhHX0duhVps,6
236
- swift-2.32.0.dist-info/RECORD,,
191
+ swift-2.32.1.data/scripts/swift-account-audit,sha256=m6SBGlpb1pQG02fknJWSk69GkpxCtNuBeYfSKHRuBVM,16683
192
+ swift-2.32.1.data/scripts/swift-account-auditor,sha256=7Rv7iNLdx_AFPyDiCfBIlI2MyktnGUaRFCbclhs0aIw,872
193
+ swift-2.32.1.data/scripts/swift-account-info,sha256=fmwMDT6NL5L0sAiRKeBsdJWZ03A6IvJFiGMO3zNNDcY,1716
194
+ swift-2.32.1.data/scripts/swift-account-reaper,sha256=cShVUVEAYare4Y7_YnvQq_sk5TRa_P6IpJmIEDndhoI,869
195
+ swift-2.32.1.data/scripts/swift-account-replicator,sha256=3WfAFxjOhQtBKA_Kp8XHYjdlhc749MuiXLhDV0CwwvA,1424
196
+ swift-2.32.1.data/scripts/swift-account-server,sha256=msohuJQi0IhUcwcxKsce1Nzo0fe-EQgSqmPouVNE3E0,847
197
+ swift-2.32.1.data/scripts/swift-config,sha256=OFhAuKVjUcV3XH-GZ3ZyiqN0QR7iCkzoRYDoXPMYHkk,3081
198
+ swift-2.32.1.data/scripts/swift-container-auditor,sha256=_6w3v5m6--Ly1P8Hr5ymVVWcLzkcVJrXouTGjlM73yI,878
199
+ swift-2.32.1.data/scripts/swift-container-info,sha256=E9XsNRZxxRx4U7gnjRwJmO70OZyDzLfON2H90yvobuk,1946
200
+ swift-2.32.1.data/scripts/swift-container-reconciler,sha256=OkLmgJWhXgyJAyjfMwyXC5YV6hJtLCSFTJCZ8GpSgJE,838
201
+ swift-2.32.1.data/scripts/swift-container-replicator,sha256=mpTaU5JGCPmP8es4ImDchJcQyjGj1C9YpeyQOg6CxWE,1430
202
+ swift-2.32.1.data/scripts/swift-container-server,sha256=iJAbVpY3UG85va-4hyLdWwkBGnTeeSS68l__4P-1cQA,849
203
+ swift-2.32.1.data/scripts/swift-container-sharder,sha256=983bTHxlrcum_ABazWb88yKoBy7Opyy5p9tbIeyk_Gk,1693
204
+ swift-2.32.1.data/scripts/swift-container-sync,sha256=CstcpsvwRxfKoIlnSRN5JR9DuyWtVFKDTWQoHAhyC4g,869
205
+ swift-2.32.1.data/scripts/swift-container-updater,sha256=9V8fkM0jikjtAXSm-6Tvx-veJxGXCQyC1W1BMCelNew,878
206
+ swift-2.32.1.data/scripts/swift-dispersion-populate,sha256=ZC4Z4W4NjmQoQu3L76lJsuOppfy1OBBcr4RIVd3vNGY,11409
207
+ swift-2.32.1.data/scripts/swift-dispersion-report,sha256=aY4GzuRqTKERW0hm0ot6VYDk139lU1VDP30cjjlo-eA,726
208
+ swift-2.32.1.data/scripts/swift-drive-audit,sha256=-VqME4BTMs3Trdq6jqfB8M23ChGD9nlWG2rLx1QRxe0,10383
209
+ swift-2.32.1.data/scripts/swift-form-signature,sha256=2FG-zmTeF0F1xX15_VtWdk4_qeJxutk3S5KdoVk2rF0,681
210
+ swift-2.32.1.data/scripts/swift-get-nodes,sha256=tKZdixw9GkNWS7GmFMtaqM_RgI_sgikwDbPmeYc12fQ,2817
211
+ swift-2.32.1.data/scripts/swift-init,sha256=q5NOmFOTWJ34g5L6LwzSXzbGCjt_y3az8iz7wQ1f1rA,5097
212
+ swift-2.32.1.data/scripts/swift-object-auditor,sha256=wS5U9bhxE28CO72tV5dQKmTaaklyCuAHK_ealswjiXs,1212
213
+ swift-2.32.1.data/scripts/swift-object-expirer,sha256=8SWD9EU28aEdrDm6qxIGmaH7ACkdn-HX1e3_Lr7vNcs,1494
214
+ swift-2.32.1.data/scripts/swift-object-info,sha256=3oggJ3ZF531W7LM5CKYR1QEpK1rW2Cdt_3o1zicz1wk,1986
215
+ swift-2.32.1.data/scripts/swift-object-reconstructor,sha256=dnm1p2jHrES8-6lLNGAEuw0wvrqWiS74mqgLll7LLxI,1431
216
+ swift-2.32.1.data/scripts/swift-object-relinker,sha256=7_srgcnBhvaPgmifZeRb9IreGR0KeQWxkHeWw1NvY-w,668
217
+ swift-2.32.1.data/scripts/swift-object-replicator,sha256=aLlEMBR6RVOw8UFm4tqtBZNPntrYxgQHbxjhxMQZVsg,1644
218
+ swift-2.32.1.data/scripts/swift-object-server,sha256=T9QaeHkKMtTsXpZOCrC_Pj8RE2FQR3foYksjV6vf5tg,970
219
+ swift-2.32.1.data/scripts/swift-object-updater,sha256=bwG2KI9cGCDPKYzpnfIYHT6x4y1pCJ4dgqUhVZmnxIQ,866
220
+ swift-2.32.1.data/scripts/swift-oldies,sha256=Wovqw-JpSPp26Bhj_mC42pEzNabNx7H_HGhtyqLtN3s,3346
221
+ swift-2.32.1.data/scripts/swift-orphans,sha256=LasdlgiZHGpC7U20gHVl49mBDA2C2zj-_llCGKepLJk,5005
222
+ swift-2.32.1.data/scripts/swift-proxy-server,sha256=xoLrYohQri2cZwOsHB70xHMhLPyspdiTuse0-MdYFOk,845
223
+ swift-2.32.1.data/scripts/swift-recon,sha256=08VMHgSFgI9w-IND7PjFvyyVwGTJiVAjDEjrQjSMBow,725
224
+ swift-2.32.1.data/scripts/swift-recon-cron,sha256=7y7_yXMD_DUt_hSWLUjtiGDZFavQw641vfWW0z99VuQ,2911
225
+ swift-2.32.1.data/scripts/swift-reconciler-enqueue,sha256=MUj9Zo_sgBsHxG-CJ675FiJn0duMa5EJfKZAoiO6mpM,2547
226
+ swift-2.32.1.data/scripts/swift-ring-builder,sha256=T4fbV9Rf1Sa6eZVnrUNQxo_v9pOsXlKtP5CeI-BV4m8,1093
227
+ swift-2.32.1.data/scripts/swift-ring-builder-analyzer,sha256=184GLK94EO7EQhO3Rc8G61sPttJVNOqvMZoD_R83bMM,724
228
+ swift-2.32.1.data/scripts/swift-ring-composer,sha256=AnR7DIcCZ-cgLpgyCiRaDgL1BZaRWJUPhtQ03VhkDKI,700
229
+ swift-2.32.1.dist-info/AUTHORS,sha256=rgzJnj-X7PE5eC58S6-FTPD0YeuWnLmw7NU5r0R6gvU,17927
230
+ swift-2.32.1.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
231
+ swift-2.32.1.dist-info/METADATA,sha256=OEXtGhWcH3PP6vIczzVrHHkRDpGvFJEb024X1sJNgzQ,8624
232
+ swift-2.32.1.dist-info/WHEEL,sha256=OpXWERl2xLPRHTvd2ZXo_iluPEQd8uSbYkJ53NAER_Y,109
233
+ swift-2.32.1.dist-info/entry_points.txt,sha256=duraQTPAcYbJ-_4KY6MwVxn2BfsQD7y0RejOLDUcxm8,2972
234
+ swift-2.32.1.dist-info/pbr.json,sha256=g08ySEjF6gs75lu0MBIWChyICQrVhXotYx6z_cn6Fys,48
235
+ swift-2.32.1.dist-info/top_level.txt,sha256=nVzNOToyzq0MM7JtrpalfOaPV9UIfm_lXhHX0duhVps,6
236
+ swift-2.32.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.34.2)
2
+ Generator: setuptools (75.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any
@@ -54,4 +54,3 @@ replication.fs = swift.obj.diskfile:DiskFileManager
54
54
 
55
55
  [swift.object_audit_watcher]
56
56
  dark_data = swift.obj.watchers.dark_data:DarkDataWatcher
57
-
@@ -0,0 +1 @@
1
+ {"git_version": "1cc23d54b", "is_release": true}
@@ -1 +0,0 @@
1
- {"git_version": "191b627b8", "is_release": true}