flow.record 3.13.dev1__tar.gz → 3.13.dev2__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 (78) hide show
  1. {flow.record-3.13.dev1/flow.record.egg-info → flow.record-3.13.dev2}/PKG-INFO +1 -1
  2. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/__init__.py +14 -2
  3. flow.record-3.13.dev2/flow/record/version.py +16 -0
  4. {flow.record-3.13.dev1 → flow.record-3.13.dev2/flow.record.egg-info}/PKG-INFO +1 -1
  5. flow.record-3.13.dev1/flow/record/version.py +0 -4
  6. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/COPYRIGHT +0 -0
  7. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/LICENSE +0 -0
  8. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/MANIFEST.in +0 -0
  9. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/README.md +0 -0
  10. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/examples/filesystem.py +0 -0
  11. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/examples/passivedns.py +0 -0
  12. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/examples/records.json +0 -0
  13. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/examples/tcpconn.py +0 -0
  14. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/__init__.py +0 -0
  15. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/__init__.py +0 -0
  16. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/archive.py +0 -0
  17. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/avro.py +0 -0
  18. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/broker.py +0 -0
  19. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/csvfile.py +0 -0
  20. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/elastic.py +0 -0
  21. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/jsonfile.py +0 -0
  22. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/line.py +0 -0
  23. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/mongo.py +0 -0
  24. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/split.py +0 -0
  25. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/splunk.py +0 -0
  26. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/stream.py +0 -0
  27. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/text.py +0 -0
  28. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/adapter/xlsx.py +0 -0
  29. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/base.py +0 -0
  30. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/exceptions.py +0 -0
  31. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/credential.py +0 -0
  32. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/net/__init__.py +0 -0
  33. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/net/ip.py +0 -0
  34. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/net/ipv4.py +0 -0
  35. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/net/tcp.py +0 -0
  36. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/fieldtypes/net/udp.py +0 -0
  37. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/jsonpacker.py +0 -0
  38. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/packer.py +0 -0
  39. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/selector.py +0 -0
  40. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/stream.py +0 -0
  41. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/tools/__init__.py +0 -0
  42. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/tools/geoip.py +0 -0
  43. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/tools/rdump.py +0 -0
  44. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/utils.py +0 -0
  45. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow/record/whitelist.py +0 -0
  46. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow.record.egg-info/SOURCES.txt +0 -0
  47. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow.record.egg-info/dependency_links.txt +0 -0
  48. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow.record.egg-info/entry_points.txt +0 -0
  49. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow.record.egg-info/requires.txt +0 -0
  50. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/flow.record.egg-info/top_level.txt +0 -0
  51. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/pyproject.toml +0 -0
  52. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/setup.cfg +0 -0
  53. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/__init__.py +0 -0
  54. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/_utils.py +0 -0
  55. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/docs/Makefile +0 -0
  56. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/docs/conf.py +0 -0
  57. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/docs/index.rst +0 -0
  58. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/selector_explain_example.py +0 -0
  59. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/standalone_test.py +0 -0
  60. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_avro.py +0 -0
  61. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_avro_adapter.py +0 -0
  62. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_compiled_selector.py +0 -0
  63. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_deprecations.py +0 -0
  64. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_fieldtype_ip.py +0 -0
  65. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_fieldtypes.py +0 -0
  66. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_json_packer.py +0 -0
  67. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_json_record_adapter.py +0 -0
  68. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_multi_timestamp.py +0 -0
  69. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_packer.py +0 -0
  70. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_rdump.py +0 -0
  71. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_record.py +0 -0
  72. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_record_adapter.py +0 -0
  73. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_record_descriptor.py +0 -0
  74. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_regression.py +0 -0
  75. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_selector.py +0 -0
  76. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/test_splunk_adapter.py +0 -0
  77. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tests/utils_inspect.py +0 -0
  78. {flow.record-3.13.dev1 → flow.record-3.13.dev2}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: flow.record
3
- Version: 3.13.dev1
3
+ Version: 3.13.dev2
4
4
  Summary: A library for defining and creating structured data (called records) that can be streamed to disk or piped to other tools that use flow.record
5
5
  Author-email: Dissect Team <dissect@fox-it.com>
6
6
  License: Affero General Public License v3
@@ -15,9 +15,14 @@ from typing import Any, Optional, Tuple
15
15
  from urllib.parse import urlparse
16
16
 
17
17
  try:
18
- from zoneinfo import ZoneInfo, ZoneInfoNotFoundError
18
+ try:
19
+ from zoneinfo import ZoneInfo, ZoneInfoNotFoundError
20
+ except ImportError:
21
+ from backports.zoneinfo import ZoneInfo, ZoneInfoNotFoundError
22
+ HAS_ZONE_INFO = True
19
23
  except ImportError:
20
- from backports.zoneinfo import ZoneInfo, ZoneInfoNotFoundError
24
+ HAS_ZONE_INFO = False
25
+
21
26
 
22
27
  from flow.record.base import FieldType
23
28
 
@@ -50,9 +55,16 @@ def flow_record_tz(*, default_tz: str = "UTC") -> Optional[ZoneInfo | UTC]:
50
55
  Returns:
51
56
  None if ``FLOW_RECORD_TZ=NONE`` otherwise ``ZoneInfo(FLOW_RECORD_TZ)`` or ``UTC`` if ZoneInfo is not found.
52
57
  """
58
+
53
59
  tz = os.environ.get("FLOW_RECORD_TZ", default_tz)
54
60
  if tz.upper() == "NONE":
55
61
  return None
62
+
63
+ if not HAS_ZONE_INFO:
64
+ if tz != "UTC":
65
+ warnings.warn("Cannot use FLOW_RECORD_TZ due to missing zoneinfo module, defaulting to 'UTC'.")
66
+ return UTC
67
+
56
68
  try:
57
69
  return ZoneInfo(tz)
58
70
  except ZoneInfoNotFoundError as exc:
@@ -0,0 +1,16 @@
1
+ # file generated by setuptools_scm
2
+ # don't change, don't track in version control
3
+ TYPE_CHECKING = False
4
+ if TYPE_CHECKING:
5
+ from typing import Tuple, Union
6
+ VERSION_TUPLE = Tuple[Union[int, str], ...]
7
+ else:
8
+ VERSION_TUPLE = object
9
+
10
+ version: str
11
+ __version__: str
12
+ __version_tuple__: VERSION_TUPLE
13
+ version_tuple: VERSION_TUPLE
14
+
15
+ __version__ = version = '3.13.dev2'
16
+ __version_tuple__ = version_tuple = (3, 13, 'dev2')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: flow.record
3
- Version: 3.13.dev1
3
+ Version: 3.13.dev2
4
4
  Summary: A library for defining and creating structured data (called records) that can be streamed to disk or piped to other tools that use flow.record
5
5
  Author-email: Dissect Team <dissect@fox-it.com>
6
6
  License: Affero General Public License v3
@@ -1,4 +0,0 @@
1
- # file generated by setuptools_scm
2
- # don't change, don't track in version control
3
- __version__ = version = '3.13.dev1'
4
- __version_tuple__ = version_tuple = (3, 13, 'dev1')
File without changes
File without changes