From 75e7c4981850ea9a2663ad8cda2bde17511b4687 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jan 2024 02:54:18 +0000 Subject: [PATCH 1/3] Bump dorny/paths-filter from 2 to 3 Bumps [dorny/paths-filter](https://github.com/dorny/paths-filter) from 2 to 3. - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v2...v3) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/pr-tests-enclave.yml | 2 +- .github/workflows/pr-tests-frontend.yml | 4 ++-- .github/workflows/pr-tests-hagrid.yml | 2 +- .github/workflows/pr-tests-stack-arm64.yml | 2 +- .github/workflows/pr-tests-stack-public.yml | 2 +- .github/workflows/pr-tests-stack.yml | 8 ++++---- .github/workflows/pr-tests-syft.yml | 8 ++++---- .github/workflows/vm-tests.yml | 2 +- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/pr-tests-enclave.yml b/.github/workflows/pr-tests-enclave.yml index cccf250d367..37a47d13ac1 100644 --- a/.github/workflows/pr-tests-enclave.yml +++ b/.github/workflows/pr-tests-enclave.yml @@ -42,7 +42,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-frontend.yml b/.github/workflows/pr-tests-frontend.yml index 2bfb8a34a0e..bb443c081cc 100644 --- a/.github/workflows/pr-tests-frontend.yml +++ b/.github/workflows/pr-tests-frontend.yml @@ -30,7 +30,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -111,7 +111,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-hagrid.yml b/.github/workflows/pr-tests-hagrid.yml index 06c7a4ad5da..ef70aa042df 100644 --- a/.github/workflows/pr-tests-hagrid.yml +++ b/.github/workflows/pr-tests-hagrid.yml @@ -35,7 +35,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-stack-arm64.yml b/.github/workflows/pr-tests-stack-arm64.yml index 07c294d58b9..1f9dff53a15 100644 --- a/.github/workflows/pr-tests-stack-arm64.yml +++ b/.github/workflows/pr-tests-stack-arm64.yml @@ -41,7 +41,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-stack-public.yml b/.github/workflows/pr-tests-stack-public.yml index 682f4de97c1..7a173000d02 100644 --- a/.github/workflows/pr-tests-stack-public.yml +++ b/.github/workflows/pr-tests-stack-public.yml @@ -37,7 +37,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-stack.yml b/.github/workflows/pr-tests-stack.yml index 18c628e74df..b626a0cfa0b 100644 --- a/.github/workflows/pr-tests-stack.yml +++ b/.github/workflows/pr-tests-stack.yml @@ -61,7 +61,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -251,7 +251,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -333,7 +333,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -529,7 +529,7 @@ jobs: sudo chown -R $USER:$USER $HOME - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/pr-tests-syft.yml b/.github/workflows/pr-tests-syft.yml index 6398eac823f..0852db9269b 100644 --- a/.github/workflows/pr-tests-syft.yml +++ b/.github/workflows/pr-tests-syft.yml @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -134,7 +134,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -214,7 +214,7 @@ jobs: docker system prune --all --force - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} @@ -312,7 +312,7 @@ jobs: # sudo chown -R $USER:$USER $HOME - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} diff --git a/.github/workflows/vm-tests.yml b/.github/workflows/vm-tests.yml index 4e271afc31f..272ce92d257 100644 --- a/.github/workflows/vm-tests.yml +++ b/.github/workflows/vm-tests.yml @@ -31,7 +31,7 @@ jobs: - uses: actions/checkout@v4 - name: Check for file changes - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v3 id: changes with: base: ${{ github.ref }} From f3dc15105df8f22783a9e70c2a5d295715fb45bf Mon Sep 17 00:00:00 2001 From: Madhava Jay Date: Wed, 31 Jan 2024 10:06:04 +1000 Subject: [PATCH 2/3] Fixed issue where new args in hagrid break syft code - Fixed bug where arg parse not handling bools properly --- packages/hagrid/hagrid/orchestra.py | 79 +++++++++++------------------ packages/syft/src/syft/node/run.py | 37 ++++++++++---- 2 files changed, 55 insertions(+), 61 deletions(-) diff --git a/packages/hagrid/hagrid/orchestra.py b/packages/hagrid/hagrid/orchestra.py index cb9eefd3585..1f3b5f96285 100644 --- a/packages/hagrid/hagrid/orchestra.py +++ b/packages/hagrid/hagrid/orchestra.py @@ -1,4 +1,5 @@ """Python Level API to launch Docker Containers using Hagrid""" + # future from __future__ import annotations @@ -255,38 +256,34 @@ def deploy_to_python( print("Staging Protocol Changes...") stage_protocol_changes() + kwargs = { + "name": name, + "host": host, + "port": port, + "reset": reset, + "processes": processes, + "dev_mode": dev_mode, + "tail": tail, + "node_type": node_type_enum, + "node_side_type": node_side_type, + "enable_warnings": enable_warnings, + # new kwargs + "queue_port": queue_port, + "n_consumers": n_consumers, + "create_producer": create_producer, + } + if port: + kwargs["in_memory_workers"] = True if port == "auto": # dont use default port to prevent port clashes in CI port = find_available_port(host="localhost", port=None, search=True) + kwargs["port"] = port + sig = inspect.signature(sy.serve_node) - if "node_type" in sig.parameters.keys(): - start, stop = sy.serve_node( - name=name, - host=host, - port=port, - reset=reset, - processes=processes, - queue_port=queue_port, - n_consumers=n_consumers, - create_producer=create_producer, - dev_mode=dev_mode, - tail=tail, - node_type=node_type_enum, - node_side_type=node_side_type, - enable_warnings=enable_warnings, - in_memory_workers=True, # Only in-memory workers supported for python mode - ) - else: - # syft <= 0.8.1 - start, stop = sy.serve_node( - name=name, - host=host, - port=port, - reset=reset, - dev_mode=dev_mode, - tail=tail, - ) + supported_kwargs = {k: v for k, v in kwargs.items() if k in sig.parameters} + + start, stop = sy.serve_node(**supported_kwargs) start() return NodeHandle( node_type=node_type_enum, @@ -298,33 +295,15 @@ def deploy_to_python( node_side_type=node_side_type, ) else: + kwargs["local_db"] = local_db + kwargs["thread_workers"] = thread_workers if node_type_enum in worker_classes: worker_class = worker_classes[node_type_enum] sig = inspect.signature(worker_class.named) + supported_kwargs = {k: v for k, v in kwargs.items() if k in sig.parameters} if "node_type" in sig.parameters.keys(): - worker = worker_class.named( - dev_mode=dev_mode, - name=name, - processes=processes, - reset=reset, - local_db=local_db, - node_type=node_type_enum, - node_side_type=node_side_type, - enable_warnings=enable_warnings, - n_consumers=n_consumers, - thread_workers=thread_workers, - create_producer=create_producer, - queue_port=queue_port, - migrate=True, - ) - else: - # syft <= 0.8.1 - worker = worker_class.named( - name=name, - processes=processes, - reset=reset, - local_db=local_db, - ) + supported_kwargs["migrate"] = True + worker = worker_class.named(**supported_kwargs) else: raise NotImplementedError(f"node_type: {node_type_enum} is not supported") diff --git a/packages/syft/src/syft/node/run.py b/packages/syft/src/syft/node/run.py index bcd1d21ace8..3b8376fb4e1 100644 --- a/packages/syft/src/syft/node/run.py +++ b/packages/syft/src/syft/node/run.py @@ -1,10 +1,19 @@ # stdlib import argparse +from typing import Optional # relative from ..client.deploy import Orchestra +def str_to_bool(bool_str: Optional[str]) -> bool: + result = False + bool_str = str(bool_str).lower() + if bool_str == "true" or bool_str == "1": + result = True + return result + + def run(): parser = argparse.ArgumentParser() parser.add_argument("command", help="command: launch", type=str, default="none") @@ -28,43 +37,43 @@ def run(): parser.add_argument( "--dev-mode", help="developer mode", - type=bool, - default=True, + type=str, + default="True", dest="dev_mode", ) parser.add_argument( "--reset", help="reset", - type=bool, - default=True, + type=str, + default="True", dest="reset", ) parser.add_argument( "--local-db", help="reset", - type=bool, - default=False, + type=str, + default="False", dest="local_db", ) parser.add_argument( "--processes", help="processing mode", type=int, - default=False, + default=0, dest="processes", ) parser.add_argument( "--tail", help="tail mode", - type=bool, - default=True, + type=str, + default="True", dest="tail", ) parser.add_argument( "--cmd", help="cmd mode", - type=bool, - default=False, + type=str, + default="False", dest="cmd", ) @@ -73,6 +82,12 @@ def run(): if args.command != "launch": print("syft launch is the only command currently supported") + args.dev_mode = str_to_bool(args.dev_mode) + args.reset = str_to_bool(args.reset) + args.local_db = str_to_bool(args.local_db) + args.tail = str_to_bool(args.tail) + args.cmd = str_to_bool(args.cmd) + node = Orchestra.launch( name=args.name, node_type=args.node_type, From a7714f5f5187ae49490889f3ce0bec9d3c233e2f Mon Sep 17 00:00:00 2001 From: alfred-openmined-bot <145415986+alfred-openmined-bot@users.noreply.github.com> Date: Wed, 31 Jan 2024 03:38:21 +0000 Subject: [PATCH 3/3] [hagrid] bump version --- packages/hagrid/.bumpversion.cfg | 2 +- packages/hagrid/hagrid/manifest_template.yml | 4 ++-- packages/hagrid/hagrid/version.py | 2 +- packages/hagrid/setup.py | 2 +- scripts/hagrid_hash | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/hagrid/.bumpversion.cfg b/packages/hagrid/.bumpversion.cfg index e51623e7b54..d1128b5281a 100644 --- a/packages/hagrid/.bumpversion.cfg +++ b/packages/hagrid/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.3.105 +current_version = 0.3.106 tag = False tag_name = {new_version} commit = True diff --git a/packages/hagrid/hagrid/manifest_template.yml b/packages/hagrid/hagrid/manifest_template.yml index 1122d138b41..5678e3ed5b4 100644 --- a/packages/hagrid/hagrid/manifest_template.yml +++ b/packages/hagrid/hagrid/manifest_template.yml @@ -1,9 +1,9 @@ manifestVersion: 0.1 -hagrid_version: 0.3.105 +hagrid_version: 0.3.106 syft_version: 0.8.4-beta.14 dockerTag: 0.8.4-beta.14 baseUrl: https://raw.githubusercontent.com/OpenMined/PySyft/ -hash: 3cc4e4a80f433f6dfe2dd1ad1596fc31c11ff6eb +hash: a5864c3584a2a81cf7b18ae3aafd075a9da24b22 target_dir: ~/.hagrid/PySyft/ files: grid: diff --git a/packages/hagrid/hagrid/version.py b/packages/hagrid/hagrid/version.py index c23406d57c4..1a90352e02a 100644 --- a/packages/hagrid/hagrid/version.py +++ b/packages/hagrid/hagrid/version.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # HAGrid Version -__version__ = "0.3.105" +__version__ = "0.3.106" if __name__ == "__main__": print(__version__) diff --git a/packages/hagrid/setup.py b/packages/hagrid/setup.py index 8ecff73a423..e8c7cbf999c 100644 --- a/packages/hagrid/setup.py +++ b/packages/hagrid/setup.py @@ -5,7 +5,7 @@ from setuptools import find_packages from setuptools import setup -__version__ = "0.3.105" +__version__ = "0.3.106" DATA_FILES = {"img": ["hagrid/img/*.png"], "hagrid": ["*.yml"]} diff --git a/scripts/hagrid_hash b/scripts/hagrid_hash index 899d276e669..b0293a9d097 100644 --- a/scripts/hagrid_hash +++ b/scripts/hagrid_hash @@ -1 +1 @@ -0971435a180fb97a187e0271e9342863 +55fa40104063afa8e52213b1c8d29634