aiida-hyperqueue 0.2.1__tar.gz → 0.4.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 (44) hide show
  1. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/PKG-INFO +5 -4
  2. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/__init__.py +1 -2
  3. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/__init__.py +2 -3
  4. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/alloc.py +1 -2
  5. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/install.py +6 -6
  6. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/params/arguments.py +0 -1
  7. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/params/options.py +1 -1
  8. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/root.py +0 -1
  9. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/server.py +1 -2
  10. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/scheduler.py +23 -18
  11. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/pyproject.toml +2 -2
  12. aiida_hyperqueue-0.2.1/.github/workflows/cd.yml +0 -52
  13. aiida_hyperqueue-0.2.1/.github/workflows/ci.yml +0 -30
  14. aiida_hyperqueue-0.2.1/.github/workflows/update_changelog.py +0 -96
  15. aiida_hyperqueue-0.2.1/.github/workflows/validate_release_tag.py +0 -45
  16. aiida_hyperqueue-0.2.1/.gitignore +0 -14
  17. aiida_hyperqueue-0.2.1/.pre-commit-config.yaml +0 -17
  18. aiida_hyperqueue-0.2.1/.readthedocs.yml +0 -26
  19. aiida_hyperqueue-0.2.1/CHANGELOG.md +0 -25
  20. aiida_hyperqueue-0.2.1/docs/.gitignore +0 -1
  21. aiida_hyperqueue-0.2.1/docs/Makefile +0 -41
  22. aiida_hyperqueue-0.2.1/docs/source/conf.py +0 -170
  23. aiida_hyperqueue-0.2.1/docs/source/developer_guide/index.md +0 -107
  24. aiida_hyperqueue-0.2.1/docs/source/get_started.md +0 -147
  25. aiida_hyperqueue-0.2.1/docs/source/img/AiiDA_transparent_logo.png +0 -0
  26. aiida_hyperqueue-0.2.1/docs/source/index.md +0 -62
  27. aiida_hyperqueue-0.2.1/tests/README.md +0 -5
  28. aiida_hyperqueue-0.2.1/tests/__init__.py +0 -10
  29. aiida_hyperqueue-0.2.1/tests/conftest.py +0 -387
  30. aiida_hyperqueue-0.2.1/tests/target/hq +0 -0
  31. aiida_hyperqueue-0.2.1/tests/test_cli_alloc.py +0 -16
  32. aiida_hyperqueue-0.2.1/tests/test_cli_install.py +0 -30
  33. aiida_hyperqueue-0.2.1/tests/test_cli_server.py +0 -152
  34. aiida_hyperqueue-0.2.1/tests/test_scheduler.py +0 -215
  35. aiida_hyperqueue-0.2.1/tests/utils/__init__.py +0 -11
  36. aiida_hyperqueue-0.2.1/tests/utils/cmd.py +0 -16
  37. aiida_hyperqueue-0.2.1/tests/utils/io.py +0 -28
  38. aiida_hyperqueue-0.2.1/tests/utils/job.py +0 -24
  39. aiida_hyperqueue-0.2.1/tests/utils/mock.py +0 -43
  40. aiida_hyperqueue-0.2.1/tests/utils/table.py +0 -151
  41. aiida_hyperqueue-0.2.1/tests/utils/wait.py +0 -85
  42. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/LICENSE +0 -0
  43. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/README.md +0 -0
  44. {aiida_hyperqueue-0.2.1 → aiida_hyperqueue-0.4.0}/aiida_hyperqueue/cli/params/__init__.py +0 -0
@@ -1,9 +1,9 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: aiida-hyperqueue
3
- Version: 0.2.1
3
+ Version: 0.4.0
4
4
  Summary: AiiDA plugin for the HyperQueue metascheduler
5
5
  Author: Marnik Bercx, Jusong Yu
6
- Requires-Python: >=3.9
6
+ Requires-Python: >=3.10
7
7
  Description-Content-Type: text/markdown
8
8
  Classifier: Framework :: AiiDA
9
9
  Classifier: Development Status :: 3 - Alpha
@@ -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,<2.7
16
+ Requires-Dist: aiida-core~=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"
@@ -29,6 +29,7 @@ Project-URL: Source, https://github.com/aiidateam/aiida-hyperqueue
29
29
  Provides-Extra: docs
30
30
  Provides-Extra: pre-commit
31
31
  Provides-Extra: tests
32
+ Import-Name: aiida_hyperqueue
32
33
 
33
34
  [![Build Status](https://github.com/aiidateam/aiida-hyperqueue/workflows/ci/badge.svg)](https://github.com/aiidateam/aiida-hyperqueue/actions)
34
35
  [![Docs status](https://readthedocs.org/projects/aiida-hyperqueue/badge)](http://aiida-hyperqueue.readthedocs.io/)
@@ -1,8 +1,7 @@
1
- # -*- coding: utf-8 -*-
2
1
  """
3
2
  aiida_hyperqueue
4
3
 
5
4
  AiiDA plugin for the HyperQueue metascheduler
6
5
  """
7
6
 
8
- __version__ = "0.2.1"
7
+ __version__ = "0.4.0"
@@ -1,5 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
- from .root import cmd_root # noqa: F401
1
+ from .alloc import cmd_add, cmd_list, cmd_remove # noqa: F401
3
2
  from .install import cmd_install # noqa: F401
3
+ from .root import cmd_root # noqa: F401
4
4
  from .server import cmd_info, cmd_start, cmd_stop # noqa: F401
5
- from .alloc import cmd_list, cmd_add, cmd_remove # noqa: F401
@@ -1,7 +1,6 @@
1
- # -*- coding: utf-8 -*-
2
1
  import click
3
2
 
4
- from aiida.cmdline.params import options, arguments
3
+ from aiida.cmdline.params import arguments, options
5
4
  from aiida.cmdline.utils import echo
6
5
 
7
6
  from .root import cmd_root
@@ -1,10 +1,10 @@
1
- # -*- coding: utf-8 -*-
2
- import click
3
- import tempfile
4
- import requests
5
1
  import tarfile
2
+ import tempfile
6
3
  from pathlib import Path
7
4
 
5
+ import click
6
+ import requests
7
+
8
8
  from aiida import orm
9
9
  from aiida.cmdline.utils import echo
10
10
 
@@ -81,7 +81,7 @@ def cmd_install(
81
81
  with computer.get_transport() as transport:
82
82
  # Get the abs path of remote bin dir
83
83
  retval, stdout, stderr = transport.exec_command_wait(
84
- f"echo {str(remote_bin_dir)}"
84
+ f"echo {remote_bin_dir!s}"
85
85
  )
86
86
  if retval != 0:
87
87
  echo.echo_critical(
@@ -102,7 +102,7 @@ def cmd_install(
102
102
  )
103
103
 
104
104
  # XXX: should transport.put take care of this already??
105
- transport.exec_command_wait(f"chmod +x {str(remote_bin_dir / 'hq')}")
105
+ transport.exec_command_wait(f"chmod +x {remote_bin_dir / 'hq'!s}")
106
106
 
107
107
  # write to bashrc
108
108
  if write_bashrc:
@@ -1,4 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
1
  from aiida.cmdline.params import arguments as core_arguments
3
2
 
4
3
  COMPUTER = core_arguments.COMPUTER
@@ -1,9 +1,9 @@
1
- # -*- coding: utf-8 -*-
2
1
  """Reusable options for CLI commands."""
3
2
 
4
3
  import functools
5
4
 
6
5
  import click
6
+
7
7
  from aiida.cmdline.params import options as core_options
8
8
  from aiida.cmdline.params import types as core_types
9
9
 
@@ -1,4 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
1
  """Command line interface `aiida-hq` for aiida-hyperqueue.
3
2
  The CLI implementation prototype from `aiida-pseudo`.
4
3
  """
@@ -1,10 +1,9 @@
1
- # -*- coding: utf-8 -*-
2
1
  import click
3
2
 
4
3
  from aiida.cmdline.utils import echo
5
4
 
6
- from .root import cmd_root
7
5
  from .params import arguments
6
+ from .root import cmd_root
8
7
 
9
8
 
10
9
  @cmd_root.group("server")
@@ -1,4 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
1
  ###########################################################################
3
2
  # Copyright (c), The AiiDA team. All rights reserved. #
4
3
  # This file is part of the AiiDA code. #
@@ -14,8 +13,8 @@ import typing as t
14
13
  import warnings
15
14
 
16
15
  from aiida.common.extendeddicts import AttributeDict
17
- from aiida.schedulers import Scheduler, SchedulerError
18
- from aiida.schedulers.datastructures import JobInfo, JobState, JobResource, JobTemplate
16
+ from aiida.schedulers import BashCliScheduler, Scheduler, SchedulerError
17
+ from aiida.schedulers.datastructures import JobInfo, JobResource, JobState, JobTemplate
19
18
 
20
19
  # Mapping of HyperQueue states to AiiDA `JobState`s
21
20
  _MAP_STATUS_HYPERQUEUE = {
@@ -62,25 +61,26 @@ class HyperQueueJobResource(JobResource):
62
61
  try:
63
62
  resources.num_cpus = kwargs.pop("num_cpus")
64
63
  except KeyError:
64
+ # For backward compatibility where `num_machines` and `num_mpiprocs_per_machine`
65
+ # are set. `num_mpiprocs_per_machine` is normally injected by aiida-core's
66
+ # `Scheduler.preprocess_resources` from the computer's
67
+ # `default_mpiprocs_per_machine`, which is `None` when the computer defines no
68
+ # default — hence the `or`-fallback to 1 rather than a `pop` default.
69
+ num_mpiprocs_per_machine = kwargs.pop("num_mpiprocs_per_machine", None) or 1
65
70
  try:
66
- # For backward compatibility where `num_machines` and `num_mpiprocs_per_machine` are setting
67
- # TODO: I only setting the default value as 1 for `num_mpiprocs_per_machine` because aiida-quantumespresso override
68
- # resources default with `num_machines` set to 1 and then get builder with such setting.
69
- # The `num_mpiprocs_per_machine` sometime can be read from "Default #procs/machine" of computer setup but if it is not exist
70
- # the builder can not be properly get without passing `option` to builder generator.
71
- # It is anyway a workaround for backward compatibility so this default is implemented despite it is quite specific for the qe plugin.
72
- resources.num_cpus = kwargs.pop("num_machines") * kwargs.pop(
73
- "num_mpiprocs_per_machine", 1
71
+ resources.num_cpus = (
72
+ kwargs.pop("num_machines") * num_mpiprocs_per_machine
74
73
  )
75
74
  except KeyError:
76
75
  raise KeyError(
77
76
  "Must specify `num_cpus`, or (`num_machines` and `num_mpiprocs_per_machine`)"
78
77
  )
79
78
  else:
80
- message = "The `num_machines` and `num_mpiprocs_per_machine` for setting hyperqueue resources are deprecated. "
81
- "Please set `num_cpus` and `memory_mb`."
82
-
83
- message = f"{message} (this will be removed in aiida-hyperqueue v1.0)"
79
+ message = (
80
+ "The `num_machines` and `num_mpiprocs_per_machine` for setting hyperqueue "
81
+ "resources are deprecated. Please set `num_cpus` and `memory_mb`. "
82
+ "(this will be removed in aiida-hyperqueue v1.0)"
83
+ )
84
84
  warnings.warn(message, AiiDAHypereQueueDeprecationWarning, stacklevel=3)
85
85
  else:
86
86
  if not isinstance(resources.num_cpus, int):
@@ -98,15 +98,20 @@ class HyperQueueJobResource(JobResource):
98
98
 
99
99
  @classmethod
100
100
  def accepts_default_mpiprocs_per_machine(cls):
101
- """Return True if this subclass accepts a `default_mpiprocs_per_machine` key, False otherwise."""
102
- return False
101
+ """Return True if this subclass accepts a `default_mpiprocs_per_machine` key, False otherwise.
102
+
103
+ Accepting it lets the backward-compatibility `num_machines` path pick up the
104
+ computer's ``default_mpiprocs_per_machine`` instead of silently running on a
105
+ single CPU.
106
+ """
107
+ return True
103
108
 
104
109
  def get_tot_num_mpiprocs(self):
105
110
  """Return the total number of cpus of this job resource."""
106
111
  return self.num_cpus
107
112
 
108
113
 
109
- class HyperQueueScheduler(Scheduler):
114
+ class HyperQueueScheduler(BashCliScheduler):
110
115
  """Support for the HyperQueue scheduler (https://it4innovations.github.io/hyperqueue/stable/)."""
111
116
 
112
117
  _logger = Scheduler._logger.getChild("hyperqueue")
@@ -21,10 +21,10 @@ classifiers = [
21
21
  "Natural Language :: English",
22
22
  "Programming Language :: Python",
23
23
  ]
24
- requires-python = ">=3.9"
24
+ requires-python = ">=3.10"
25
25
 
26
26
  dependencies = [
27
- "aiida-core~=2.0,<2.7",
27
+ "aiida-core~=2.7",
28
28
  ]
29
29
 
30
30
  [project.urls]
@@ -1,52 +0,0 @@
1
- name: cd
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v[0-9]+.[0-9]+.[0-9]+*'
7
-
8
- jobs:
9
-
10
- validate-release-tag:
11
-
12
- if: github.repository == 'aiidateam/aiida-hyperqueue'
13
- runs-on: ubuntu-latest
14
-
15
- steps:
16
- - name: Checkout source
17
- uses: actions/checkout@v3
18
-
19
- - name: Set up Python 3.10
20
- uses: actions/setup-python@v4
21
- with:
22
- python-version: '3.10'
23
-
24
- - name: Validate the tag version against the package version
25
- run: python .github/workflows/validate_release_tag.py $GITHUB_REF
26
-
27
- publish:
28
-
29
- name: Publish to PyPI
30
- needs: [validate-release-tag]
31
- runs-on: ubuntu-latest
32
- environment: deployment
33
- permissions:
34
- id-token: write
35
-
36
- steps:
37
- - name: Checkout source
38
- uses: actions/checkout@v3
39
-
40
- - name: Set up Python 3.10
41
- uses: actions/setup-python@v4
42
- with:
43
- python-version: '3.10'
44
-
45
- - name: Install flit
46
- run: pip install flit~=3.8
47
-
48
- - name: Build with flit
49
- run: flit build
50
-
51
- - name: Publish to PyPI using Trusted Publishing
52
- uses: pypa/gh-action-pypi-publish@release/v1
@@ -1,30 +0,0 @@
1
- name: ci
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
-
7
- tests:
8
- runs-on: ubuntu-latest
9
- timeout-minutes: 30
10
- strategy:
11
- matrix:
12
- python-version: ["3.10"]
13
-
14
- steps:
15
- - uses: actions/checkout@v3
16
-
17
- - name: Set up Python ${{ matrix.python-version }}
18
- uses: actions/setup-python@v4
19
- with:
20
- python-version: ${{ matrix.python-version }}
21
-
22
- - name: Install python dependencies
23
- run: |
24
- pip install --upgrade pip
25
- pip install .[tests]
26
-
27
- - name: Run test suite
28
- run: |
29
- chmod og-rw ~
30
- pytest --cov aiida_hyperqueue --cov-append .
@@ -1,96 +0,0 @@
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,45 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- """Validate that the version in the tag label matches the version of the package."""
3
-
4
- import argparse
5
- import ast
6
- from pathlib import Path
7
-
8
-
9
- def get_version_from_module(content: str) -> str:
10
- """Get the ``__version__`` attribute from a module.
11
-
12
- .. note:: This has been adapted from :mod:`setuptools.config`.
13
- """
14
- try:
15
- module = ast.parse(content)
16
- except SyntaxError as exception:
17
- raise OSError("Unable to parse module.") from exception
18
-
19
- try:
20
- return next(
21
- ast.literal_eval(statement.value)
22
- for statement in module.body
23
- if isinstance(statement, ast.Assign)
24
- for target in statement.targets
25
- if isinstance(target, ast.Name) and target.id == "__version__"
26
- )
27
- except StopIteration as exception:
28
- raise OSError(
29
- "Unable to find the `__version__` attribute in the module."
30
- ) from exception
31
-
32
-
33
- if __name__ == "__main__":
34
- parser = argparse.ArgumentParser()
35
- parser.add_argument("GITHUB_REF", help="The GITHUB_REF environmental variable")
36
- args = parser.parse_args()
37
- assert args.GITHUB_REF.startswith(
38
- "refs/tags/v"
39
- ), f'GITHUB_REF should start with "refs/tags/v": {args.GITHUB_REF}'
40
- tag_version = args.GITHUB_REF[11:]
41
- package_version = get_version_from_module(
42
- Path("aiida_hyperqueue/__init__.py").read_text(encoding="utf-8")
43
- )
44
- error_message = f"The tag version `{tag_version}` is different from the package version `{package_version}`"
45
- assert tag_version == package_version, error_message
@@ -1,14 +0,0 @@
1
- *.pyc
2
- *.swo
3
- *.swp
4
- ~*
5
- *~
6
- .project
7
- *.egg*
8
- .DS_Store
9
- .coverage
10
- .pytest_cache
11
- .vscode
12
- build/
13
- dist/
14
- pip-wheel-metadata/
@@ -1,17 +0,0 @@
1
- # Install pre-commit hooks via:
2
- # pre-commit install
3
- repos:
4
- - repo: https://github.com/pre-commit/pre-commit-hooks
5
- rev: v4.6.0
6
- hooks:
7
- - id: end-of-file-fixer
8
- - id: fix-encoding-pragma
9
- - id: mixed-line-ending
10
- - id: trailing-whitespace
11
- - id: check-json
12
-
13
- - repo: https://github.com/astral-sh/ruff-pre-commit
14
- rev: v0.6.5
15
- hooks:
16
- - id: ruff-format
17
- - id: ruff
@@ -1,26 +0,0 @@
1
- version: 2
2
-
3
- # YAML adapted from aiida-core .readthedocs.yml
4
-
5
- # Disable all unneeded formats
6
- formats: []
7
-
8
- build:
9
- os: ubuntu-22.04
10
- tools:
11
- python: '3.11'
12
- jobs:
13
- # Use uv to speed up the build
14
- # https://docs.readthedocs.io/en/stable/build-customization.html#install-dependencies-with-uv
15
- post_create_environment:
16
- - asdf plugin add uv
17
- - asdf install uv 0.2.9
18
- - asdf global uv 0.2.9
19
- post_install:
20
- - VIRTUAL_ENV=$READTHEDOCS_VIRTUALENV_PATH uv pip install .[docs]
21
-
22
- # Let the build fail if there are any warnings
23
- sphinx:
24
- builder: html
25
- configuration: docs/source/conf.py
26
- fail_on_warning: true
@@ -1,25 +0,0 @@
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
-
6
- ## v0.2.0
7
-
8
- - [#18](https://github.com/aiidateam/aiida-hyperqueue/pull/18) A large refactoring with following changes:
9
-
10
- - correctly support memory setup for resources.
11
- - support turn on hyperthreading with latest version of hyperqueue.
12
- - Support install hq to remote computer over CLI.
13
- - adding unit tests with submit to real hq using the fixture from hyperqueue repo.
14
- - Fix the submit bug for hq > 0.12 that resources are configured twice in job script and submit command.
15
-
16
- - [#26](https://github.com/aiidateam/aiida-hyperqueue/pull/26) Change alloc add worker name (name appear in slurm queue) `aiida` -> `ahq`
17
- - [#24](https://github.com/aiidateam/aiida-hyperqueue/pull/24) Use JSON format as output for hq job list and hq submit
18
-
19
- ## v0.1.1
20
-
21
- Only a small fix to the `README.md` was added here, this release is mainly to test the automated deployment to PyPI.
22
-
23
- ## v0.1.0
24
-
25
- First release on PyPI, tested with HyperQueue v0.15.0.
@@ -1 +0,0 @@
1
- build/
@@ -1,41 +0,0 @@
1
- # Makefile for Sphinx documentation
2
- #
3
-
4
- # You can set these variables from the command line.
5
- SPHINXOPTS =
6
- SPHINXBUILD = sphinx-build
7
- PAPER =
8
- BUILDDIR = build
9
-
10
- # User-friendly check for sphinx-build
11
- ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
12
- $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
13
- endif
14
-
15
- # Internal variables.
16
- PAPEROPT_a4 = -D latex_paper_size=a4
17
- PAPEROPT_letter = -D latex_paper_size=letter
18
- ALLSPHINXOPTS = -n -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
19
- # the i18n builder cannot share the environment and doctrees with the others
20
- I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
21
-
22
- .PHONY: all help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext customdefault
23
-
24
- ## Runs nit-picky and converting warnings into errors to
25
- ## make sure the documentation is properly written
26
- customdefault:
27
- $(SPHINXBUILD) -b html -nW $(ALLSPHINXOPTS) $(BUILDDIR)/html
28
-
29
- all: html
30
-
31
- clean:
32
- rm -r $(BUILDDIR)
33
-
34
- html:
35
- $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
36
- @echo
37
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
38
-
39
-
40
- view:
41
- xdg-open $(BUILDDIR)/html/index.html