aiida-hyperqueue 0.2.0__tar.gz → 0.2.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 (44) hide show
  1. aiida_hyperqueue-0.2.1/.github/workflows/update_changelog.py +96 -0
  2. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/CHANGELOG.md +5 -1
  3. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/PKG-INFO +2 -2
  4. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/__init__.py +1 -1
  5. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/pyproject.toml +1 -1
  6. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.github/workflows/cd.yml +0 -0
  7. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.github/workflows/ci.yml +0 -0
  8. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.github/workflows/validate_release_tag.py +0 -0
  9. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.gitignore +0 -0
  10. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.pre-commit-config.yaml +0 -0
  11. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/.readthedocs.yml +0 -0
  12. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/LICENSE +0 -0
  13. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/README.md +0 -0
  14. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/__init__.py +0 -0
  15. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/alloc.py +0 -0
  16. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/install.py +0 -0
  17. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/params/__init__.py +0 -0
  18. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/params/arguments.py +0 -0
  19. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/params/options.py +0 -0
  20. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/root.py +0 -0
  21. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/cli/server.py +0 -0
  22. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/aiida_hyperqueue/scheduler.py +0 -0
  23. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/.gitignore +0 -0
  24. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/Makefile +0 -0
  25. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/source/conf.py +0 -0
  26. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/source/developer_guide/index.md +0 -0
  27. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/source/get_started.md +0 -0
  28. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/source/img/AiiDA_transparent_logo.png +0 -0
  29. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/docs/source/index.md +0 -0
  30. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/README.md +0 -0
  31. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/__init__.py +0 -0
  32. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/conftest.py +0 -0
  33. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/target/hq +0 -0
  34. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/test_cli_alloc.py +0 -0
  35. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/test_cli_install.py +0 -0
  36. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/test_cli_server.py +0 -0
  37. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/test_scheduler.py +0 -0
  38. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/__init__.py +0 -0
  39. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/cmd.py +0 -0
  40. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/io.py +0 -0
  41. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/job.py +0 -0
  42. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/mock.py +0 -0
  43. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/table.py +0 -0
  44. {aiida_hyperqueue-0.2.0 → aiida_hyperqueue-0.2.1}/tests/utils/wait.py +0 -0
@@ -0,0 +1,96 @@
1
+ #!/bin/bash
2
+ # -*- coding: utf-8 -*-
3
+ """Script for automatically updating the `CHANGELOG.md` based on the commits since the latest release tag."""
4
+
5
+ from pathlib import Path
6
+ import re
7
+ import subprocess
8
+
9
+ DEFAULT_CHANGELOG_SECTIONS = """
10
+ ### ‼️ Breaking changes
11
+
12
+
13
+ ### ✨ New features
14
+
15
+
16
+ ### 🗑️ Deprecations
17
+
18
+
19
+ ### 👌 Improvements
20
+
21
+
22
+ ### 🐛 Bug fixes
23
+
24
+
25
+ ### 📚 Documentation
26
+
27
+
28
+ ### 🔧 Maintenance
29
+
30
+
31
+ ### ⬆️ Update dependencies
32
+
33
+
34
+ ### 🧪 Tests
35
+
36
+
37
+ ### ♻️ Refactor
38
+
39
+ """
40
+
41
+
42
+ def update_changelog():
43
+ """Update the `CHANGELOG.md` for a first draft of the release."""
44
+
45
+ print("🔍 Checking the current version number")
46
+ current_changelog = Path("CHANGELOG.md").read_text(encoding="utf-8")
47
+
48
+ from aiida_hyperqueue import __version__
49
+
50
+ if str(__version__) in current_changelog:
51
+ print("🛑 Current version already in `CHANGELOG.md`. Skipping...")
52
+ return
53
+
54
+ print("⬆️ Found updated version number, adapting `CHANGELOG.md`.")
55
+ tags = subprocess.run(
56
+ ["git", "tag", "--sort=v:refname"],
57
+ capture_output=True,
58
+ check=True,
59
+ encoding="utf-8",
60
+ ).stdout
61
+ latest_tag = re.findall(r"(v\d+\.\d+\.\d+)\n", tags)[-1]
62
+
63
+ print(f"🔄 Comparing with latest tag `{latest_tag}`.")
64
+ commits = subprocess.run(
65
+ ["git", "log", "--pretty=format:'%h|%H|%s'", f"{latest_tag}..origin/main"],
66
+ capture_output=True,
67
+ check=True,
68
+ encoding="utf-8",
69
+ ).stdout
70
+
71
+ pr_pattern = re.compile(r"\(\S(?P<pr_number>\d+)\)")
72
+
73
+ changelog_message = f"## v{__version__}\n" + DEFAULT_CHANGELOG_SECTIONS
74
+
75
+ for commit in commits.splitlines():
76
+ # Remove the PR number from the commit message
77
+ pr_match = pr_pattern.search(commit)
78
+
79
+ if pr_match is not None:
80
+ pr_number = pr_match.groupdict()["pr_number"]
81
+ commit = commit.replace(rf"(#{pr_number})", "")
82
+
83
+ # Add the commit hash (short) to link to the changelog
84
+ commit = commit.strip("'")
85
+ hash_short, hash_long, message = commit.split("|", maxsplit=2)
86
+ message += f" [[{hash_short}](https://github.com/aiidateam/aiida-hyperqueue/commit/{hash_long})]"
87
+ changelog_message += f"\n* {message}"
88
+
89
+ with Path("CHANGELOG.md").open("w", encoding="utf8") as handle:
90
+ handle.write(changelog_message + "\n\n" + current_changelog)
91
+
92
+ print("🚀 Success! Finalise the `CHANGELOG.md` and let's get this baby released.")
93
+
94
+
95
+ if __name__ == "__main__":
96
+ update_changelog()
@@ -1,3 +1,8 @@
1
+ ## v0.2.1
2
+
3
+ * Add `update_changelog.py` script [[9b03acb](https://github.com/aiidateam/aiida-hyperqueue/commit/9b03acbf9cb804ef7f3c35c6d5b7495b917dacc6)]
4
+ * Add upper limit to `aiida-core` [[fd7a62f](https://github.com/aiidateam/aiida-hyperqueue/commit/fd7a62feae23f99899a025cfe411531576bf93fd)]
5
+
1
6
  ## v0.2.0
2
7
 
3
8
  - [#18](https://github.com/aiidateam/aiida-hyperqueue/pull/18) A large refactoring with following changes:
@@ -11,7 +16,6 @@
11
16
  - [#26](https://github.com/aiidateam/aiida-hyperqueue/pull/26) Change alloc add worker name (name appear in slurm queue) `aiida` -> `ahq`
12
17
  - [#24](https://github.com/aiidateam/aiida-hyperqueue/pull/24) Use JSON format as output for hq job list and hq submit
13
18
 
14
-
15
19
  ## v0.1.1
16
20
 
17
21
  Only a small fix to the `README.md` was added here, this release is mainly to test the automated deployment to PyPI.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiida-hyperqueue
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: AiiDA plugin for the HyperQueue metascheduler
5
5
  Author: Marnik Bercx, Jusong Yu
6
6
  Requires-Python: >=3.9
@@ -13,7 +13,7 @@ Classifier: Operating System :: MacOS :: MacOS X
13
13
  Classifier: Natural Language :: English
14
14
  Classifier: Programming Language :: Python
15
15
  License-File: LICENSE
16
- Requires-Dist: aiida-core~=2.0
16
+ Requires-Dist: aiida-core~=2.0,<2.7
17
17
  Requires-Dist: sphinx ; extra == "docs"
18
18
  Requires-Dist: myst-parser ; extra == "docs"
19
19
  Requires-Dist: sphinx-design ; extra == "docs"
@@ -5,4 +5,4 @@ aiida_hyperqueue
5
5
  AiiDA plugin for the HyperQueue metascheduler
6
6
  """
7
7
 
8
- __version__ = "0.2.0"
8
+ __version__ = "0.2.1"
@@ -24,7 +24,7 @@ classifiers = [
24
24
  requires-python = ">=3.9"
25
25
 
26
26
  dependencies = [
27
- "aiida-core~=2.0",
27
+ "aiida-core~=2.0,<2.7",
28
28
  ]
29
29
 
30
30
  [project.urls]