robotframework-tablelibrary 0.3.0__tar.gz → 0.3.1__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 (72) hide show
  1. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/.github/workflows/release.yml +4 -0
  2. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/.gitignore +1 -0
  3. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/DEVELOPMENT.md +13 -21
  4. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/PKG-INFO +1 -1
  5. robotframework_tablelibrary-0.3.1/create_release.sh +32 -0
  6. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/pyproject.toml +6 -3
  7. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/__init__.py +1 -1
  8. robotframework_tablelibrary-0.3.1/src/Tables/_version.py +24 -0
  9. robotframework_tablelibrary-0.3.0/create_release.sh +0 -32
  10. robotframework_tablelibrary-0.3.0/src/Tables/__about__.py +0 -4
  11. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/.github/workflows/build.yml +0 -0
  12. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/.pre-commit-config.yaml +0 -0
  13. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/LICENSE +0 -0
  14. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/README.md +0 -0
  15. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/general/__init__.py +0 -0
  16. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/general/library_attributes.py +0 -0
  17. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/__init__.py +0 -0
  18. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/configuration.py +0 -0
  19. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/excel.py +0 -0
  20. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/getter.py +0 -0
  21. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/modifier.py +0 -0
  22. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/keywords/writer.py +0 -0
  23. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/__init__.py +0 -0
  24. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/file_access.py +0 -0
  25. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/file_reader.py +0 -0
  26. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/file_system.py +0 -0
  27. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/file_writer.py +0 -0
  28. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/settings.py +0 -0
  29. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/src/Tables/utils/settings_stack.py +0 -0
  30. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/__init__.py +0 -0
  31. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/__init__.robot +0 -0
  32. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_excel.robot +0 -0
  33. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_missing_values.robot +0 -0
  34. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_reader.robot +0 -0
  35. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_settings.robot +0 -0
  36. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_settings_scopes.robot +0 -0
  37. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/test_writer.robot +0 -0
  38. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_01.csv +0 -0
  39. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_01.txt +0 -0
  40. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_02.xlsx +0 -0
  41. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_03.parquet +0 -0
  42. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_04.csv +0 -0
  43. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_04.txt +0 -0
  44. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_05.parquet +0 -0
  45. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_06.xlsx +0 -0
  46. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_07.csv +0 -0
  47. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_08.csv +0 -0
  48. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/example_09_streaming.csv +0 -0
  49. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/atest/testdata/missing_values.csv +0 -0
  50. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/__init__.py +0 -0
  51. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/helper/__init__.py +0 -0
  52. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/helper/helpers.py +0 -0
  53. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/__init__.py +0 -0
  54. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/conftest.py +0 -0
  55. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_configuration.py +0 -0
  56. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_excel.py +0 -0
  57. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_getter.py +0 -0
  58. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_init.py +0 -0
  59. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_modifier.py +0 -0
  60. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/keywords/test_keywords_writer.py +0 -0
  61. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_configuration.py +0 -0
  62. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_getter.py +0 -0
  63. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_tables_init.py +0 -0
  64. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_file_access.py +0 -0
  65. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_file_reader.py +0 -0
  66. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_file_system.py +0 -0
  67. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_file_writer.py +0 -0
  68. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_init.py +0 -0
  69. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_settings.py +0 -0
  70. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/tests/utest/test_utils_settings_stack.py +0 -0
  71. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/utils/imbus-web-logo.svg +0 -0
  72. {robotframework_tablelibrary-0.3.0 → robotframework_tablelibrary-0.3.1}/uv.lock +0 -0
@@ -14,6 +14,8 @@ jobs:
14
14
  steps:
15
15
  - name: Checkout code
16
16
  uses: actions/checkout@v4
17
+ with:
18
+ fetch-depth: 0
17
19
 
18
20
  - name: Create GitHub Release
19
21
  uses: softprops/action-gh-release@v2
@@ -31,6 +33,8 @@ jobs:
31
33
  steps:
32
34
  - name: Checkout code
33
35
  uses: actions/checkout@v4
36
+ with:
37
+ fetch-depth: 0
34
38
 
35
39
  - name: Set up Python
36
40
  uses: actions/setup-python@v5
@@ -9,6 +9,7 @@ __pycache__/
9
9
  # Distribution / packaging
10
10
  .Python
11
11
  build/
12
+ src/Tables/_version.py
12
13
  develop-eggs/
13
14
  dist/
14
15
  downloads/
@@ -20,19 +20,19 @@ In the ``root directory`` of this repository you will find a script called ``cre
20
20
  When executing this script, it expects exactly one argument: the new name of the release / tag.
21
21
  Here you need to provide always the syntax ``X.X.X``, e.g. ``0.1.9``, ``0.5.0`` or ``1.0.0``.
22
22
 
23
- The script will do two things automatically for you:
24
- 1. Updating the version string in the **[\_\_about\_\_.py](src/Tables/__about__.py)**
25
- 2. Creating & Pushing a new tag to GitHub.
23
+ The package version is read from the Git tag. No version file needs to be changed or committed. Create and push a tag from the desired commit:
26
24
 
27
- Execute the following command to create a new release:
28
25
  ```
29
26
  cd <project-root-directory>
30
- ./create_release.sh 1.0.0
27
+ git checkout main
28
+ git pull origin main
29
+ git tag -a v1.0.0 -m "Release v1.0.0"
30
+ git push origin v1.0.0
31
31
  ```
32
32
 
33
- After executing the script, three pipeline jobs are getting triggered automatically:
33
+ After pushing the tag, three pipeline jobs are triggered automatically:
34
34
  1. First job creates a new ``Release`` in github with the name of the created ``Tag``.
35
- 2. Second job uploads the new wheel package to ``PyPi`` with the ``__version__`` from the ``__about__.py`` file.
35
+ 2. Second job builds the wheel with the version from the Git tag and uploads it to ``PyPi``.
36
36
  3. Third job generates a new keyword documentation via ``libdoc`` on the main branch, but pushes it to the ``gh_pages`` where it is available as public ``GitHub Page``.
37
37
 
38
38
  ### *Backup* - Manual Version Bump & Tag Creation
@@ -40,29 +40,21 @@ After executing the script, three pipeline jobs are getting triggered automatica
40
40
  If the preferred way using the ``create_release.sh`` script does not work, you can also manually create a new release.
41
41
  Therefore, execute the following steps.
42
42
 
43
- #### 1. Increase Version
43
+ #### Create a new tag
44
44
 
45
- Open the file **[\_\_about\_\_.py](src/Tables/__about__.py)** and increase the version (``0.0.5 = major.minor.path``) before building & uploading the new python wheel package!
46
-
47
- The new version **must be unique** & **not already existing** in ``PyPi`` & ``GitHub Releases``!!!
48
-
49
- Commit & push the changed version into the ``main`` branch of the repository.
50
-
51
- #### 2. Create new Tag
52
-
53
- Now, create a new tag from the main branch with the syntax ``vX.X.X`` -> example: ``v1.0.5``.
45
+ Create a new tag from the desired commit with the syntax ``vX.X.X``. The version must be unique in PyPI and GitHub Releases.
54
46
 
55
47
  Use the following commands to create & push the tag:
56
48
  ```
57
- git tag v0.0.5
58
- git push origin v0.0.5
49
+ git tag -a v1.0.0 -m "Release v1.0.0"
50
+ git push origin v1.0.0
59
51
  ```
60
52
 
61
- #### 2.1. Creating GitHub Release & Deploy Wheel Package to PyPi
53
+ #### Creating GitHub Release & Deploy Wheel Package to PyPi
62
54
 
63
55
  After pushing the new tag, three pipeline jobs are getting triggered automatically:
64
56
  1. First job creates a new ``Release`` in github with the name of the created ``Tag``.
65
- 2. Second job uploads the new wheel package to ``PyPi`` with the ``__version__`` from the ``__about__.py`` file.
57
+ 2. Second job builds the wheel with the version from the Git tag and uploads it to ``PyPi``.
66
58
  3. Third job generates a new keyword documentation via ``libdoc`` on the main branch, but pushes it to the ``gh_pages`` where it is available as public ``GitHub Page``.
67
59
 
68
60
  ## Installing Dev Dependencies
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: robotframework-tablelibrary
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: A Robot Framework library providing generic table keywords for several table file type like csv or excel.
5
5
  Project-URL: Homepage, https://github.com/imbus/robotframework-tablelibrary
6
6
  Project-URL: Documentation, https://github.com/imbus/robotframework-tablelibrary#readme
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/env bash
2
+ set -e
3
+
4
+ # Script takes one argument: e.g. 0.1.0 or 1.0.0
5
+ if [ -z "$1" ]; then
6
+ echo "❌ Usage: $0 <new_version>"
7
+ exit 1
8
+ fi
9
+
10
+ NEW_VERSION="$1"
11
+ TAG="v${NEW_VERSION}"
12
+
13
+ if git rev-parse "$TAG" >/dev/null 2>&1; then
14
+ echo "❌ Tag '${TAG}' already exists locally."
15
+ exit 1
16
+ fi
17
+
18
+ if git ls-remote --exit-code --tags origin "refs/tags/${TAG}" >/dev/null 2>&1; then
19
+ echo "❌ Tag '${TAG}' already exists on origin."
20
+ exit 1
21
+ fi
22
+
23
+ if ! git diff --quiet || ! git diff --cached --quiet; then
24
+ echo "❌ Working tree has uncommitted changes. Commit or stash them before creating a release."
25
+ exit 1
26
+ fi
27
+
28
+ echo "🏷️ Creating '${TAG}' on the current commit"
29
+ git tag -a "$TAG" -m "Release ${TAG}"
30
+ git push origin "$TAG"
31
+
32
+ echo "✅ Tag '${TAG}' created and pushed. GitHub Actions will build and publish the release."
@@ -1,5 +1,5 @@
1
1
  [build-system]
2
- requires = ["hatchling"]
2
+ requires = ["hatchling", "hatch-vcs"]
3
3
  build-backend = "hatchling.build"
4
4
 
5
5
  [project]
@@ -60,7 +60,10 @@ only-include = ["src/Tables"]
60
60
  sources = ["src"]
61
61
 
62
62
  [tool.hatch.version]
63
- path = "src/Tables/__about__.py"
63
+ source = "vcs"
64
+
65
+ [tool.hatch.build.hooks.vcs]
66
+ version-file = "src/Tables/_version.py"
64
67
 
65
68
  [tool.hatch.build]
66
69
  dev-mode-dirs = ["src"]
@@ -93,7 +96,7 @@ source_pkgs = ["Tables", "tests"]
93
96
  branch = true
94
97
  parallel = true
95
98
  omit = [
96
- "src/Tables/__about__.py",
99
+ "src/Tables/_version.py",
97
100
  ]
98
101
 
99
102
  [tool.coverage.paths]
@@ -7,7 +7,7 @@ from robotlibcore import HybridCore
7
7
 
8
8
  from Tables.utils.settings_stack import Scope, SettingsStack
9
9
 
10
- from .__about__ import __version__
10
+ from ._version import __version__
11
11
  from .keywords import (
12
12
  Configuration,
13
13
  Getter,
@@ -0,0 +1,24 @@
1
+ # file generated by vcs-versioning
2
+ # don't change, don't track in version control
3
+ from __future__ import annotations
4
+
5
+ __all__ = [
6
+ "__version__",
7
+ "__version_tuple__",
8
+ "version",
9
+ "version_tuple",
10
+ "__commit_id__",
11
+ "commit_id",
12
+ ]
13
+
14
+ version: str
15
+ __version__: str
16
+ __version_tuple__: tuple[int | str, ...]
17
+ version_tuple: tuple[int | str, ...]
18
+ commit_id: str | None
19
+ __commit_id__: str | None
20
+
21
+ __version__ = version = '0.3.1'
22
+ __version_tuple__ = version_tuple = (0, 3, 1)
23
+
24
+ __commit_id__ = commit_id = None
@@ -1,32 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -e
3
-
4
- # Script takes one argument: e.g. 0.1.0 or 1.0.0
5
- if [ -z "$1" ]; then
6
- echo "❌ Usage: $0 <new_version>"
7
- exit 1
8
- fi
9
-
10
- NEW_VERSION="$1"
11
- FILE="src/Tables/__about__.py"
12
-
13
- echo "🔧 Updating version to '${NEW_VERSION}' in '${FILE}'"
14
-
15
- # Example: __version__ = "0.0.6" → __version__ = "0.0.7"
16
- if [[ "$OSTYPE" == "darwin"* ]]; then
17
- sed -i '' -E "s/^(__version__ *= *\")[^\"]+/\1${NEW_VERSION}/" src/Tables/__about__.py
18
- else
19
- sed -i.bak -E "s/^(__version__\s*=\s*\")[^\"]+\"/\1${NEW_VERSION}\"/" "$FILE"
20
- fi
21
-
22
- rm -f "${FILE}.bak"
23
-
24
- git checkout main
25
- git add "$FILE"
26
- git commit -m "Bump version to ${NEW_VERSION}"
27
- git push origin HEAD
28
-
29
- git tag -a "v${NEW_VERSION}" -m "Release v${NEW_VERSION}"
30
- git push origin "v${NEW_VERSION}"
31
-
32
- echo "✅ Version bumped to '${NEW_VERSION}', committed and tagged. PyPi Release is going to be created... 🚀"
@@ -1,4 +0,0 @@
1
- # SPDX-FileCopyrightText: 2025-present Marvin Klerx <marvinklerx20@gmail.com>
2
- #
3
- # SPDX-License-Identifier: MIT
4
- __version__ = "0.3.0"