hoverpower 1.2.0__tar.gz → 1.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 (32) hide show
  1. {hoverpower-1.2.0 → hoverpower-1.3.0}/PKG-INFO +21 -1
  2. {hoverpower-1.2.0 → hoverpower-1.3.0}/README +20 -0
  3. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/secret.py +5 -1
  4. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/PKG-INFO +21 -1
  5. {hoverpower-1.2.0 → hoverpower-1.3.0}/pyproject.toml +1 -1
  6. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_secret.py +13 -0
  7. {hoverpower-1.2.0 → hoverpower-1.3.0}/LICENSE +0 -0
  8. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/__init__.py +0 -0
  9. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/__main__.py +0 -0
  10. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/cli/__init__.py +0 -0
  11. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/cli/give.py +0 -0
  12. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/data.py +0 -0
  13. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/generator.py +0 -0
  14. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/hard.py +0 -0
  15. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/info.py +0 -0
  16. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/path.py +0 -0
  17. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/repo/__init__.py +0 -0
  18. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower/title.py +0 -0
  19. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/SOURCES.txt +0 -0
  20. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/dependency_links.txt +0 -0
  21. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/entry_points.txt +0 -0
  22. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/requires.txt +0 -0
  23. {hoverpower-1.2.0 → hoverpower-1.3.0}/hoverpower.egg-info/top_level.txt +0 -0
  24. {hoverpower-1.2.0 → hoverpower-1.3.0}/setup.cfg +0 -0
  25. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_cli.py +0 -0
  26. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_generator.py +0 -0
  27. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_give.py +0 -0
  28. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_hardcore.py +0 -0
  29. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_path.py +0 -0
  30. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_repository.py +0 -0
  31. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_resources.py +0 -0
  32. {hoverpower-1.2.0 → hoverpower-1.3.0}/tests/test_title.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hoverpower
3
- Version: 1.2.0
3
+ Version: 1.3.0
4
4
  Author-email: Helmut Konrad Schewe <helmutus@outlook.com>
5
5
  License-Expression: MIT
6
6
  Project-URL: Homepage, https://github.com/anaticulae/hoverpower
@@ -38,3 +38,23 @@ generate test data:
38
38
  --negative
39
39
  --paper
40
40
  --small
41
+
42
+ ## developer setup
43
+
44
+ ```
45
+ cd ~/hoverpower
46
+ python3 -mvenv ~/.tmp/$(basename $PWD)
47
+ source ~/.tmp/$(basename $PWD)/bin/activate
48
+
49
+ pip install baw
50
+ baw sync all
51
+
52
+ pip install .[dev]
53
+
54
+ export HOVERPOWER_STORE=~/hoverpower/hoverpower/repo
55
+ # export HOVERPOWER_SECRET=
56
+
57
+ powerdecrypt
58
+
59
+ baw test all
60
+ ```
@@ -16,3 +16,23 @@ generate test data:
16
16
  --negative
17
17
  --paper
18
18
  --small
19
+
20
+ ## developer setup
21
+
22
+ ```
23
+ cd ~/hoverpower
24
+ python3 -mvenv ~/.tmp/$(basename $PWD)
25
+ source ~/.tmp/$(basename $PWD)/bin/activate
26
+
27
+ pip install baw
28
+ baw sync all
29
+
30
+ pip install .[dev]
31
+
32
+ export HOVERPOWER_STORE=~/hoverpower/hoverpower/repo
33
+ # export HOVERPOWER_SECRET=
34
+
35
+ powerdecrypt
36
+
37
+ baw test all
38
+ ```
@@ -19,7 +19,11 @@ DEFAULT_SECRET = b'ohrfFMW4YeHu96rkblrD-i4PEIsV_5jFCfZWfgkUgLk='
19
19
 
20
20
  HOVERPOWER_SECRET = os.environ.get('HOVERPOWER_SECRET', DEFAULT_SECRET)
21
21
 
22
- CIPHER = cryptography.fernet.Fernet(key=HOVERPOWER_SECRET)
22
+ try:
23
+ CIPHER = cryptography.fernet.Fernet(key=HOVERPOWER_SECRET)
24
+ except ValueError:
25
+ utilo.exitx(f'Invalid HOVERPOWER_SECRET: {HOVERPOWER_SECRET}\n'
26
+ f'Example : {DEFAULT_SECRET}')
23
27
 
24
28
 
25
29
  def decrypt(path: str) -> bytes | None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hoverpower
3
- Version: 1.2.0
3
+ Version: 1.3.0
4
4
  Author-email: Helmut Konrad Schewe <helmutus@outlook.com>
5
5
  License-Expression: MIT
6
6
  Project-URL: Homepage, https://github.com/anaticulae/hoverpower
@@ -38,3 +38,23 @@ generate test data:
38
38
  --negative
39
39
  --paper
40
40
  --small
41
+
42
+ ## developer setup
43
+
44
+ ```
45
+ cd ~/hoverpower
46
+ python3 -mvenv ~/.tmp/$(basename $PWD)
47
+ source ~/.tmp/$(basename $PWD)/bin/activate
48
+
49
+ pip install baw
50
+ baw sync all
51
+
52
+ pip install .[dev]
53
+
54
+ export HOVERPOWER_STORE=~/hoverpower/hoverpower/repo
55
+ # export HOVERPOWER_SECRET=
56
+
57
+ powerdecrypt
58
+
59
+ baw test all
60
+ ```
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "hoverpower"
3
- version = "1.2.0"
3
+ version = "1.3.0"
4
4
  description = ""
5
5
  requires-python = ">=3.12"
6
6
  authors = [
@@ -1,3 +1,5 @@
1
+ import unittest.mock
2
+
1
3
  import utilo
2
4
 
3
5
  import hoverpower.secret
@@ -13,3 +15,14 @@ def test_encode_decode(testdir):
13
15
  utilo.file_create_binary(DEST, encrypted)
14
16
  decrypted = hoverpower.secret.decrypt(DEST)
15
17
  assert decrypted == DATA
18
+
19
+
20
+ @unittest.mock.patch.dict('os.environ',
21
+ {'HOVERPOWER_SECRET': 'newvalue'}) # nosec
22
+ def test_decode_invalid_secret():
23
+ """Simple smoke test"""
24
+ completed = utilo.run(
25
+ 'powerdecrypt',
26
+ expect=False,
27
+ )
28
+ assert '[ERROR] Invalid HOVERPOWER_SECRET: newvalue' in completed.stderr
File without changes
File without changes
File without changes