Skip to content

Commit 2a5ef44

Browse files
committed
black format main
Signed-off-by: Zen <[email protected]>
1 parent 3a54c84 commit 2a5ef44

File tree

3 files changed

+91
-72
lines changed

3 files changed

+91
-72
lines changed

src/pycpio/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
from .pycpio import PyCPIO
22

3-
__all__ = ['PyCPIO']
3+
__all__ = ["PyCPIO"]

src/pycpio/main.py

Lines changed: 55 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -2,77 +2,88 @@
22

33
from pathlib import Path
44

5-
from pycpio import PyCPIO
65
from zenlib.util import get_kwargs
76

7+
from pycpio import PyCPIO
8+
89

910
def main():
10-
arguments = [{'flags': ['-i', '--input'], 'help': 'input file'},
11-
{'flags': ['-a', '--append'], 'help': 'append to archive'},
12-
{'flags': ['--recursive'], 'action': 'store', 'help': 'append to archive recursively'},
13-
{'flags': ['--relative'], 'action': 'store', 'help': 'append to archive relative to this path'},
14-
{'flags': ['--absolute'], 'action': 'store_true', 'help': 'allow absolute paths'},
15-
{'flags': ['--reproducible'], 'action': 'store_true', 'help': 'Set mtime to 0, start inodes at 0'},
16-
{'flags': ['--rm', '--delete'], 'action': 'store', 'help': 'delete from archive'},
17-
{'flags': ['-n', '--name'], 'action': 'store', 'help': 'Name/path override for append'},
18-
{'flags': ['-s', '--symlink'], 'action': 'store', 'help': 'create symlink'},
19-
{'flags': ['-c', '--chardev'], 'action': 'store', 'help': 'create character device'},
20-
{'flags': ['--major'], 'action': 'store', 'help': 'major number for character/block device', 'type': int},
21-
{'flags': ['--minor'], 'action': 'store', 'help': 'minor number for character/block device', 'type': int},
22-
{'flags': ['-u', '--set-owner'], 'action': 'store', 'help': 'set UID on all files', 'dest': 'uid'},
23-
{'flags': ['-g', '--set-group'], 'action': 'store', 'help': 'set GID on all files', 'dest': 'gid'},
24-
{'flags': ['-m', '--set-mode'], 'action': 'store', 'help': 'set mode on all files', 'type': int, 'dest': 'mode'},
25-
{'flags': ['-z', '--compress'], 'action': 'store', 'help': 'compression type'},
26-
{'flags': ['-o', '--output'], 'help': 'output file'},
27-
{'flags': ['-l', '--list'], 'action': 'store_true', 'help': 'list CPIO contents'},
28-
{'flags': ['-p', '--print'], 'action': 'store_true', 'help': 'print CPIO contents'}]
29-
30-
kwargs = get_kwargs(package=__package__, description='PyCPIO', arguments=arguments, drop_default=True)
11+
arguments = [
12+
{"flags": ["-i", "--input"], "help": "input file"},
13+
{"flags": ["-a", "--append"], "help": "append to archive"},
14+
{"flags": ["--recursive"], "action": "store", "help": "append to archive recursively"},
15+
{"flags": ["--relative"], "action": "store", "help": "append to archive relative to this path"},
16+
{"flags": ["--absolute"], "action": "store_true", "help": "allow absolute paths"},
17+
{"flags": ["--reproducible"], "action": "store_true", "help": "Set mtime to 0, start inodes at 0"},
18+
{"flags": ["--rm", "--delete"], "action": "store", "help": "delete from archive"},
19+
{"flags": ["-n", "--name"], "action": "store", "help": "Name/path override for append"},
20+
{"flags": ["-s", "--symlink"], "action": "store", "help": "create symlink"},
21+
{"flags": ["-c", "--chardev"], "action": "store", "help": "create character device"},
22+
{"flags": ["--major"], "action": "store", "help": "major number for character/block device", "type": int},
23+
{"flags": ["--minor"], "action": "store", "help": "minor number for character/block device", "type": int},
24+
{"flags": ["-u", "--set-owner"], "action": "store", "help": "set UID on all files", "dest": "uid"},
25+
{"flags": ["-g", "--set-group"], "action": "store", "help": "set GID on all files", "dest": "gid"},
26+
{
27+
"flags": ["-m", "--set-mode"],
28+
"action": "store",
29+
"help": "set mode on all files",
30+
"type": int,
31+
"dest": "mode",
32+
},
33+
{"flags": ["-z", "--compress"], "action": "store", "help": "compression type"},
34+
{"flags": ["-o", "--output"], "help": "output file"},
35+
{"flags": ["-l", "--list"], "action": "store_true", "help": "list CPIO contents"},
36+
{"flags": ["-p", "--print"], "action": "store_true", "help": "print CPIO contents"},
37+
]
38+
39+
kwargs = get_kwargs(package=__package__, description="PyCPIO", arguments=arguments, drop_default=True)
3140

3241
c = PyCPIO(**kwargs)
33-
if input_file := kwargs.get('input'):
42+
if input_file := kwargs.get("input"):
3443
c.read_cpio_file(Path(input_file))
3544

36-
if rm_args := kwargs.get('rm'):
45+
if rm_args := kwargs.get("rm"):
3746
c.remove_cpio(rm_args)
3847

39-
if symlink_dest := kwargs.get('symlink'):
40-
if name := kwargs.get('name'):
48+
if symlink_dest := kwargs.get("symlink"):
49+
if name := kwargs.get("name"):
4150
c.add_symlink(name, symlink_dest)
4251
else:
43-
raise ValueError('Symlink requires a name')
52+
raise ValueError("Symlink requires a name")
4453

45-
if chardev_path := kwargs.get('chardev'):
46-
major = kwargs.get('major')
47-
minor = kwargs.get('minor')
54+
if chardev_path := kwargs.get("chardev"):
55+
major = kwargs.get("major")
56+
minor = kwargs.get("minor")
4857
if major is None:
49-
raise ValueError('Character device requires major number')
58+
raise ValueError("Character device requires major number")
5059
if minor is None:
51-
raise ValueError('Character device requires minor number')
60+
raise ValueError("Character device requires minor number")
5261
c.add_chardev(chardev_path, major, minor)
5362

54-
if append_file := kwargs.get('append'):
55-
cmdargs = {'relative': kwargs.get('relative'),
56-
'path': Path(append_file),
57-
'name': kwargs.get('name'),
58-
'absolute': kwargs.get('absolute')}
63+
if append_file := kwargs.get("append"):
64+
cmdargs = {
65+
"relative": kwargs.get("relative"),
66+
"path": Path(append_file),
67+
"name": kwargs.get("name"),
68+
"absolute": kwargs.get("absolute"),
69+
}
5970

6071
c.append_cpio(**cmdargs)
6172

62-
if recursive_path := kwargs.get('recursive'):
63-
cmdargs = {'relative': kwargs.get('relative'), 'path': Path(recursive_path)}
73+
if recursive_path := kwargs.get("recursive"):
74+
cmdargs = {"relative": kwargs.get("relative"), "path": Path(recursive_path)}
6475
c.append_recursive(**cmdargs)
6576

66-
if output_file := kwargs.get('output'):
67-
compression = kwargs.get('compress')
77+
if output_file := kwargs.get("output"):
78+
compression = kwargs.get("compress")
6879
c.write_cpio_file(Path(output_file), compression=compression)
6980

70-
if kwargs.get('list'):
81+
if kwargs.get("list"):
7182
print(c.list_files())
7283

73-
if kwargs.get('print'):
84+
if kwargs.get("print"):
7485
print(c)
7586

7687

77-
if __name__ == '__main__':
88+
if __name__ == "__main__":
7889
main()

src/pycpio/pycpio.py

Lines changed: 35 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
from pathlib import Path
22
from typing import Union
33

4+
from zenlib.logging import loggify
5+
46
from pycpio.cpio import CPIOArchive, CPIOData
5-
from pycpio.masks import CPIOModes
67
from pycpio.header import HEADER_NEW
7-
from pycpio.writer import CPIOWriter
8+
from pycpio.masks import CPIOModes
89
from pycpio.reader import CPIOReader
9-
from zenlib.logging import loggify
10+
from pycpio.writer import CPIOWriter
1011

1112

1213
@loggify
1314
class PyCPIO:
14-
""" A class for using CPIO archives. """
15+
"""A class for using CPIO archives."""
16+
1517
def __init__(self, structure=HEADER_NEW, reproducible=False, *args, **kwargs):
1618
self.structure = structure
1719
self.reproducible = reproducible
@@ -24,56 +26,62 @@ def __init__(self, structure=HEADER_NEW, reproducible=False, *args, **kwargs):
2426
self.overrides[attr] = value
2527

2628
def append_cpio(self, path: Path, name: str = None, *args, **kwargs):
27-
""" Appends a file or directory to the CPIO archive. """
28-
kwargs.update({'path': path, 'structure': self.structure, 'overrides': self.overrides,
29-
'logger': self.logger})
29+
"""Appends a file or directory to the CPIO archive."""
30+
kwargs.update({"path": path, "structure": self.structure, "overrides": self.overrides, "logger": self.logger})
3031
if name:
31-
kwargs['name'] = name
32+
kwargs["name"] = name
3233
self.entries.add_entry(CPIOData.from_path(**kwargs))
3334

3435
def append_recursive(self, path: Path, *args, **kwargs):
35-
""" Appends all files under a directory into the CPIO archive. """
36-
kwargs.update({'path': path, 'structure': self.structure, 'overrides': self.overrides,
37-
'logger': self.logger})
36+
"""Appends all files under a directory into the CPIO archive."""
37+
kwargs.update({"path": path, "structure": self.structure, "overrides": self.overrides, "logger": self.logger})
3838
self.entries.add_entry(CPIOData.from_dir(**kwargs))
3939

4040
def remove_cpio(self, name: str):
41-
""" Removes an entry from the CPIO archive. """
41+
"""Removes an entry from the CPIO archive."""
4242
self.logger.info("Removed entry: %s" % self.entries.pop(name))
4343

4444
def add_symlink(self, name: str, target: str):
45-
""" Adds a symlink to the CPIO archive. """
46-
self._build_cpio_entry(name=name, entry_type=CPIOModes['Symlink'].value, data=target)
45+
"""Adds a symlink to the CPIO archive."""
46+
self._build_cpio_entry(name=name, entry_type=CPIOModes["Symlink"].value, data=target)
4747

4848
def add_chardev(self, name: str, major: int, minor: int, *args, **kwargs):
49-
""" Adds a character device to the CPIO archive. """
50-
self._build_cpio_entry(name=name, entry_type=CPIOModes['CharDev'].value, rdevmajor=major, rdevminor=minor, *args, **kwargs)
49+
"""Adds a character device to the CPIO archive."""
50+
self._build_cpio_entry(
51+
name=name, entry_type=CPIOModes["CharDev"].value, rdevmajor=major, rdevminor=minor, *args, **kwargs
52+
)
5153

5254
def read_cpio_file(self, file_path: Path):
53-
""" Creates a CPIOReader object and reads the file. """
54-
kwargs = {'input_file': file_path, 'overrides': self.overrides,
55-
'logger': self.logger}
55+
"""Creates a CPIOReader object and reads the file."""
56+
kwargs = {"input_file": file_path, "overrides": self.overrides, "logger": self.logger}
5657
reader = CPIOReader(**kwargs)
5758
self.entries.update(reader.entries)
5859

5960
def write_cpio_file(self, file_path: Union[Path, str], *args, **kwargs):
60-
""" Writes a CPIO archive to file. """
61-
kwargs.update({'structure': self.structure, 'logger': self.logger})
61+
"""Writes a CPIO archive to file."""
62+
kwargs.update({"structure": self.structure, "logger": self.logger})
6263
writer = CPIOWriter(self.entries, file_path, **kwargs)
6364
writer.write()
6465

6566
def list_files(self):
66-
""" Returns a list of files in the CPIO archive. """
67+
"""Returns a list of files in the CPIO archive."""
6768
return str(self.entries.list())
6869

6970
def _build_cpio_entry(self, name: str, entry_type: CPIOModes, data=None, *args, **kwargs):
70-
""" Creates a CPIOData object and adds it to the CPIO archive. """
71+
"""Creates a CPIOData object and adds it to the CPIO archive."""
7172
overrides = self.overrides.copy()
72-
if mode := kwargs.pop('mode', None):
73-
overrides['mode'] = mode
73+
if mode := kwargs.pop("mode", None):
74+
overrides["mode"] = mode
7475
self.logger.debug("Setting override: mode=%s" % mode)
75-
kwargs = {'name': name, 'structure': self.structure, 'mode': entry_type, 'data': data,
76-
'overrides': overrides, 'logger': self.logger, **kwargs}
76+
kwargs = {
77+
"name": name,
78+
"structure": self.structure,
79+
"mode": entry_type,
80+
"data": data,
81+
"overrides": overrides,
82+
"logger": self.logger,
83+
**kwargs,
84+
}
7785

7886
self.entries.add_entry(CPIOData.create_entry(*args, **kwargs))
7987

0 commit comments

Comments
 (0)