Skip to content

Commit

Permalink
Merge pull request #2544 from fetchai/develop
Browse files Browse the repository at this point in the history
Release v1.0.2
  • Loading branch information
DavidMinarsch authored Jun 3, 2021
2 parents fa6d115 + 6154a31 commit e211d5c
Show file tree
Hide file tree
Showing 441 changed files with 13,083 additions and 3,426 deletions.
4 changes: 0 additions & 4 deletions .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@
omit =
*/.tox/*
packages/fetchai/contracts/*
packages/fetchai/skills/aries_alice/*
packages/fetchai/skills/aries_faber/*
packages/fetchai/skills/erc1155_client/*
packages/fetchai/skills/erc1155_deploy/*
packages/fetchai/skills/gym/*
packages/fetchai/skills/fipa_dummy_buyer/*
plugins/aea-ledger-cosmos/aea_ledger_cosmos/cosmos.py
59 changes: 55 additions & 4 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ on:
pull_request:

jobs:

common_checks_1:
continue-on-error: False
runs-on: ubuntu-latest
Expand Down Expand Up @@ -74,6 +73,8 @@ jobs:
tox -e black-check
tox -e isort-check
tox -e flake8
- name: Docstring check
run: tox -e darglint
- name: Unused code check
run: tox -e vulture
- name: Static type check
Expand Down Expand Up @@ -149,8 +150,8 @@ jobs:
run: tox -e package_version_checks
- name: Check package dependencies
run: tox -e package_dependencies_checks
# - name: Check generate protocols
# run: tox -e check_generate_all_protocols
- name: Check generate protocols
run: tox -e check_generate_all_protocols
- name: Generate Documentation
run: tox -e docs

Expand Down Expand Up @@ -207,6 +208,7 @@ jobs:
- name: Check aea dependenices and imports
run: |
tox -e dependencies_check
plugins_install_check:
continue-on-error: False
runs-on: ${{ matrix.sys.os }}
Expand Down Expand Up @@ -240,6 +242,7 @@ jobs:
- name: Check plugin aea-cli-ipfs
run : |
tox -r -e plugins_env -- sh -c "pip install ./plugins/aea-cli-ipfs && aea ipfs --help && echo aea-cli-ipfs checked!"
protolint:
continue-on-error: False
runs-on: ubuntu-latest
Expand Down Expand Up @@ -269,6 +272,8 @@ jobs:
- common_checks_2
- common_checks_3
- common_checks_4
- dependencies_checks
- plugins_install_check
runs-on: ubuntu-latest
timeout-minutes: 50
steps:
Expand Down Expand Up @@ -302,6 +307,8 @@ jobs:
- common_checks_2
- common_checks_3
- common_checks_4
- dependencies_checks
- plugins_install_check
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
Expand Down Expand Up @@ -358,6 +365,8 @@ jobs:
- common_checks_2
- common_checks_3
- common_checks_4
- dependencies_checks
- plugins_install_check
runs-on: ${{ matrix.os }}
strategy:
matrix:
Expand Down Expand Up @@ -434,6 +443,8 @@ jobs:
- common_checks_2
- common_checks_3
- common_checks_4
- dependencies_checks
- plugins_install_check
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
Expand Down Expand Up @@ -465,6 +476,8 @@ jobs:
- common_checks_2
- common_checks_3
- common_checks_4
- dependencies_checks
- plugins_install_check
runs-on: ${{ matrix.os }}
strategy:
matrix:
Expand All @@ -479,15 +492,53 @@ jobs:
- uses: actions/setup-go@master
with:
go-version: '^1.14.0'
- if: matrix.os == 'macos-latest'
working-directory: ./libs/go/libp2p_node
run: |
export LINKPATH=$GOROOT/pkg/tool/darwin_amd64/link
echo $LINKPATH
sudo cp $LINKPATH ${LINKPATH}_orig
sudo cp link $LINKPATH
sudo chmod a+x $LINKPATH
- if: matrix.python-version == '3.6'
name: Golang unit tests (libp2p_node)
working-directory: ./libs/go/libp2p_node
run: go test -p 1 -timeout 0 -count 1 -v ./...
run: make test
- if: matrix.python-version == '3.6'
name: Golang unit tests (aealite)
working-directory: ./libs/go/aealite
run: go test -p 1 -timeout 0 -count 1 -v ./...

libp2p_coverage:
name: libp2p_coverage
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.14
uses: actions/setup-go@v1
with:
go-version: 1.14
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v1
- name: Install dependencies (ubuntu-latest)
run: |
sudo apt-get update --fix-missing
sudo apt-get autoremove
sudo apt-get autoclean
sudo apt-get install make -y
- name: Get dependencies
working-directory: ./libs/go/libp2p_node/
run: |
make install
- name: Generate coverage report
working-directory: ./libs/go/libp2p_node/
run: |
make test
- name: Print coverage report
working-directory: ./libs/go/libp2p_node/
run: |
go tool cover -func=coverage.txt
coverage_checks:
continue-on-error: True
needs:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -134,3 +134,4 @@ packages/fetchai/connections/p2p_libp2p/libp2p_node/libp2p_node
deploy-image/.env

!libs/go/aea_end2end/seller_agent
coverage.txt
2 changes: 2 additions & 0 deletions .spelling
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,8 @@ CVE-2021-27291
AgentLand
GCloud
p2p
docstring
utils
- docs/language-agnostic-definition.md
fetchai
protocol_id
Expand Down
46 changes: 46 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,51 @@
# Release History

## 1.0.2 (2021-06-03)

AEA:
- Bounds versions of dependencies by next major
- Fixes incoherent warning message during package loading
- Improves various incomprehensible error messages
- Adds debug log message when abstract components are loaded
- Adds tests and minor fixes for password related CLI commands and password usage in `MultiAgentManager`
- Adds default error handler in `MultiAgentManager`
- Ensures private key checks are performed after override setting in `MultiAgentManager`
- Applies docstring fixes suggested by `darglint`
- Fixes `aea push --local` command to use correct author
- Fixes `aea get-multiaddress` command to consider overrides

Plugins:
- Bounds versions of dependencies by next major

Packages:
- Updates `p2p_libp2p` connection to use TCP sockets for all platforms
- Multiple fixes on `libp2p_node` including better error handling and stream creation
- Adds sending queue in `p2p_libp2p` connection to handle sending failures
- Adds unit tests for `libp2p_node` utils
- Adds additional tests for `p2p_libp2p` connection
- Fixes location bug in AW5
- Improves connection check handling in soef connection
- Updates oracle and oracle client contracts for better access control
- Adds skill tests for `erc1155` skills
- Adds skill tests for `aries` skills
- Fixes minor bug in ML skills
- Multiple additional tests and test stability fixes

Docs:
- Extends demo docs to include guidance of usage in AEA Manager
- Adds short guide on Kubernetes deployment
- Multiple additional docs updates

Chores:
- Adds `--no-bump` option to `generate_all_protocols` script
- Adds script to detect if aea or plugins need bumping
- Bumps various development dependencies
- Adds Golang and GCC in Windows install script
- Adds `darglint` to CI

Examples:
- Updates TAC deployment scripts and images

## - (2021-05-05)

Packages:
Expand Down
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ lint:
isort aea benchmark examples packages plugins scripts tests
flake8 aea benchmark examples packages plugins scripts tests
vulture aea scripts/whitelist.py --exclude "*_pb2.py"
darglint aea

.PHONY: pylint
pylint:
Expand Down
6 changes: 4 additions & 2 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ bech32 = "==1.2.0"
black = "==19.10b0"
bs4 = "==0.0.1"
colorlog = "==4.1.0"
darglint = "==1.8.0"
defusedxml = "==0.6.0"
docker = "==4.2.0"
ecdsa = ">=0.15"
Expand All @@ -26,6 +27,7 @@ flake8-bugbear = "==20.1.4"
flake8-docstrings = "==1.5.0"
flake8-eradicate = "==0.4.0"
flake8-isort = "==4.0.0"
gitpython = ">=3.1.14"
gym = "==0.15.6"
ipfshttpclient = "==0.6.1"
liccheck = "==0.4.3"
Expand All @@ -45,7 +47,7 @@ packaging = "==20.4"
pexpect = "==4.8.0"
psutil = "==5.7.0"
pycryptodome = ">=3.10.1"
pydoc-markdown = "==3.3.0"
pydoc-markdown = "==3.10.3"
pydocstyle = "==3.0.0"
pygments = "==2.7.4"
pylint = "==2.6.0"
Expand All @@ -59,7 +61,7 @@ pytest-rerunfailures = "==9.0"
requests = ">=2.22.0"
safety = "==1.10.3"
scikit-image = ">=0.17.2"
sqlalchemy = "==1.3.17"
sqlalchemy = "==1.4.17"
temper-py = "==0.0.3"
tensorflow = "==2.4.0"
tox = "==3.15.1"
Expand Down
2 changes: 1 addition & 1 deletion aea/__version__.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
__title__ = "aea"
__description__ = "Autonomous Economic Agent framework"
__url__ = "https://github.com/fetchai/agents-aea.git"
__version__ = "1.0.1"
__version__ = "1.0.2"
__author__ = "Fetch.AI Limited"
__license__ = "Apache-2.0"
__copyright__ = "2019 Fetch.AI Limited"
16 changes: 6 additions & 10 deletions aea/aea.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,12 @@ def __init__(
:param period: period to call agent's act
:param execution_timeout: amount of time to limit single act/handle to execute.
:param max_reactions: the processing rate of envelopes per tick (i.e. single loop).
:param error_handler_class: the class implementing the error handler
:param error_handler_config: the configuration of the error handler
:param decision_maker_handler_class: the class implementing the decision maker handler to be used.
:param decision_maker_handler_config: the configuration of the decision maker handler
:param skill_exception_policy: the skill exception policy enum
:param connection_exception_policy: the connection exception policy enum
:param loop_mode: loop_mode to choose agent run loop.
:param runtime_mode: runtime mode (async, threaded) to run AEA in.
:param default_ledger: default ledger id
Expand All @@ -121,8 +125,6 @@ def __init__(
:param storage_uri: optional uri to set generic storage
:param task_manager_mode: task manager mode (threaded) to run tasks with.
:param kwargs: keyword arguments to be attached in the agent context namespace.
:return: None
"""

self._skills_exception_policy = skill_exception_policy
Expand Down Expand Up @@ -266,8 +268,6 @@ def setup(self) -> None:
Set up the agent.
Calls setup() on the resources.
:return: None
"""
self.resources.setup()

Expand All @@ -276,8 +276,6 @@ def act(self) -> None:
Perform actions.
Adds new handlers and behaviours for use/execution by the runtime.
:return: None
"""
self.filter.handle_new_handlers_and_behaviours()

Expand Down Expand Up @@ -457,15 +455,14 @@ def teardown(self) -> None:
Performs the following:
- tears down the resources.
:return: None
"""
self.resources.teardown()

def get_task_result(self, task_id: int) -> AsyncResult:
"""
Get the result from a task.
:param task_id: the id of the task
:return: async result for task_id
"""
return self.runtime.task_manager.get_task_result(task_id)
Expand All @@ -482,7 +479,6 @@ def enqueue_task(
:param func: the callable instance to be enqueued
:param args: the positional arguments to be passed to the function.
:param kwargs: the keyword arguments to be passed to the function.
:return the task id to get the the result.
:raises ValueError: if the task manager is not running.
:return: the task id to get the the result.
"""
return self.runtime.task_manager.enqueue_task(func, args, kwargs)
Loading

0 comments on commit e211d5c

Please sign in to comment.