yhttp 9.2.0__tar.gz → 9.3.0__tar.gz

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 (61) hide show
  1. {yhttp-9.2.0 → yhttp-9.3.0}/PKG-INFO +1 -1
  2. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_request.py +1 -0
  3. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/request.py +15 -0
  4. yhttp-9.3.0/yhttp/core/version.py +1 -0
  5. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/PKG-INFO +1 -1
  6. yhttp-9.2.0/yhttp/core/version.py +0 -1
  7. {yhttp-9.2.0 → yhttp-9.3.0}/LICENSE +0 -0
  8. {yhttp-9.2.0 → yhttp-9.3.0}/README.md +0 -0
  9. {yhttp-9.2.0 → yhttp-9.3.0}/setup.cfg +0 -0
  10. {yhttp-9.2.0 → yhttp-9.3.0}/setup.py +0 -0
  11. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_application.py +0 -0
  12. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_applicationcli.py +0 -0
  13. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_builtincli_serve.py +0 -0
  14. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_builtincli_version.py +0 -0
  15. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_builtincli_yhttp_version.py +0 -0
  16. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_cookie.py +0 -0
  17. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_cookieset.py +0 -0
  18. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_extension.py +0 -0
  19. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_form.py +0 -0
  20. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_form_json.py +0 -0
  21. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_form_multipart.py +0 -0
  22. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_form_urlencoded.py +0 -0
  23. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_fswatcher.py +0 -0
  24. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_guard.py +0 -0
  25. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_guard_body.py +0 -0
  26. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_guard_contenttypes.py +0 -0
  27. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_guard_query.py +0 -0
  28. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_headerset.py +0 -0
  29. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_jsonencoding.py +0 -0
  30. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_locale.py +0 -0
  31. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_middleware.py +0 -0
  32. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_multidict.py +0 -0
  33. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_multipart.py +0 -0
  34. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_querystring.py +0 -0
  35. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_responseheaders.py +0 -0
  36. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_rewrite.py +0 -0
  37. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_rewritecli.py +0 -0
  38. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_routing.py +0 -0
  39. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_static.py +0 -0
  40. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_statuses.py +0 -0
  41. {yhttp-9.2.0 → yhttp-9.3.0}/tests/test_statushandler.py +0 -0
  42. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/__init__.py +0 -0
  43. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/application.py +0 -0
  44. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/cli.py +0 -0
  45. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/contenttypes.py +0 -0
  46. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/cookieset.py +0 -0
  47. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/fswatcher.py +0 -0
  48. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/guard.py +0 -0
  49. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/headerset.py +0 -0
  50. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/main.py +0 -0
  51. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/multidict.py +0 -0
  52. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/multipart.py +0 -0
  53. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/response.py +0 -0
  54. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/rewrite.py +0 -0
  55. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/static.py +0 -0
  56. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp/core/statuses.py +0 -0
  57. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/SOURCES.txt +0 -0
  58. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/dependency_links.txt +0 -0
  59. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/entry_points.txt +0 -0
  60. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/requires.txt +0 -0
  61. {yhttp-9.2.0 → yhttp-9.3.0}/yhttp.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yhttp
3
- Version: 9.2.0
3
+ Version: 9.3.0
4
4
  Summary: A very micro http framework.
5
5
  Home-page: http://github.com/yhttp/yhttp
6
6
  Author: Vahid Mardani
@@ -9,6 +9,7 @@ def test_request(app, httpreq):
9
9
  assert req.headers.get('foo-bar') == 'baz'
10
10
  assert req.contenttype is None
11
11
  assert req.language == 'fa'
12
+ assert req.locales_oldstyle == ['fa_IR']
12
13
 
13
14
  with httpreq('/foo?bar=baz', headers={
14
15
  'Foo-Bar': 'baz',
@@ -37,6 +37,21 @@ class Request:
37
37
  self.environ = environ
38
38
  self.response = response
39
39
 
40
+ @cached_property
41
+ def locales_oldstyle(self):
42
+ """Same as the :attr:`Request.locales` but in old-style(system) format.
43
+
44
+ It means the dash(`-`) replaced with underscore(`_`) in all entries.
45
+ for example it returns `fa_IR` instead of `fa-IR`.
46
+
47
+ It will be ``['*']`` if ``Accept-Languages`` header is not presents in
48
+ the request.
49
+
50
+ .. versionadded:: 9.3
51
+ """
52
+
53
+ return [locale.replace('-', '_') for locale in self.locales]
54
+
40
55
  @cached_property
41
56
  def locales(self):
42
57
  """List of agent's locales ordered based on priority.
@@ -0,0 +1 @@
1
+ __version__ = '9.3.0'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yhttp
3
- Version: 9.2.0
3
+ Version: 9.3.0
4
4
  Summary: A very micro http framework.
5
5
  Home-page: http://github.com/yhttp/yhttp
6
6
  Author: Vahid Mardani
@@ -1 +0,0 @@
1
- __version__ = '9.2.0'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes