From 6a28700a7783799754cc3e1599eb1ae72eb3b033 Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 18:43:36 +0530 Subject: [PATCH 01/14] feat: port http_server as valory package --- .../connections/http_server/README.md | 2 +- .../connections/http_server/__init__.py | 1 + .../connections/http_server/connection.py | 2 +- .../connections/http_server/connection.yaml | 12 ++++++------ .../connections/http_server/tests/__init__.py | 2 +- .../http_server/tests/data/certs/server.crt | 0 .../http_server/tests/data/certs/server.csr | 0 .../http_server/tests/data/certs/server.key | 0 .../http_server/tests/data/petstore_sim.yaml | 0 .../http_server/tests/test_http_server.py | 2 +- 10 files changed, 11 insertions(+), 10 deletions(-) rename packages/{fetchai => valory}/connections/http_server/README.md (54%) rename packages/{fetchai => valory}/connections/http_server/__init__.py (96%) rename packages/{fetchai => valory}/connections/http_server/connection.py (99%) rename packages/{fetchai => valory}/connections/http_server/connection.yaml (73%) rename packages/{fetchai => valory}/connections/http_server/tests/__init__.py (96%) rename packages/{fetchai => valory}/connections/http_server/tests/data/certs/server.crt (100%) rename packages/{fetchai => valory}/connections/http_server/tests/data/certs/server.csr (100%) rename packages/{fetchai => valory}/connections/http_server/tests/data/certs/server.key (100%) rename packages/{fetchai => valory}/connections/http_server/tests/data/petstore_sim.yaml (100%) rename packages/{fetchai => valory}/connections/http_server/tests/test_http_server.py (99%) diff --git a/packages/fetchai/connections/http_server/README.md b/packages/valory/connections/http_server/README.md similarity index 54% rename from packages/fetchai/connections/http_server/README.md rename to packages/valory/connections/http_server/README.md index cb16e32cdd..a2947c1384 100644 --- a/packages/fetchai/connections/http_server/README.md +++ b/packages/valory/connections/http_server/README.md @@ -4,4 +4,4 @@ This connection wraps an HTTP server. It consumes requests from clients, transla ## Usage -First, add the connection to your AEA project (`aea add connection fetchai/http_server:0.22.0`). Then, update the `config` in `connection.yaml` by providing a `host` and `port` of the server. Optionally, provide a path to an [OpenAPI specification](https://swagger.io/docs/specification/about/) for request validation. \ No newline at end of file +First, add the connection to your AEA project (`aea add connection valory/http_server:0.22.0`). Then, update the `config` in `connection.yaml` by providing a `host` and `port` of the server. Optionally, provide a path to an [OpenAPI specification](https://swagger.io/docs/specification/about/) for request validation. \ No newline at end of file diff --git a/packages/fetchai/connections/http_server/__init__.py b/packages/valory/connections/http_server/__init__.py similarity index 96% rename from packages/fetchai/connections/http_server/__init__.py rename to packages/valory/connections/http_server/__init__.py index 5378e2084f..031e3523f0 100644 --- a/packages/fetchai/connections/http_server/__init__.py +++ b/packages/valory/connections/http_server/__init__.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # +# Copyright 2022-2023 Valory AG # Copyright 2018-2020 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/packages/fetchai/connections/http_server/connection.py b/packages/valory/connections/http_server/connection.py similarity index 99% rename from packages/fetchai/connections/http_server/connection.py rename to packages/valory/connections/http_server/connection.py index 420c04c132..7d1bf33118 100644 --- a/packages/fetchai/connections/http_server/connection.py +++ b/packages/valory/connections/http_server/connection.py @@ -67,7 +67,7 @@ _default_logger = logging.getLogger("aea.packages.fetchai.connections.http_server") RequestId = DialogueLabel -PUBLIC_ID = PublicId.from_str("fetchai/http_server:0.22.0") +PUBLIC_ID = PublicId.from_str("valory/http_server:0.22.0") class HttpDialogues(BaseHttpDialogues): diff --git a/packages/fetchai/connections/http_server/connection.yaml b/packages/valory/connections/http_server/connection.yaml similarity index 73% rename from packages/fetchai/connections/http_server/connection.yaml rename to packages/valory/connections/http_server/connection.yaml index aede9bee9c..8370961273 100644 --- a/packages/fetchai/connections/http_server/connection.yaml +++ b/packages/valory/connections/http_server/connection.yaml @@ -1,5 +1,5 @@ name: http_server -author: fetchai +author: valory version: 0.22.0 type: connection description: The HTTP server connection that wraps http server implementing a RESTful @@ -7,15 +7,15 @@ description: The HTTP server connection that wraps http server implementing a RE license: Apache-2.0 aea_version: '>=1.0.0, <2.0.0' fingerprint: - README.md: bafybeihkuhhsdfw5qqtz2jwpfppub6yvsehzmvmaqjlxnal4v76x47mcrq - __init__.py: bafybeif5pkr5oarwd7yagdgn46miolmdmvgdyxv4kadgws2bf3iwshom24 - connection.py: bafybeicrzlp4krqcf6gunbhhu2j47qp4f7adviw3qxoabt56yy5d3ksaci - tests/__init__.py: bafybeidpthyhnhsvpixejrud77klcfkb3titlmyrssovfzt4a76dn3wnpm + README.md: bafybeifepluovb4so2eem34ulpcp4svegb2dqfpmtojtofhfkb3j2xanui + __init__.py: bafybeifykou5sazojmc7hdqnsdp4mncd4zh3xys3mdgdzwks23mvhzu2ga + connection.py: bafybeidc6zysa47tppkvq3ddq4jgpind7h6zzpsl4s7vukbbj5y4ts2zxm + tests/__init__.py: bafybeifqaf7cnc4oczjkbwmv4ahrkbiqxrojwgowej3kbri3skz4lzt43i tests/data/certs/server.crt: bafybeiev5i3xxkvn36wflf633gkumuxexsw4y2bubwbvl7edrz4igfgv34 tests/data/certs/server.csr: bafybeicvp7xdl5w3o4bzikkudpduitss3bpp6xqfwlxbw6kabdangohy5u tests/data/certs/server.key: bafybeiabvpkpqr4fctrbssfal6pviv5otgmu32qyrfpyhcql5wgmlzjtoe tests/data/petstore_sim.yaml: bafybeiaekkfxljlv57uviz4ug6isdqbzsnuxpsgy3dvhzh22daql3xh2i4 - tests/test_http_server.py: bafybeihxrl4eqgbroqfcrnued3twwx24cfzfpuxrqkkgvirqtqhadbmxzm + tests/test_http_server.py: bafybeicixzlwx5aodces44mtkpkhxaombb5xqrsmwi4s7ksjgbolmjildq fingerprint_ignore_patterns: [] connections: [] protocols: diff --git a/packages/fetchai/connections/http_server/tests/__init__.py b/packages/valory/connections/http_server/tests/__init__.py similarity index 96% rename from packages/fetchai/connections/http_server/tests/__init__.py rename to packages/valory/connections/http_server/tests/__init__.py index 5dd135e96c..27614bc9e7 100644 --- a/packages/fetchai/connections/http_server/tests/__init__.py +++ b/packages/valory/connections/http_server/tests/__init__.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # -# Copyright 2022 Valory AG +# Copyright 2022-2023 Valory AG # Copyright 2018-2020 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/packages/fetchai/connections/http_server/tests/data/certs/server.crt b/packages/valory/connections/http_server/tests/data/certs/server.crt similarity index 100% rename from packages/fetchai/connections/http_server/tests/data/certs/server.crt rename to packages/valory/connections/http_server/tests/data/certs/server.crt diff --git a/packages/fetchai/connections/http_server/tests/data/certs/server.csr b/packages/valory/connections/http_server/tests/data/certs/server.csr similarity index 100% rename from packages/fetchai/connections/http_server/tests/data/certs/server.csr rename to packages/valory/connections/http_server/tests/data/certs/server.csr diff --git a/packages/fetchai/connections/http_server/tests/data/certs/server.key b/packages/valory/connections/http_server/tests/data/certs/server.key similarity index 100% rename from packages/fetchai/connections/http_server/tests/data/certs/server.key rename to packages/valory/connections/http_server/tests/data/certs/server.key diff --git a/packages/fetchai/connections/http_server/tests/data/petstore_sim.yaml b/packages/valory/connections/http_server/tests/data/petstore_sim.yaml similarity index 100% rename from packages/fetchai/connections/http_server/tests/data/petstore_sim.yaml rename to packages/valory/connections/http_server/tests/data/petstore_sim.yaml diff --git a/packages/fetchai/connections/http_server/tests/test_http_server.py b/packages/valory/connections/http_server/tests/test_http_server.py similarity index 99% rename from packages/fetchai/connections/http_server/tests/test_http_server.py rename to packages/valory/connections/http_server/tests/test_http_server.py index 0b49359e62..dee5a70ca4 100644 --- a/packages/fetchai/connections/http_server/tests/test_http_server.py +++ b/packages/valory/connections/http_server/tests/test_http_server.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # -# Copyright 2022 Valory AG +# Copyright 2022-2023 Valory AG # Copyright 2018-2021 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); From 639caa2d5831e5da4e939de1b1fb44aad794916a Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 18:44:25 +0530 Subject: [PATCH 02/14] chore: hashes --- docs/package_list.md | 2 +- packages/open_aea/agents/http_echo/aea-config.yaml | 4 ++-- packages/packages.json | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/package_list.md b/docs/package_list.md index 763b437573..22d8699612 100644 --- a/docs/package_list.md +++ b/docs/package_list.md @@ -7,7 +7,7 @@ | protocol/valory/contract_api/1.0.0 | `bafybeiasywsvax45qmugus5kxogejj66c5taen27h4voriodz7rgushtqa` | | protocol/valory/http/1.0.0 | `bafybeia5bxdua2i6chw6pg47bvoljzcpuqxzy4rdrorbdmcbnwmnfdobtu` | | protocol/valory/ledger_api/1.0.0 | `bafybeigsvceac33asd6ecbqev34meyyjwu3rangenv6xp5rkxyz4krvcby` | -| connection/fetchai/http_server/0.22.0 | `bafybeihp5umafxzx45aad5pj7s3343se2wjkgnbirt4pybrape22swm6de` | +| connection/valory/http_server/0.22.0 | `bafybeihp5umafxzx45aad5pj7s3343se2wjkgnbirt4pybrape22swm6de` | | connection/fetchai/stub/0.21.0 | `bafybeihijtaawc2adyewb3g7kta7hw6jyhyhoi7cotkzgqilves5zz7smm` | | connection/valory/ledger/0.19.0 | `bafybeiejc7g7ebv3cleiqb4f4h4pspcu6vtr54332szwlqiabfs3sfdh44` | | connection/valory/p2p_libp2p/0.1.0 | `bafybeigfvt35r5blb3pp43iads6a56jolquvib5unbndkue7cgysazuxuu` | diff --git a/packages/open_aea/agents/http_echo/aea-config.yaml b/packages/open_aea/agents/http_echo/aea-config.yaml index 3bb58580a0..4cf5c3cef2 100644 --- a/packages/open_aea/agents/http_echo/aea-config.yaml +++ b/packages/open_aea/agents/http_echo/aea-config.yaml @@ -8,7 +8,7 @@ fingerprint: README.md: bafybeibkr6ecv5efx3hwxvxposvpmr76ugrj6kydeasb7bppo3ibynnjcu fingerprint_ignore_patterns: [] connections: -- fetchai/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u +- valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym contracts: [] protocols: - fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm @@ -29,7 +29,7 @@ dependencies: open-aea-ledger-ethereum: {} default_connection: null --- -public_id: fetchai/http_server:0.22.0 +public_id: valory/http_server:0.22.0 type: connection config: host: ${HOST:str:localhost} diff --git a/packages/packages.json b/packages/packages.json index 1614b628aa..b6273237fe 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -7,8 +7,8 @@ "protocol/valory/contract_api/1.0.0": "bafybeialhbjvwiwcnqq3ysxcyemobcbie7xza66gaofcvla5njezkvhcka", "protocol/valory/http/1.0.0": "bafybeiejoqgv7finfxo3rcvvovrlj5ccrbgxodjq43uo26ylpowsa3llfe", "protocol/valory/ledger_api/1.0.0": "bafybeige5agrztgzfevyglf7mb4o7pzfttmq4f6zi765y4g2zvftbyowru", - "connection/fetchai/http_server/0.22.0": "bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u", "connection/fetchai/stub/0.21.0": "bafybeictgpdqbpyppmoxn2g7jkaxvulihew7zaszv4xyhgvsntq7tqs7wi", + "connection/valory/http_server/0.22.0": "bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym", "connection/valory/ledger/0.19.0": "bafybeiauyqzizmocjldnfuzvnihrqubfqzn5u2hp6ue7v3ka5kj54kd3zm", "connection/valory/p2p_libp2p/0.1.0": "bafybeiaykya7tvir7k5scovjzuagpfcftvptxoi2od5qqqvukwglsrrtzy", "connection/valory/p2p_libp2p_client/0.1.0": "bafybeihge56dn3xep2dzomu7rtvbgo4uc2qqh7ljl3fubqdi2lq44gs5lq", @@ -26,7 +26,7 @@ "agent/fetchai/gym_aea/0.25.0": "bafybeif5c657r3ixuosbyihtsdzr2tqifikxgy5e6t7ur2jmhtiolina3m", "agent/fetchai/my_first_aea/0.27.0": "bafybeicrgya4gln4lqr3ba76t2cuyik37lcgr64kzna2fkoseseobytaa4", "agent/open_aea/gym_aea/0.1.0": "bafybeibyyl4wtnrfxeoed3kjnlftphkcikdqrgf76u34v4wbvwgsqfqrgy", - "agent/open_aea/http_echo/0.1.0": "bafybeie6dxx5zbu6bz7at7kqj3thjvvzucj45f3tksbio5dg23ywsbb2ty", + "agent/open_aea/http_echo/0.1.0": "bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4", "agent/open_aea/my_first_aea/0.1.0": "bafybeibv7nlyxldyj5ntivsu74ylul4dltpfvkfa46k2pbveetfpkvz4jm", "connection/fetchai/local/0.20.0": "bafybeigukufpgy2sdkv5qqde47dhigbjitxcrxwg6sl6unlpbc7wbxqyhm", "connection/valory/http_client/0.23.0": "bafybeifgeqgryx6b3s6eseyzyezygmeitcpt3tkor2eiycozoi6clgdrny", From 8370119d4d8dd0a1a3d7b64e6a6294f2746e4bdc Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 18:44:31 +0530 Subject: [PATCH 03/14] fix: http_server refferences --- docs/aev-echo-demo.md | 6 +++--- docs/connect-a-frontend.md | 2 +- docs/connection.md | 2 +- docs/http-connection-and-skill.md | 6 +++--- docs/http-echo-demo.md | 4 ++-- docs/interaction-protocol.md | 2 +- tests/test_aea_builder.py | 2 +- tests/test_cli/test_remove/test_base.py | 2 +- .../test_bash_yaml/md_files/bash-aev-echo-demo.md | 4 ++-- .../md_files/bash-http-connection-and-skill.md | 8 ++++---- .../test_bash_yaml/md_files/bash-http-echo-demo.md | 4 ++-- 11 files changed, 21 insertions(+), 21 deletions(-) diff --git a/docs/aev-echo-demo.md b/docs/aev-echo-demo.md index 9381b01a09..af93a15eca 100644 --- a/docs/aev-echo-demo.md +++ b/docs/aev-echo-demo.md @@ -23,7 +23,7 @@ aea_version: '>=1.3.0, <2.0.0' fingerprint: {} fingerprint_ignore_patterns: [] connections: -- fetchai/http_server:0.22.0 +- valory/http_server:0.22.0 contracts: [] protocols: - fetchai/default:1.0.0 @@ -45,7 +45,7 @@ dependencies: open-aea-ledger-ethereum: {} default_connection: null --- -public_id: fetchai/http_server:0.22.0 +public_id: valory/http_server:0.22.0 type: connection config: host: ${HOST:str:localhost} @@ -53,7 +53,7 @@ config: target_skill_id: ${TARGET_SKILL:str:fetchai/http_echo:0.20.0} ``` -Notice how the ```fetchai/http_server:0.22.0``` has a number of override parameters specified: +Notice how the ```valory/http_server:0.22.0``` has a number of override parameters specified: ``` yaml host: ${HOST:str:localhost} port: ${PORT:int:5000} diff --git a/docs/connect-a-frontend.md b/docs/connect-a-frontend.md index 1f3fc44bc0..9085284814 100644 --- a/docs/connect-a-frontend.md +++ b/docs/connect-a-frontend.md @@ -3,7 +3,7 @@ This page lays out two options for connecting a front-end to an AEA. The followi How to connect front-end to your AEA ## Case 1 -The first option is to create a `HTTP Server` connection that handles incoming requests from a REST API. In this scenario, the REST API communicates with the AEA and requests are handled by the `HTTP Server` connection package. The REST API should send CRUD requests to the `HTTP Server` connection (`fetchai/http_server:0.22.0`) which translates these into Envelopes to be consumed by the correct skill. +The first option is to create a `HTTP Server` connection that handles incoming requests from a REST API. In this scenario, the REST API communicates with the AEA and requests are handled by the `HTTP Server` connection package. The REST API should send CRUD requests to the `HTTP Server` connection (`valory/http_server:0.22.0`) which translates these into Envelopes to be consumed by the correct skill. ## Case 2 The second option is to create a front-end comprising a stand-alone `Multiplexer` with a `P2P` connection (`fetchai/p2p_libp2p:0.25.0`). In this scenario the Agent Communication Network can be used to send Envelopes from the AEA to the front-end. diff --git a/docs/connection.md b/docs/connection.md index b7de56ad54..3ed79b8b2f 100644 --- a/docs/connection.md +++ b/docs/connection.md @@ -36,7 +36,7 @@ The developer needs to implement four public coroutines: - The `receive` coroutine is continuously called by the AEA framework. It either returns `None` or an envelope. The `receive` coroutine must implement the logic of data being received by the agent, and if necessary, its translation into a relevant protocol. -The framework provides a demo `stub` connection which implements an I/O reader and writer to send and receive messages between the agent and a local file. To gain inspiration and become familiar with the structure of connection packages, you may find it useful to check out `fetchai/stub:0.21.0`, `fetchai/http_server:0.22.0` or `valory/http_client:0.23.0` connections. The latter two connections are for external clients to connect with an agent, and for the agent to connect with external servers, respectively. +The framework provides a demo `stub` connection which implements an I/O reader and writer to send and receive messages between the agent and a local file. To gain inspiration and become familiar with the structure of connection packages, you may find it useful to check out `fetchai/stub:0.21.0`, `valory/http_server:0.22.0` or `valory/http_client:0.23.0` connections. The latter two connections are for external clients to connect with an agent, and for the agent to connect with external servers, respectively. ### Primary methods to develop - sync connection interface diff --git a/docs/http-connection-and-skill.md b/docs/http-connection-and-skill.md index 94f83d549e..60bca68b34 100644 --- a/docs/http-connection-and-skill.md +++ b/docs/http-connection-and-skill.md @@ -29,8 +29,8 @@ Add the http server connection package: mkdir packages aea create my_aea cd my_aea -aea add connection fetchai/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote -aea push connection fetchai/http_server --local +aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local aea add protocol valory/http:1.0.0:bafybeiejoqgv7finfxo3rcvvovrlj5ccrbgxodjq43uo26ylpowsa3llfe --remote @@ -42,7 +42,7 @@ aea delete my_aea Update the default connection: ``` bash -aea config set agent.default_connection fetchai/http_server:0.22.0 +aea config set agent.default_connection valory/http_server:0.22.0 ``` Modify the `api_spec_path`: diff --git a/docs/http-echo-demo.md b/docs/http-echo-demo.md index 6741766da9..dfd9aadc02 100644 --- a/docs/http-echo-demo.md +++ b/docs/http-echo-demo.md @@ -27,8 +27,8 @@ Adding protocol 'valory/http:1.0.0'... Successfully added protocol 'valory/http:1.0.0'. Adding protocol 'fetchai/default:1.0.0'... Successfully added protocol 'fetchai/default:1.0.0'. -Adding connection 'fetchai/http_server:0.22.0'... -Successfully added connection 'fetchai/http_server:0.22.0'. +Adding connection 'valory/http_server:0.22.0'... +Successfully added connection 'valory/http_server:0.22.0'. Adding skill 'fetchai/http_echo:0.20.0'... Successfully added skill 'fetchai/http_echo:0.20.0'. Agent http_echo successfully fetched. diff --git a/docs/interaction-protocol.md b/docs/interaction-protocol.md index c727f14a6f..c2b5e91bc9 100644 --- a/docs/interaction-protocol.md +++ b/docs/interaction-protocol.md @@ -18,7 +18,7 @@ Usually, an interaction involves three types of framework packages: http connection guide we demonstrate how an AEA with an http server connection (e.g. `fetchai/http_server`) receives http payloads from web clients, translates them to messages conforming with the `fetchai/http` protocol and passes it to a skill (e.g. `fetchai/http_echo`) to process. The `fetchai/http` protocol in this case is used for communication between the connection and the skill. +In the http connection guide we demonstrate how an AEA with an http server connection (e.g. `valory/http_server`) receives http payloads from web clients, translates them to messages conforming with the `fetchai/http` protocol and passes it to a skill (e.g. `fetchai/http_echo`) to process. The `fetchai/http` protocol in this case is used for communication between the connection and the skill. ### Example 2 : AEA <> 3rd party server diff --git a/tests/test_aea_builder.py b/tests/test_aea_builder.py index babf3c647f..8d20493ca4 100644 --- a/tests/test_aea_builder.py +++ b/tests/test_aea_builder.py @@ -152,7 +152,7 @@ def test_when_package_has_missing_dependency(): f"Missing dependencies: ['(protocol, {str(HttpMessage.protocol_id)})']" ) with pytest.raises(AEAException, match=expected_message): - # connection "fetchai/http_server" requires + # connection "valory/http_server" requires # "fetchai/http" protocols. builder.add_component( ComponentType.CONNECTION, diff --git a/tests/test_cli/test_remove/test_base.py b/tests/test_cli/test_remove/test_base.py index ff80f9a1a1..a74f6f1727 100644 --- a/tests/test_cli/test_remove/test_base.py +++ b/tests/test_cli/test_remove/test_base.py @@ -152,7 +152,7 @@ def load_config(self) -> AgentConfig: # self.run_cli_command( # noqa: E800 # "add", "--local", self.ITEM_TYPE, str(self.ITEM_PUBLIC_ID) # noqa: E800 # ) # noqa: E800 - # self.run_cli_command("add", "--local", "connection", "fetchai/http_server") # noqa: E800 + # self.run_cli_command("add", "--local", "connection", "valory/http_server") # noqa: E800 # self.runner.invoke( # noqa: E800 # cli, # noqa: E800 diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-aev-echo-demo.md b/tests/test_docs/test_bash_yaml/md_files/bash-aev-echo-demo.md index d894241dd3..1138dc6087 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-aev-echo-demo.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-aev-echo-demo.md @@ -8,7 +8,7 @@ aea_version: '>=1.3.0, <2.0.0' fingerprint: {} fingerprint_ignore_patterns: [] connections: -- fetchai/http_server:0.22.0 +- valory/http_server:0.22.0 contracts: [] protocols: - fetchai/default:1.0.0 @@ -30,7 +30,7 @@ dependencies: open-aea-ledger-ethereum: {} default_connection: null --- -public_id: fetchai/http_server:0.22.0 +public_id: valory/http_server:0.22.0 type: connection config: host: ${HOST:str:localhost} diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md index 5e42caae80..ca0a22cc7e 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md @@ -3,10 +3,10 @@ aea create my_aea cd my_aea ``` ``` bash -aea add connection fetchai/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote ``` ``` bash -aea config set agent.default_connection fetchai/http_server:0.22.0 +aea config set agent.default_connection valory/http_server:0.22.0 ``` ``` bash aea config set vendor.fetchai.connections.http_server.config.api_spec_path "../examples/http_ex/petstore.yaml" @@ -48,8 +48,8 @@ models: mkdir packages aea create my_aea cd my_aea -aea add connection fetchai/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote -aea push connection fetchai/http_server --local +aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local aea add protocol valory/http:1.0.0:bafybeiejoqgv7finfxo3rcvvovrlj5ccrbgxodjq43uo26ylpowsa3llfe --remote diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md index a569127320..2bc783a945 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md @@ -11,8 +11,8 @@ Adding protocol 'valory/http:1.0.0'... Successfully added protocol 'valory/http:1.0.0'. Adding protocol 'fetchai/default:1.0.0'... Successfully added protocol 'fetchai/default:1.0.0'. -Adding connection 'fetchai/http_server:0.22.0'... -Successfully added connection 'fetchai/http_server:0.22.0'. +Adding connection 'valory/http_server:0.22.0'... +Successfully added connection 'valory/http_server:0.22.0'. Adding skill 'fetchai/http_echo:0.20.0'... Successfully added skill 'fetchai/http_echo:0.20.0'. Agent http_echo successfully fetched. From ffa6bd23b81ca069f002c74604d8884333e0b757 Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 18:48:44 +0530 Subject: [PATCH 04/14] chore: copyrights --- tests/test_cli/test_remove/test_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_cli/test_remove/test_base.py b/tests/test_cli/test_remove/test_base.py index a74f6f1727..bcedd81484 100644 --- a/tests/test_cli/test_remove/test_base.py +++ b/tests/test_cli/test_remove/test_base.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # -# Copyright 2021-2022 Valory AG +# Copyright 2021-2023 Valory AG # Copyright 2018-2019 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); From b7a70a06b82c44744d5b1f029c7d631acb1dec0d Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 18:49:34 +0530 Subject: [PATCH 05/14] chore: doc hashes --- docs/http-connection-and-skill.md | 2 +- docs/http-echo-demo.md | 2 +- .../test_bash_yaml/md_files/bash-http-connection-and-skill.md | 4 ++-- .../test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/http-connection-and-skill.md b/docs/http-connection-and-skill.md index 60bca68b34..4d8e928df4 100644 --- a/docs/http-connection-and-skill.md +++ b/docs/http-connection-and-skill.md @@ -29,7 +29,7 @@ Add the http server connection package: mkdir packages aea create my_aea cd my_aea -aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local diff --git a/docs/http-echo-demo.md b/docs/http-echo-demo.md index dfd9aadc02..767f10bd9a 100644 --- a/docs/http-echo-demo.md +++ b/docs/http-echo-demo.md @@ -16,7 +16,7 @@ The easiest way to get started with the http server is to use our pre-built exam ``` bash pipenv shell -aea fetch open_aea/http_echo:0.1.0:bafybeie6dxx5zbu6bz7at7kqj3thjvvzucj45f3tksbio5dg23ywsbb2ty --remote +aea fetch open_aea/http_echo:0.1.0:bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4 --remote cd http_echo aea generate-key ethereum; aea add-key ethereum aea install diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md index ca0a22cc7e..18078a93e1 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md @@ -3,7 +3,7 @@ aea create my_aea cd my_aea ``` ``` bash -aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote ``` ``` bash aea config set agent.default_connection valory/http_server:0.22.0 @@ -48,7 +48,7 @@ models: mkdir packages aea create my_aea cd my_aea -aea add connection valory/http_server:0.22.0:bafybeihvscddpxjbtqsetngmxo3kiht2wqhosmwiyuh3f6zjti3x3byu5u --remote +aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md index 2bc783a945..1cbfa2bd15 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md @@ -1,6 +1,6 @@ ``` bash pipenv shell -aea fetch open_aea/http_echo:0.1.0:bafybeie6dxx5zbu6bz7at7kqj3thjvvzucj45f3tksbio5dg23ywsbb2ty --remote +aea fetch open_aea/http_echo:0.1.0:bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4 --remote cd http_echo aea generate-key ethereum; aea add-key ethereum aea install From bf0e7551a4c807bce9a2b55b9c42050e2de50ecb Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 19:13:48 +0530 Subject: [PATCH 06/14] chore: linters --- packages/open_aea/agents/http_echo/aea-config.yaml | 2 +- packages/packages.json | 4 ++-- packages/valory/connections/http_server/connection.yaml | 2 +- .../valory/connections/http_server/tests/test_http_server.py | 2 +- tests/test_aea_builder.py | 2 +- tests/test_cli/test_remove/test_dependencies.py | 2 +- tests/test_helpers/test_base.py | 4 ++-- .../test_http_server/test_http_server_and_client.py | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/open_aea/agents/http_echo/aea-config.yaml b/packages/open_aea/agents/http_echo/aea-config.yaml index 4cf5c3cef2..38ca8908ab 100644 --- a/packages/open_aea/agents/http_echo/aea-config.yaml +++ b/packages/open_aea/agents/http_echo/aea-config.yaml @@ -8,7 +8,7 @@ fingerprint: README.md: bafybeibkr6ecv5efx3hwxvxposvpmr76ugrj6kydeasb7bppo3ibynnjcu fingerprint_ignore_patterns: [] connections: -- valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym +- valory/http_server:0.22.0:bafybeie3d6tj2kzewced4nnttxdvr7njue2ortvawmwdt67gwf4tcuosom contracts: [] protocols: - fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm diff --git a/packages/packages.json b/packages/packages.json index 10af5f7451..54f247010b 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -9,7 +9,7 @@ "protocol/valory/ledger_api/1.0.0": "bafybeige5agrztgzfevyglf7mb4o7pzfttmq4f6zi765y4g2zvftbyowru", "connection/fetchai/stub/0.21.0": "bafybeictgpdqbpyppmoxn2g7jkaxvulihew7zaszv4xyhgvsntq7tqs7wi", "connection/valory/ledger/0.19.0": "bafybeigo5vst3zlltkouenwxuzn6c47yr2fbbml6dl2o32rfnsezmalgnu", - "connection/valory/http_server/0.22.0": "bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym", + "connection/valory/http_server/0.22.0": "bafybeie3d6tj2kzewced4nnttxdvr7njue2ortvawmwdt67gwf4tcuosom", "connection/valory/p2p_libp2p/0.1.0": "bafybeiaykya7tvir7k5scovjzuagpfcftvptxoi2od5qqqvukwglsrrtzy", "connection/valory/p2p_libp2p_client/0.1.0": "bafybeihge56dn3xep2dzomu7rtvbgo4uc2qqh7ljl3fubqdi2lq44gs5lq", "connection/valory/p2p_libp2p_mailbox/0.1.0": "bafybeieufv6tbei3vza7bg7ggzsvyvwmzps5kghxlar3drhme6d7mxawvy", @@ -26,7 +26,7 @@ "agent/fetchai/gym_aea/0.25.0": "bafybeif5c657r3ixuosbyihtsdzr2tqifikxgy5e6t7ur2jmhtiolina3m", "agent/fetchai/my_first_aea/0.27.0": "bafybeicrgya4gln4lqr3ba76t2cuyik37lcgr64kzna2fkoseseobytaa4", "agent/open_aea/gym_aea/0.1.0": "bafybeibyyl4wtnrfxeoed3kjnlftphkcikdqrgf76u34v4wbvwgsqfqrgy", - "agent/open_aea/http_echo/0.1.0": "bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4", + "agent/open_aea/http_echo/0.1.0": "bafybeiaosh5h4msjh4rubd3xnygpqco47hjv4zbt6cz4zrai6zmvd77bv4", "agent/open_aea/my_first_aea/0.1.0": "bafybeibv7nlyxldyj5ntivsu74ylul4dltpfvkfa46k2pbveetfpkvz4jm", "connection/fetchai/local/0.20.0": "bafybeigukufpgy2sdkv5qqde47dhigbjitxcrxwg6sl6unlpbc7wbxqyhm", "connection/valory/http_client/0.23.0": "bafybeifgeqgryx6b3s6eseyzyezygmeitcpt3tkor2eiycozoi6clgdrny", diff --git a/packages/valory/connections/http_server/connection.yaml b/packages/valory/connections/http_server/connection.yaml index 8370961273..486e27fb00 100644 --- a/packages/valory/connections/http_server/connection.yaml +++ b/packages/valory/connections/http_server/connection.yaml @@ -15,7 +15,7 @@ fingerprint: tests/data/certs/server.csr: bafybeicvp7xdl5w3o4bzikkudpduitss3bpp6xqfwlxbw6kabdangohy5u tests/data/certs/server.key: bafybeiabvpkpqr4fctrbssfal6pviv5otgmu32qyrfpyhcql5wgmlzjtoe tests/data/petstore_sim.yaml: bafybeiaekkfxljlv57uviz4ug6isdqbzsnuxpsgy3dvhzh22daql3xh2i4 - tests/test_http_server.py: bafybeicixzlwx5aodces44mtkpkhxaombb5xqrsmwi4s7ksjgbolmjildq + tests/test_http_server.py: bafybeia2cax2paqaygr6xgzbgmiqepsyjkdx4joi5qukpg6ewnz5yckk7m fingerprint_ignore_patterns: [] connections: [] protocols: diff --git a/packages/valory/connections/http_server/tests/test_http_server.py b/packages/valory/connections/http_server/tests/test_http_server.py index dee5a70ca4..cd08e0d081 100644 --- a/packages/valory/connections/http_server/tests/test_http_server.py +++ b/packages/valory/connections/http_server/tests/test_http_server.py @@ -41,7 +41,7 @@ from aea.test_tools.mocks import RegexComparator from aea.test_tools.network import get_host, get_unused_tcp_port -from packages.fetchai.connections.http_server.connection import ( +from packages.valory.connections.http_server.connection import ( APISpec, HTTPServerConnection, Response, diff --git a/tests/test_aea_builder.py b/tests/test_aea_builder.py index 8d20493ca4..43f0c4ae16 100644 --- a/tests/test_aea_builder.py +++ b/tests/test_aea_builder.py @@ -64,7 +64,7 @@ from aea.test_tools.mocks import RegexComparator from aea.test_tools.test_cases import AEATestCase, AEATestCaseEmpty, BaseAEATestCase -from packages.fetchai.connections.http_server.connection import ( +from packages.valory.connections.http_server.connection import ( PUBLIC_ID as HTTP_SERVER_CONNECTION_PUBLIC_ID, ) from packages.fetchai.connections.stub.connection import StubConnection diff --git a/tests/test_cli/test_remove/test_dependencies.py b/tests/test_cli/test_remove/test_dependencies.py index 8bb2024f84..b5e820eca1 100644 --- a/tests/test_cli/test_remove/test_dependencies.py +++ b/tests/test_cli/test_remove/test_dependencies.py @@ -38,7 +38,7 @@ ) from aea.configurations.loader import ConfigLoader -from packages.fetchai.connections.http_server.connection import ( +from packages.valory.connections.http_server.connection import ( PUBLIC_ID as HTTP_SERVER_PUBLIC_ID, ) from packages.valory.protocols.http.message import HttpMessage diff --git a/tests/test_helpers/test_base.py b/tests/test_helpers/test_base.py index 03e9b40888..8493525a7c 100644 --- a/tests/test_helpers/test_base.py +++ b/tests/test_helpers/test_base.py @@ -64,7 +64,7 @@ win_popen_kwargs, ) -from packages.fetchai.connections.http_server.connection import HTTPServerConnection +from packages.valory.connections.http_server.connection import HTTPServerConnection from tests.conftest import CUR_PATH, ROOT_DIR, skip_test_windows from tests.data.dummy_skill import PUBLIC_ID as DUMMY_SKILL_PUBLIC_ID @@ -97,7 +97,7 @@ def test_locate_class(self): os.chdir(os.path.join(CUR_PATH, "..")) expected_class = HTTPServerConnection actual_class = locate( - "packages.fetchai.connections.http_server.connection.HTTPServerConnection" + "packages.valory.connections.http_server.connection.HTTPServerConnection" ) os.chdir(cwd) # although they are the same class, they are different instances in memory diff --git a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py index 8f7abe84aa..7a8bbd0e9b 100644 --- a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py +++ b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py @@ -33,7 +33,7 @@ from aea.mail.base import Envelope, Message from aea.protocols.dialogue.base import Dialogue as BaseDialogue -from packages.fetchai.connections.http_server.connection import ( +from packages.valory.connections.http_server.connection import ( HTTPServerConnection, headers_to_string, ) From 0530c73cd81b81488be16d54576fe7e0b93d1e3b Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 19:37:20 +0530 Subject: [PATCH 07/14] fix: linters --- tests/test_aea_builder.py | 4 ++-- .../test_http_server/test_http_server_and_client.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_aea_builder.py b/tests/test_aea_builder.py index 43f0c4ae16..a95985df77 100644 --- a/tests/test_aea_builder.py +++ b/tests/test_aea_builder.py @@ -64,11 +64,11 @@ from aea.test_tools.mocks import RegexComparator from aea.test_tools.test_cases import AEATestCase, AEATestCaseEmpty, BaseAEATestCase +from packages.fetchai.connections.stub.connection import StubConnection +from packages.fetchai.protocols.default import DefaultMessage from packages.valory.connections.http_server.connection import ( PUBLIC_ID as HTTP_SERVER_CONNECTION_PUBLIC_ID, ) -from packages.fetchai.connections.stub.connection import StubConnection -from packages.fetchai.protocols.default import DefaultMessage from packages.valory.protocols.http.message import HttpMessage from tests.conftest import ( diff --git a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py index 7a8bbd0e9b..69dc9a0202 100644 --- a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py +++ b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py @@ -33,11 +33,11 @@ from aea.mail.base import Envelope, Message from aea.protocols.dialogue.base import Dialogue as BaseDialogue +from packages.valory.connections.http_client.connection import HTTPClientConnection from packages.valory.connections.http_server.connection import ( HTTPServerConnection, headers_to_string, ) -from packages.valory.connections.http_client.connection import HTTPClientConnection from packages.valory.protocols.http.dialogues import HttpDialogue, HttpDialogues from packages.valory.protocols.http.message import HttpMessage From e89c515564292b741768b4e958f947967317da15 Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 19:37:56 +0530 Subject: [PATCH 08/14] chore: copyright --- tests/test_cli/test_remove/test_dependencies.py | 2 +- .../test_http_server/test_http_server_and_client.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_cli/test_remove/test_dependencies.py b/tests/test_cli/test_remove/test_dependencies.py index b5e820eca1..444a63d50c 100644 --- a/tests/test_cli/test_remove/test_dependencies.py +++ b/tests/test_cli/test_remove/test_dependencies.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # -# Copyright 2021-2022 Valory AG +# Copyright 2021-2023 Valory AG # Copyright 2018-2019 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py index 69dc9a0202..ac5b7c7df6 100644 --- a/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py +++ b/tests/test_packages/test_connections/test_http_server/test_http_server_and_client.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # ------------------------------------------------------------------------------ # -# Copyright 2022 Valory AG +# Copyright 2022-2023 Valory AG # Copyright 2018-2021 Fetch.AI Limited # # Licensed under the Apache License, Version 2.0 (the "License"); From 13ad90ce3a57b512ff26733718c6819edceb8aec Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Mon, 9 Oct 2023 19:38:48 +0530 Subject: [PATCH 09/14] fix: doc hashes --- docs/http-connection-and-skill.md | 2 +- docs/http-echo-demo.md | 2 +- .../test_bash_yaml/md_files/bash-http-connection-and-skill.md | 4 ++-- .../test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/http-connection-and-skill.md b/docs/http-connection-and-skill.md index 4d8e928df4..0cc9a8ab81 100644 --- a/docs/http-connection-and-skill.md +++ b/docs/http-connection-and-skill.md @@ -29,7 +29,7 @@ Add the http server connection package: mkdir packages aea create my_aea cd my_aea -aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote +aea add connection valory/http_server:0.22.0:bafybeie3d6tj2kzewced4nnttxdvr7njue2ortvawmwdt67gwf4tcuosom --remote aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local diff --git a/docs/http-echo-demo.md b/docs/http-echo-demo.md index 767f10bd9a..735f057b5e 100644 --- a/docs/http-echo-demo.md +++ b/docs/http-echo-demo.md @@ -16,7 +16,7 @@ The easiest way to get started with the http server is to use our pre-built exam ``` bash pipenv shell -aea fetch open_aea/http_echo:0.1.0:bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4 --remote +aea fetch open_aea/http_echo:0.1.0:bafybeiaosh5h4msjh4rubd3xnygpqco47hjv4zbt6cz4zrai6zmvd77bv4 --remote cd http_echo aea generate-key ethereum; aea add-key ethereum aea install diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md index 18078a93e1..ce7b41ed5a 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-connection-and-skill.md @@ -3,7 +3,7 @@ aea create my_aea cd my_aea ``` ``` bash -aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote +aea add connection valory/http_server:0.22.0:bafybeie3d6tj2kzewced4nnttxdvr7njue2ortvawmwdt67gwf4tcuosom --remote ``` ``` bash aea config set agent.default_connection valory/http_server:0.22.0 @@ -48,7 +48,7 @@ models: mkdir packages aea create my_aea cd my_aea -aea add connection valory/http_server:0.22.0:bafybeihtkwnmohvusfjjhahb7gxbyh6yo22cumaghfe4mbunscusbcbiym --remote +aea add connection valory/http_server:0.22.0:bafybeie3d6tj2kzewced4nnttxdvr7njue2ortvawmwdt67gwf4tcuosom --remote aea push connection valory/http_server --local aea add protocol fetchai/default:1.0.0:bafybeibtqp56jkijwjsohk4z5vqp6pfkiexmnmk5uleteotbsgrypy6gxm --remote aea push protocol fetchai/default --local diff --git a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md index 1cbfa2bd15..afbbcab689 100644 --- a/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md +++ b/tests/test_docs/test_bash_yaml/md_files/bash-http-echo-demo.md @@ -1,6 +1,6 @@ ``` bash pipenv shell -aea fetch open_aea/http_echo:0.1.0:bafybeiabnmq7c7nu5lon7jvhrmdan72fn47tntzgy5b2lalrxhmochazi4 --remote +aea fetch open_aea/http_echo:0.1.0:bafybeiaosh5h4msjh4rubd3xnygpqco47hjv4zbt6cz4zrai6zmvd77bv4 --remote cd http_echo aea generate-key ethereum; aea add-key ethereum aea install From 49fde2209b3f8913d5c691c8b4a7f68362562cee Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Tue, 10 Oct 2023 10:20:27 +0530 Subject: [PATCH 10/14] fix: builder tests --- tests/conftest.py | 2 +- tests/test_aea_builder.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index c82d0588d3..38202d59b1 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -299,10 +299,10 @@ os.path.join(ROOT_DIR, "aea", "connections", "scaffold", CONNECTION_YAML), os.path.join(FETCHAI_PREF, "connections", "gym", CONNECTION_YAML), os.path.join(VALORY_REF, "connections", "http_client", CONNECTION_YAML), - os.path.join(FETCHAI_PREF, "connections", "http_server", CONNECTION_YAML), os.path.join(VALORY_REF, "connections", "ledger", CONNECTION_YAML), os.path.join(FETCHAI_PREF, "connections", "local", CONNECTION_YAML), os.path.join(FETCHAI_PREF, "connections", "stub", CONNECTION_YAML), + os.path.join(VALORY_REF, "connections", "http_server", CONNECTION_YAML), os.path.join(VALORY_REF, "connections", "p2p_libp2p", CONNECTION_YAML), os.path.join(VALORY_REF, "connections", "p2p_libp2p_client", CONNECTION_YAML), os.path.join(VALORY_REF, "connections", "p2p_libp2p_mailbox", CONNECTION_YAML), diff --git a/tests/test_aea_builder.py b/tests/test_aea_builder.py index a95985df77..6e2eccd199 100644 --- a/tests/test_aea_builder.py +++ b/tests/test_aea_builder.py @@ -156,7 +156,7 @@ def test_when_package_has_missing_dependency(): # "fetchai/http" protocols. builder.add_component( ComponentType.CONNECTION, - Path(ROOT_DIR) / "packages" / "fetchai" / "connections" / "http_server", + Path(ROOT_DIR) / "packages" / "valory" / "connections" / "http_server", ) From 3a5f15dfd730277927411a41cffce48b52bac75a Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Tue, 10 Oct 2023 10:33:24 +0530 Subject: [PATCH 11/14] feat: bump open-aea@1.40.0 --- aea/__version__.py | 2 +- deploy-image/Dockerfile | 2 +- deploy-image/README.md | 2 +- develop-image/docker-env.sh | 2 +- examples/tac_deploy/Dockerfile | 2 +- scripts/install.ps1 | 2 +- scripts/install.sh | 2 +- skaffold.yaml | 4 ++-- user-image/Dockerfile | 2 +- user-image/docker-env.sh | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) diff --git a/aea/__version__.py b/aea/__version__.py index 1e2c92210c..3a3c21eaf3 100644 --- a/aea/__version__.py +++ b/aea/__version__.py @@ -23,7 +23,7 @@ __title__ = "open-aea" __description__ = "Open Autonomous Economic Agent framework (without vendor lock-in)" __url__ = "https://github.com/valory-xyz/open-aea.git" -__version__ = "1.40.0" +__version__ = "1.41.0" __author__ = "Valory AG" __license__ = "Apache-2.0" __copyright__ = "2021 Valory AG, 2019 Fetch.AI Limited" diff --git a/deploy-image/Dockerfile b/deploy-image/Dockerfile index 40d3ba74b7..b736631032 100644 --- a/deploy-image/Dockerfile +++ b/deploy-image/Dockerfile @@ -16,7 +16,7 @@ RUN apk add --no-cache go # aea installation RUN pip install --upgrade pip -RUN pip install --upgrade --force-reinstall open-aea[all]==1.40.0 "open-aea-cli-ipfs<2.0.0,>=1.40.0" +RUN pip install --upgrade --force-reinstall open-aea[all]==1.41.0 "open-aea-cli-ipfs<2.0.0,>=1.41.0" # directories and aea cli config WORKDIR /home/agents diff --git a/deploy-image/README.md b/deploy-image/README.md index 6ad2096b4c..2fc813793a 100644 --- a/deploy-image/README.md +++ b/deploy-image/README.md @@ -11,7 +11,7 @@ The example uses the `fetchai/my_first_aea` project. You will likely want to mod Install subversion, then download the example directory to your local working directory ``` bash -svn checkout https://github.com/valory-xyz/open-aea/tags/v1.40.0/packages packages +svn checkout https://github.com/valory-xyz/open-aea/tags/v1.41.0/packages packages ``` ### Modify scripts diff --git a/develop-image/docker-env.sh b/develop-image/docker-env.sh index bd5b6b5341..37845f4ff3 100755 --- a/develop-image/docker-env.sh +++ b/develop-image/docker-env.sh @@ -1,7 +1,7 @@ #!/bin/bash # Swap the following lines if you want to work with 'latest' -DOCKER_IMAGE_TAG=valory/open-aea-develop:1.40.0 +DOCKER_IMAGE_TAG=valory/open-aea-develop:1.41.0 # DOCKER_IMAGE_TAG=valory/open-aea-develop:latest DOCKER_BUILD_CONTEXT_DIR=.. diff --git a/examples/tac_deploy/Dockerfile b/examples/tac_deploy/Dockerfile index 56368b3737..3967ccd509 100644 --- a/examples/tac_deploy/Dockerfile +++ b/examples/tac_deploy/Dockerfile @@ -19,7 +19,7 @@ RUN apk add --no-cache go # aea installation RUN python -m pip install --upgrade pip -RUN pip install --upgrade --force-reinstall open-aea[all]==1.40.0 +RUN pip install --upgrade --force-reinstall open-aea[all]==1.41.0 # directories and aea cli config COPY /.aea /home/.aea diff --git a/scripts/install.ps1 b/scripts/install.ps1 index 277626dffe..633e27df68 100644 --- a/scripts/install.ps1 +++ b/scripts/install.ps1 @@ -34,7 +34,7 @@ function instal_choco_golang_gcc { } function install_aea { echo "Install aea" - $output=pip install open-aea[all]==1.40.0 --force --no-cache-dir 2>&1 |out-string; + $output=pip install open-aea[all]==1.41.0 --force --no-cache-dir 2>&1 |out-string; if ($LastExitCode -ne 0) { echo $output echo "AEA install failed!" diff --git a/scripts/install.sh b/scripts/install.sh index 1a2d43a4ba..3caa5b09cd 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -42,7 +42,7 @@ function is_python_version_ok() { function install_aea (){ echo "Install AEA" - output=$(pip3 install --user open-aea[all]==1.40.0 --force --no-cache-dir) + output=$(pip3 install --user open-aea[all]==1.41.0 --force --no-cache-dir) if [[ $? -ne 0 ]]; then echo "$output" diff --git a/skaffold.yaml b/skaffold.yaml index c2ee0782f7..59e6b2d198 100644 --- a/skaffold.yaml +++ b/skaffold.yaml @@ -5,7 +5,7 @@ metadata: build: tagPolicy: envTemplate: - template: "1.40.0" + template: "1.41.0" artifacts: - image: valory/open-aea-develop docker: @@ -24,7 +24,7 @@ profiles: build: tagPolicy: envTemplate: - template: "1.40.0" + template: "1.41.0" artifacts: - image: valory/open-aea-docs docker: diff --git a/user-image/Dockerfile b/user-image/Dockerfile index ddaac650aa..1e0f8807a1 100644 --- a/user-image/Dockerfile +++ b/user-image/Dockerfile @@ -7,7 +7,7 @@ ENV LANG C.UTF-8 RUN apt update && apt install -y python3.11-dev python3-pip -y && apt autoremove && apt autoclean RUN pip3 install --upgrade pip -RUN pip3 install "open-aea[all]==1.40.0" open-aea-cli-ipfs==1.40.0 +RUN pip3 install "open-aea[all]==1.41.0" open-aea-cli-ipfs==1.41.0 COPY user-image/openssl.cnf /etc/ssl diff --git a/user-image/docker-env.sh b/user-image/docker-env.sh index e6659286c8..f87e970a64 100644 --- a/user-image/docker-env.sh +++ b/user-image/docker-env.sh @@ -1,7 +1,7 @@ #!/bin/bash # Swap the following lines if you want to work with 'latest' -DOCKER_IMAGE_TAG=valory/open-aea-user:1.40.0 +DOCKER_IMAGE_TAG=valory/open-aea-user:1.41.0 # DOCKER_IMAGE_TAG=valory/open-aea-user:latest DOCKER_BUILD_CONTEXT_DIR=.. From 8c6a3a00552c810817631487d5d86417e7641aff Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Tue, 10 Oct 2023 10:33:57 +0530 Subject: [PATCH 12/14] feat: bump plugins --- plugins/aea-cli-benchmark/setup.py | 2 +- plugins/aea-cli-ipfs/setup.py | 2 +- plugins/aea-ledger-cosmos/setup.py | 2 +- plugins/aea-ledger-ethereum-flashbots/setup.py | 4 ++-- plugins/aea-ledger-ethereum-hwi/setup.py | 4 ++-- plugins/aea-ledger-ethereum/setup.py | 2 +- plugins/aea-ledger-fetchai/setup.py | 4 ++-- plugins/aea-ledger-solana/setup.py | 2 +- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/plugins/aea-cli-benchmark/setup.py b/plugins/aea-cli-benchmark/setup.py index f8a4a6d31c..620da3465d 100755 --- a/plugins/aea-cli-benchmark/setup.py +++ b/plugins/aea-cli-benchmark/setup.py @@ -26,7 +26,7 @@ setup( name="open-aea-cli-benchmark", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="CLI extension for AEA framework benchmarking.", diff --git a/plugins/aea-cli-ipfs/setup.py b/plugins/aea-cli-ipfs/setup.py index 8f9277d2a9..18f98a6f54 100755 --- a/plugins/aea-cli-ipfs/setup.py +++ b/plugins/aea-cli-ipfs/setup.py @@ -28,7 +28,7 @@ setup( name="open-aea-cli-ipfs", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="CLI extension for open AEA framework wrapping IPFS functionality.", diff --git a/plugins/aea-ledger-cosmos/setup.py b/plugins/aea-ledger-cosmos/setup.py index 6d89491373..d00f714ffc 100644 --- a/plugins/aea-ledger-cosmos/setup.py +++ b/plugins/aea-ledger-cosmos/setup.py @@ -26,7 +26,7 @@ setup( name="open-aea-ledger-cosmos", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="Python package wrapping the public and private key cryptography and ledger api of Cosmos.", diff --git a/plugins/aea-ledger-ethereum-flashbots/setup.py b/plugins/aea-ledger-ethereum-flashbots/setup.py index f9fa8ca41b..ca8e861e65 100644 --- a/plugins/aea-ledger-ethereum-flashbots/setup.py +++ b/plugins/aea-ledger-ethereum-flashbots/setup.py @@ -25,7 +25,7 @@ setup( name="open-aea-ledger-ethereum-flashbots", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="Python package extending the default open-aea ethereum ledger plugin to add support for flashbots.", @@ -41,7 +41,7 @@ }, python_requires=">=3.9,<4.0", install_requires=[ - "open-aea-ledger-ethereum~=1.40.0", + "open-aea-ledger-ethereum~=1.41.0", "open-aea-flashbots==1.4.0", ], tests_require=["pytest"], diff --git a/plugins/aea-ledger-ethereum-hwi/setup.py b/plugins/aea-ledger-ethereum-hwi/setup.py index 7f729a8edf..aab0394348 100644 --- a/plugins/aea-ledger-ethereum-hwi/setup.py +++ b/plugins/aea-ledger-ethereum-hwi/setup.py @@ -25,7 +25,7 @@ setup( name="open-aea-ledger-ethereum-hwi", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="Python package wrapping the public and private key cryptography and support for hardware wallet interactions.", @@ -42,7 +42,7 @@ "web3>=6.0.0,<7", "ipfshttpclient==0.8.0a2", "eth-account>=0.8.0,<0.9.0", - "open-aea-ledger-ethereum~=1.40.0", + "open-aea-ledger-ethereum~=1.41.0", "ledgerwallet==0.1.3", "protobuf>=4.21.6,<5.0.0", "construct<=2.10.61", diff --git a/plugins/aea-ledger-ethereum/setup.py b/plugins/aea-ledger-ethereum/setup.py index 4cc791d04c..a0a37b8c6b 100644 --- a/plugins/aea-ledger-ethereum/setup.py +++ b/plugins/aea-ledger-ethereum/setup.py @@ -26,7 +26,7 @@ setup( name="open-aea-ledger-ethereum", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="Python package wrapping the public and private key cryptography and ledger api of Ethereum.", diff --git a/plugins/aea-ledger-fetchai/setup.py b/plugins/aea-ledger-fetchai/setup.py index e9e598a739..6a8960cf6e 100644 --- a/plugins/aea-ledger-fetchai/setup.py +++ b/plugins/aea-ledger-fetchai/setup.py @@ -31,7 +31,7 @@ setup( name="open-aea-ledger-fetchai", - version="1.40.0", + version="1.41.0", author="Valory AG", license="Apache-2.0", description="Python package wrapping the public and private key cryptography and ledger API of Fetch.AI.", @@ -44,7 +44,7 @@ "test_tools/data/*", ] }, - install_requires=["open-aea-ledger-cosmos~=1.40.0"], + install_requires=["open-aea-ledger-cosmos~=1.41.0"], tests_require=["pytest"], entry_points={ "aea.cryptos": ["fetchai = aea_ledger_fetchai:FetchAICrypto"], diff --git a/plugins/aea-ledger-solana/setup.py b/plugins/aea-ledger-solana/setup.py index 46374316e5..8f7fe8105c 100644 --- a/plugins/aea-ledger-solana/setup.py +++ b/plugins/aea-ledger-solana/setup.py @@ -25,7 +25,7 @@ setup( name="open-aea-ledger-solana", - version="1.40.0", + version="1.41.0", author="dassy23", license="Apache-2.0", description="Python package wrapping the public and private key cryptography and ledger api of solana.", From 267a65263a71c70ca1386f91f1cc613694b54c5f Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Tue, 10 Oct 2023 10:59:28 +0530 Subject: [PATCH 13/14] chore: release notes --- HISTORY.md | 16 ++++++++++++++++ SECURITY.md | 4 ++-- docs/upgrading.md | 2 +- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 3d5fdefa8c..2743dacdd1 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,6 +1,22 @@ # Release History - open AEA +## 1.40.0 (2023-09-26) + +AEA: +- Fixes the source repository validation regex +- Updates the `generate-key` command to prompt before overwriting the existing keys file +- Fixes the inconsistent hashing caused by the `CRLF` line endings +- Updates the component loader to ignore the test modules when loading the component +- Adds support for overriding dependencies +- Updates the `sync` command to download missing dependencies and update `packages.json` +- Updates the error messages for missing ledger plugins on `generate-key` command + +Plugins: +- Adds missing `py.typed` markers +- Backports the changes from the `agent-academy-2` repository on the ledger connection +- Ports `http_server` as a valory connection + ## 1.40.0 (2023-09-26) AEA: diff --git a/SECURITY.md b/SECURITY.md index 8c656b657f..612982f8c7 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -8,8 +8,8 @@ The following table shows which versions of `open-aea` are currently being suppo | Version | Supported | | --------- | ------------------ | -| `1.40.x` | :white_check_mark: | -| `< 1.40.0` | :x: | +| `1.41.x` | :white_check_mark: | +| `< 1.41.0` | :x: | ## Reporting a Vulnerability diff --git a/docs/upgrading.md b/docs/upgrading.md index 1aa71850be..7b56eaf318 100644 --- a/docs/upgrading.md +++ b/docs/upgrading.md @@ -9,7 +9,7 @@ Below we describe the additional manual steps required to upgrade between differ ### Upgrade guide -## `v1.40.0` to `v1.40.1` +## `v1.40.0` to `v1.41.0` - The way the dependencies will be selected for installation when running `aea install` has changed. Before this version, the versions were being merging all of the versions for a python package and using the most compatible version specifier possible. With this release, this behaviour will be replaced by overriding the dependencies in the following order `extra dependencies provided by flag > agent > skill > connection > contract > protocol` what this means is, let's say you have 3 packages with a same python package as a dependency From ee2f998b984c0654aad7b4a07d84f2649a8eb3ca Mon Sep 17 00:00:00 2001 From: angrybayblade Date: Tue, 10 Oct 2023 13:33:55 +0530 Subject: [PATCH 14/14] fix: hashing bug introduced in https://github.com/valory-xyz/open-aea/pull/674 --- aea/helpers/ipfs/base.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/aea/helpers/ipfs/base.py b/aea/helpers/ipfs/base.py index a3f0bc4ea0..df78e090df 100644 --- a/aea/helpers/ipfs/base.py +++ b/aea/helpers/ipfs/base.py @@ -22,12 +22,15 @@ import hashlib import io import os +import platform +import re from pathlib import Path from typing import Any, Dict, Generator, Optional, Sized, Tuple, cast import base58 from aea.helpers.cid import to_v1 +from aea.helpers.io import open_file from aea.helpers.ipfs.utils import _protobuf_python_implementation @@ -41,12 +44,34 @@ from aea.helpers.ipfs.pb.merkledag_pb2 import PBNode # type: ignore +def _is_text(file_path: str) -> bool: + """Check if a file can be read as text or not.""" + try: + with open_file(file_path, "r") as f: + f.readline() + return True + except UnicodeDecodeError: + return False + + +def _dos2unix(file_content: bytes) -> bytes: + """ + Replace occurrences of Windows line terminator CR/LF with only LF. + + :param file_content: the content of the file. + :return: the same content but with the line terminator + """ + return re.sub(b"\r\n", b"\n", file_content, flags=re.M) + + def _read(file_path: str) -> bytes: """Read and verify the file is not empty.""" with open(file_path, "rb") as file: data = file.read() if len(data) == 0: raise ValueError(f"File cannot be empty: {file_path}") + if platform.system() == "Windows" and _is_text(file_path=file_path): + data = _dos2unix(data) return data