dissect.clfs 1.11.dev1__tar.gz → 1.12.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 (33) hide show
  1. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/PKG-INFO +1 -1
  2. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect/clfs/c_clfs.py +2 -1
  3. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect/clfs/container.py +0 -2
  4. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect/clfs/exceptions.py +7 -4
  5. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect.clfs.egg-info/PKG-INFO +1 -1
  6. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect.clfs.egg-info/SOURCES.txt +4 -4
  7. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/pyproject.toml +22 -3
  8. {dissect_clfs-1.11.dev1/tests/docs → dissect_clfs-1.12.dev2/tests/_docs}/conf.py +2 -0
  9. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tox.ini +4 -4
  10. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/.git-blame-ignore-revs +0 -0
  11. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/COPYRIGHT +0 -0
  12. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/LICENSE +0 -0
  13. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/MANIFEST.in +0 -0
  14. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/README.md +0 -0
  15. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect/clfs/__init__.py +0 -0
  16. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect/clfs/blf.py +0 -0
  17. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect.clfs.egg-info/dependency_links.txt +0 -0
  18. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect.clfs.egg-info/requires.txt +0 -0
  19. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/dissect.clfs.egg-info/top_level.txt +0 -0
  20. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/setup.cfg +0 -0
  21. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/__init__.py +0 -0
  22. {dissect_clfs-1.11.dev1/tests/docs → dissect_clfs-1.12.dev2/tests/_docs}/Makefile +0 -0
  23. {dissect_clfs-1.11.dev1/tests/docs → dissect_clfs-1.12.dev2/tests/_docs}/index.rst +0 -0
  24. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/conftest.py +0 -0
  25. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/data/DRIVERS{53b39e70-18c4-11ea-a811-000d3aa4692b}.TM.blf +0 -0
  26. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/data/DRIVERS{53b39e70-18c4-11ea-a811-000d3aa4692b}.TMContainer00000000000000000001.regtrans-ms +0 -0
  27. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/data/bad_control_record.blf +0 -0
  28. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/data/control_record.blf +0 -0
  29. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/data/invalid_control_record.blf +0 -0
  30. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/test_container.py +0 -0
  31. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/test_control_record.py +0 -0
  32. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/test_record_header.py +0 -0
  33. {dissect_clfs-1.11.dev1 → dissect_clfs-1.12.dev2}/tests/test_validate_blf.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dissect.clfs
3
- Version: 1.11.dev1
3
+ Version: 1.12.dev2
4
4
  Summary: A Dissect module implementing a parser for the CLFS (Common Log File System) file system of Windows
5
5
  Author-email: Dissect Team <dissect@fox-it.com>
6
6
  License-Expression: AGPL-3.0-or-later
@@ -1,3 +1,5 @@
1
+ from __future__ import annotations
2
+
1
3
  import io
2
4
  from typing import BinaryIO
3
5
 
@@ -333,5 +335,4 @@ class BlockHeader:
333
335
 
334
336
  def open(self) -> io.BytesIO:
335
337
  """Return a file-like object of the block header."""
336
-
337
338
  return io.BytesIO(self.data)
@@ -27,7 +27,6 @@ class Container:
27
27
  Returns:
28
28
  buf, cur_record_offset: Tuple containing a file-like object of the log block and the current offset.
29
29
  """
30
-
31
30
  try:
32
31
  log_block = BlockHeader(fh=self.fh, offset=offset)
33
32
  except EOFError:
@@ -42,7 +41,6 @@ class Container:
42
41
 
43
42
  def records(self) -> Iterator[tuple[int, bytes, bytes]]:
44
43
  """Parse the records that are present within the log block."""
45
-
46
44
  log_block_offset = self.offset
47
45
 
48
46
  buf, cur_record_offset = self._open_block(log_block_offset)
@@ -1,18 +1,21 @@
1
+ from __future__ import annotations
2
+
3
+
1
4
  class Error(Exception):
2
5
  pass
3
6
 
4
7
 
5
8
  class InvalidRecordBlockError(Error):
6
- """Exception raised when the record block contains invalid data"""
9
+ """Exception raised when the record block contains invalid data."""
7
10
 
8
11
 
9
12
  class InvalidBLFError(Error):
10
- """Exception raised if the validation of the BLF file fails"""
13
+ """Exception raised if the validation of the BLF file fails."""
11
14
 
12
15
 
13
16
  class InvalidSymbolTableError(Error):
14
- """Exception raised when the symbol table(s) fail to parse"""
17
+ """Exception raised when the symbol table(s) fail to parse."""
15
18
 
16
19
 
17
20
  class InvalidContextError(Error):
18
- """Exception raised when the context type doesn't match the context to be parsed"""
21
+ """Exception raised when the context type doesn't match the context to be parsed."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dissect.clfs
3
- Version: 1.11.dev1
3
+ Version: 1.12.dev2
4
4
  Summary: A Dissect module implementing a parser for the CLFS (Common Log File System) file system of Windows
5
5
  Author-email: Dissect Team <dissect@fox-it.com>
6
6
  License-Expression: AGPL-3.0-or-later
@@ -21,11 +21,11 @@ tests/test_container.py
21
21
  tests/test_control_record.py
22
22
  tests/test_record_header.py
23
23
  tests/test_validate_blf.py
24
+ tests/_docs/Makefile
25
+ tests/_docs/conf.py
26
+ tests/_docs/index.rst
24
27
  tests/data/DRIVERS{53b39e70-18c4-11ea-a811-000d3aa4692b}.TM.blf
25
28
  tests/data/DRIVERS{53b39e70-18c4-11ea-a811-000d3aa4692b}.TMContainer00000000000000000001.regtrans-ms
26
29
  tests/data/bad_control_record.blf
27
30
  tests/data/control_record.blf
28
- tests/data/invalid_control_record.blf
29
- tests/docs/Makefile
30
- tests/docs/conf.py
31
- tests/docs/index.rst
31
+ tests/data/invalid_control_record.blf
@@ -92,7 +92,7 @@ select = [
92
92
  "SLOT",
93
93
  "SIM",
94
94
  "TID",
95
- "TCH",
95
+ "TC",
96
96
  "PTH",
97
97
  "PLC",
98
98
  "TRY",
@@ -100,15 +100,34 @@ select = [
100
100
  "PERF",
101
101
  "FURB",
102
102
  "RUF",
103
+ "D"
103
104
  ]
104
- ignore = ["E203", "B904", "UP024", "ANN002", "ANN003", "ANN204", "ANN401", "SIM105", "TRY003"]
105
+ ignore = [
106
+ "E203", "B904", "UP024", "ANN002", "ANN003", "ANN204", "ANN401", "SIM105", "TRY003", "PLC0415",
107
+ # Ignore some pydocstyle rules for now as they require a larger cleanup
108
+ "D1",
109
+ "D205",
110
+ "D301",
111
+ "D417",
112
+ # Seems bugged: https://github.com/astral-sh/ruff/issues/16824
113
+ "D402",
114
+ ]
115
+ future-annotations = true
116
+
117
+
118
+ [tool.ruff.lint.pydocstyle]
119
+ convention = "google"
120
+
121
+ [tool.ruff.lint.flake8-type-checking]
122
+ strict = true
105
123
 
106
124
  [tool.ruff.lint.per-file-ignores]
107
- "tests/docs/**" = ["INP001"]
125
+ "tests/_docs/**" = ["INP001"]
108
126
 
109
127
  [tool.ruff.lint.isort]
110
128
  known-first-party = ["dissect.clfs"]
111
129
  known-third-party = ["dissect"]
130
+ required-imports = ["from __future__ import annotations"]
112
131
 
113
132
  [tool.setuptools.packages.find]
114
133
  include = ["dissect.*"]
@@ -1,3 +1,5 @@
1
+ from __future__ import annotations
2
+
1
3
  extensions = [
2
4
  "autoapi.extension",
3
5
  "sphinx.ext.autodoc",
@@ -60,12 +60,12 @@ deps =
60
60
  sphinx-design
61
61
  furo
62
62
  commands =
63
- make -C tests/docs clean
64
- make -C tests/docs html
63
+ make -C tests/_docs clean
64
+ make -C tests/_docs html
65
65
 
66
66
  [testenv:docs-linkcheck]
67
67
  allowlist_externals = make
68
68
  deps = {[testenv:docs-build]deps}
69
69
  commands =
70
- make -C tests/docs clean
71
- make -C tests/docs linkcheck
70
+ make -C tests/_docs clean
71
+ make -C tests/_docs linkcheck