winipedia-utils 0.1.7__tar.gz → 0.1.9__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 (68) hide show
  1. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/PKG-INFO +1 -1
  2. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/pyproject.toml +1 -1
  3. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/pre_commit/config.py +8 -0
  4. winipedia_utils-0.1.9/winipedia_utils/projects/project.py +48 -0
  5. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/setup.py +5 -4
  6. winipedia_utils-0.1.7/winipedia_utils/projects/project.py +0 -19
  7. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/LICENSE +0 -0
  8. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/README.md +0 -0
  9. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/__init__.py +0 -0
  10. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/concurrent/__init__.py +0 -0
  11. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/concurrent/concurrent.py +0 -0
  12. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/concurrent/multiprocessing.py +0 -0
  13. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/concurrent/multithreading.py +0 -0
  14. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/consts.py +0 -0
  15. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/data/__init__.py +0 -0
  16. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/data/dataframe.py +0 -0
  17. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/django/__init__.py +0 -0
  18. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/django/bulk.py +0 -0
  19. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/django/command.py +0 -0
  20. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/django/database.py +0 -0
  21. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/__init__.py +0 -0
  22. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/gitignore/__init__.py +0 -0
  23. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/gitignore/gitignore.py +0 -0
  24. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/pre_commit/__init__.py +0 -0
  25. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/pre_commit/hooks.py +0 -0
  26. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/git/pre_commit/run_hooks.py +0 -0
  27. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/iterating/__init__.py +0 -0
  28. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/iterating/iterate.py +0 -0
  29. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/logging/__init__.py +0 -0
  30. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/logging/ansi.py +0 -0
  31. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/logging/config.py +0 -0
  32. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/logging/logger.py +0 -0
  33. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/modules/__init__.py +0 -0
  34. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/modules/class_.py +0 -0
  35. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/modules/function.py +0 -0
  36. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/modules/module.py +0 -0
  37. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/modules/package.py +0 -0
  38. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/oop/__init__.py +0 -0
  39. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/oop/mixins/__init__.py +0 -0
  40. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/oop/mixins/meta.py +0 -0
  41. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/oop/mixins/mixin.py +0 -0
  42. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/os/__init__.py +0 -0
  43. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/os/os.py +0 -0
  44. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/projects/__init__.py +0 -0
  45. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/projects/poetry/__init__.py +0 -0
  46. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/projects/poetry/config.py +0 -0
  47. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/projects/poetry/poetry.py +0 -0
  48. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/py.typed +0 -0
  49. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/__init__.py +0 -0
  50. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/assertions.py +0 -0
  51. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/convention.py +0 -0
  52. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/create_tests.py +0 -0
  53. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/fixtures.py +0 -0
  54. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/__init__.py +0 -0
  55. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/__init__.py +0 -0
  56. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/__init__.py +0 -0
  57. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/fixture.py +0 -0
  58. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/__init__.py +0 -0
  59. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/class_.py +0 -0
  60. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/function.py +0 -0
  61. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/module.py +0 -0
  62. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/package.py +0 -0
  63. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/fixtures/scopes/session.py +0 -0
  64. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/utils/__init__.py +0 -0
  65. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/base/utils/utils.py +0 -0
  66. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/testing/tests/conftest.py +0 -0
  67. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/text/__init__.py +0 -0
  68. {winipedia_utils-0.1.7 → winipedia_utils-0.1.9}/winipedia_utils/text/string.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: winipedia-utils
3
- Version: 0.1.7
3
+ Version: 0.1.9
4
4
  Summary: A package with many utility functions
5
5
  License: MIT
6
6
  Author: Winipedia
@@ -1,7 +1,7 @@
1
1
  # Project section
2
2
  [project]
3
3
  name = "winipedia-utils"
4
- version = "0.1.7"
4
+ version = "0.1.9"
5
5
  description = "A package with many utility functions"
6
6
  readme = "README.md"
7
7
  requires-python = ">=3.12"
@@ -6,6 +6,8 @@ from typing import Any
6
6
  import yaml
7
7
 
8
8
  from winipedia_utils.logging.logger import get_logger
9
+ from winipedia_utils.os.os import run_subprocess
10
+ from winipedia_utils.projects.poetry.poetry import POETRY_RUN_ARGS
9
11
 
10
12
  logger = get_logger(__name__)
11
13
 
@@ -58,3 +60,9 @@ def _add_package_hook_to_pre_commit_config() -> None:
58
60
  logger.info("Adding winipedia-utils hook to pre-commit config")
59
61
  config["repos"] = [package_hook_config, *config.get("repos", [])]
60
62
  dump_pre_commit_config(config)
63
+
64
+
65
+ def _pre_commit_install() -> None:
66
+ """Install pre-commit."""
67
+ logger.info("Running pre-commit install")
68
+ run_subprocess([*POETRY_RUN_ARGS, "pre-commit", "install"], check=True)
@@ -0,0 +1,48 @@
1
+ """Utilities for working with Python projects."""
2
+
3
+ from types import ModuleType
4
+
5
+ from winipedia_utils.modules.module import create_module, to_path
6
+ from winipedia_utils.modules.package import get_src_package
7
+ from winipedia_utils.projects.poetry.config import get_poetry_package_name
8
+
9
+
10
+ def _create_project_root() -> None:
11
+ """Create the project root."""
12
+ src_package_name = get_poetry_package_name()
13
+ create_module(src_package_name, is_package=True)
14
+ _create_py_typed()
15
+
16
+
17
+ def _create_py_typed() -> None:
18
+ """Create the py.typed file."""
19
+ src_package_name = get_src_package().__name__
20
+ py_typed_path = to_path(src_package_name, is_package=True) / "py.typed"
21
+ py_typed_path.touch()
22
+
23
+
24
+ def make_name_from_package(
25
+ package: ModuleType,
26
+ split_on: str = "_",
27
+ join_on: str = "-",
28
+ *,
29
+ capitalize: bool = True,
30
+ ) -> str:
31
+ """Make a name from a package.
32
+
33
+ takes a package and makes a name from it that is readable by humans.
34
+
35
+ Args:
36
+ package (ModuleType): The package to make a name from
37
+ split_on (str, optional): what to split the package name on. Defaults to "_".
38
+ join_on (str, optional): what to join the package name with. Defaults to "-".
39
+ capitalize (bool, optional): Whether to capitalize each part. Defaults to True.
40
+
41
+ Returns:
42
+ str: _description_
43
+ """
44
+ package_name = package.__name__.split(".")[-1]
45
+ parts = package_name.split(split_on)
46
+ if capitalize:
47
+ parts = [part.capitalize() for part in parts]
48
+ return join_on.join(parts)
@@ -7,15 +7,16 @@ This script is intended to be called once at the beginning of a project.
7
7
  """
8
8
 
9
9
  from winipedia_utils.git.gitignore.gitignore import _add_package_patterns_to_gitignore
10
- from winipedia_utils.git.pre_commit.config import _add_package_hook_to_pre_commit_config
10
+ from winipedia_utils.git.pre_commit.config import (
11
+ _add_package_hook_to_pre_commit_config,
12
+ _pre_commit_install,
13
+ )
11
14
  from winipedia_utils.git.pre_commit.run_hooks import _run_all_hooks
12
15
  from winipedia_utils.logging.logger import get_logger
13
- from winipedia_utils.os.os import run_subprocess
14
16
  from winipedia_utils.projects.poetry.config import (
15
17
  _add_configurations_to_pyproject_toml,
16
18
  )
17
19
  from winipedia_utils.projects.poetry.poetry import (
18
- POETRY_RUN_ARGS,
19
20
  _install_dev_dependencies,
20
21
  )
21
22
  from winipedia_utils.projects.project import _create_project_root
@@ -30,7 +31,7 @@ def _setup() -> None:
30
31
  # create pre-commit config
31
32
  _add_package_hook_to_pre_commit_config()
32
33
  # install pre-commit
33
- run_subprocess([*POETRY_RUN_ARGS, "pre-commit", "install"], check=True)
34
+ _pre_commit_install()
34
35
  # add patterns to .gitignore
35
36
  _add_package_patterns_to_gitignore()
36
37
  # add tool.* configurations to pyproject.toml
@@ -1,19 +0,0 @@
1
- """Utilities for working with Python projects."""
2
-
3
- from winipedia_utils.modules.module import create_module, to_path
4
- from winipedia_utils.modules.package import get_src_package
5
- from winipedia_utils.projects.poetry.config import get_poetry_package_name
6
-
7
-
8
- def _create_project_root() -> None:
9
- """Create the project root."""
10
- src_package_name = get_poetry_package_name()
11
- create_module(src_package_name, is_package=True)
12
- _create_py_typed()
13
-
14
-
15
- def _create_py_typed() -> None:
16
- """Create the py.typed file."""
17
- src_package_name = get_src_package().__name__
18
- py_typed_path = to_path(src_package_name, is_package=True) / "py.typed"
19
- py_typed_path.touch()
File without changes