Skip to content

Commit

Permalink
chore: merge develop into main (#75)
Browse files Browse the repository at this point in the history
* setup repo with subgraph

* add pull request template

* add empty lines

* re-structure the folders

* add plugin repos ids

* re org the folder structure

* chore: moves pull request template to correct location (#2)

* add plugin, setup, & plugin permission ids

* F OS-601 Add subgraph tests (#4)

* add subgraph tests

* Update subgraph/subgraph.yaml

Co-authored-by: Rekard0 <[email protected]>

* Update subgraph/schema.graphql

Co-authored-by: Rekard0 <[email protected]>

---------

Co-authored-by: Rekard0 <[email protected]>

* refactor

* Add test for pluginRepo

* yarn subgraph test workflow

* remove cache yarn

* refactor outputs

* add comment

* abstract permissions

* update change log

* add security contact to the readmes

* Update subgraph/src/ids/permissions.ts

Co-authored-by: Mathias Scherer <[email protected]>

* adapt id and test to osx update

* update changelog

* organize permission tests

* rename get***Id to generate***EntityId

* Update readme & changelog

* OS-593: refactors repo for linting and linting during workflows (#8)

* ci: add linting and fix package manager warnings

* docs: improved pr template

* ci: rename job

* ci: improve commands and workflows

* ci: fix commands

* style: formatting

* build: improved gitignore

* style(OS-593): improves eslint config

Moves linting to the root of the repository and extends this config for
each package

* ci(OS-593): improves linting and testing for subgraph

reconfigures formatting-linting to be callable by other workflows

* ci(OS-593): fix missing dependency installation

fixes missing dependency installation for subgraph during linting

* chore(OS-593): adds missing peerDependecies in subgraph

---------

Co-authored-by: Mathias Scherer <[email protected]>

* feat: added contracts and tests (#7)

* feat: added contracts, tests, and workflows

* refactor: removed NetworkNameMapping and added base and sepolia support

* ci: improvements

* ci: fix subgraph workflow

* ci: fix contracts workflow

* ci: added contracts subfolder to subgraph workflow triggers

* refactor: improved proxy deployment helpers

* refactor: folder structure

* test: added tests

* style: formatting

* refactor: ProxyFactory and TestGovernanceERC20

* test: add tests for proxy factory

* docs: NatSpec improvments

* test: remove only

* style: fix formatting

* chore: maintained changelog

* chore: added version number and descriptions

* refactor: split helpers into proxy and event

* refactor: revert proxy factory addition

* Terminal chore: maintained changelog  0717be

* refactor: remove unused file

* test: remove only

* ci: removed comments

* refactor: remove redundant line number

* refactor: moved files into governance folder (#10)

* F/os 587 abstract actions and callback ids (#14)

* add action an callbacks id generation

* update changelog

* chore: maintained changelogs (#15)

* chore: maintained changelogs

* chore: revert changes

* feature: abstracted balance and transfer IDs (#12)

* add balance and token ids

* add eslint disable

* fix eslint config

* fix lint

* fix tests

* docs: improved majority voting docs formatting (#16)

* Feature: add id generation for iplugin, iproposal and transactionActionsProposal (#13)

* add id generation for iplugin, iproposal and transactionActionsProposal

* fix prettier

* style: applied prettier formatting

---------

Co-authored-by: Michael Heuer <[email protected]>

* Feature: Add js client commons (#11)

* add js client commons

* ci: added test workflow

* add eslintrc

* style: specified included and ignored directories

* style: use similar tsconfig as for contracts and subgraph

* style: removed non-existing folder from tsconfig

* fix eslint

* fix prettier

* test lint

* fix lint

* fix prettier

* test lint

* fix lint

* style: use root level lint command

* build: updated package.json

* style: apply global prettier formatting

* revert typescript version bump

* fix: missing await

* refactor: renamed js-client to sdk

* chore: maintained changelog

* update changelog

* docs: corrected readme title

* Update sdk/README.md

Co-authored-by: Michael Heuer <[email protected]>

* style: applied prettier formatting

---------

Co-authored-by: Michael Heuer <[email protected]>
Co-authored-by: Michael Heuer <[email protected]>

* fix: wrong contract name (#18)

* chore: added arbitrum support (#17)

* chore: added arbitrum

* chore: add arbiscan api key to example

* chore: added supported networks

* refactor: reduce code-duplication

* fix: typo

* revert: graphql network name change

* fix: Add range test for `bigIntToBytes32`

* fix: remove redundant test

* build(sdk): replaces tsdx with dts-cli (#22)

* feat(sdk): replaces tsdx with dts-cli

* chore(sdk): updates changelog

* style(sdk): applies prettier formatting

* build(sdk): removes tests from tsconfig.json
style(sdk): adds tests into eslint ignore list

* lint(sdk): adds seconds tsconfig to also lint tests and examples

* chore(sdk): fixes prepare script

* style(sdk): makes prettier happy

* ci: adds workflows to release and publish new versions of packages (#24)

* ci(subgraph): adds workflows to release new subgraph packages

* style(subgraph): apply prettier to github action workflows

* Update .github/scripts/generate_release_matrix.py

* ci: adds pull request labeler

* ci(subgraph): finalizes subgraph publish workflow
ci: adds script to generate automatic release notes

* build(subgraph): adds .npmignore file

* chore: applies prettier formatting

* ci: uses subgraph release for all packages

* chore: fix name in packages release workflow

* ci: finishes public and release workflows for all packages

* chore(subgraph): adds EOF newline to .npmignore

* publish(subgraph): replaces .npmignore with package.json config

---------

Co-authored-by: Rekard0 <[email protected]>

* build: bump dependencies (#25)

* Feature: Add mock getters (#26)

* add mock getters

* add changelog and fix lint

* remove proposal mocks

* update changelog

* fix prettier

* fix prettier

* Fix: Reusable check tag workflow (#27)

* fix reusable check tag

* fix working directory

* osx-commons-subgraph v0.0.1-alpha.0 (#28)

* release 1.0.0

* update package version

* update changelogs and packages

* fix publish worflow (#29)

* fix package version (#30)

* fix package version

* fix prettier

* release 0.0.1 (#31)

* fix regex pattern in reusable check workflow (#32)

* fix typo (#33)

* Fix: Add missing exports (#35)

* fix exports

* update changelog

* fix lint

* fix tests

* feat(configs): abstract network settings (#34)

* feat(configs): adds supported networks with basic settings
feat(configs): adds all deployments with txhash and block number
feat(configs): initial setup

* feat(configs): adds arbitrum sepolia
feat(configs): removes arbitrum goerli

* feat(configs): updates all networks and contracts

* build(configs): finishes typescript and eslint config

* fix(configs): adds missing erc20 contracts to polygon

* chore(configs): sorts deployments

* feat(config): adds ethers network aliases

* chore(configs): adds linting to workflow

* chore: fixes formatting

* feat(configs): adds baseSepolia deployment

* fix(configs): renames contracts to a proper formatting

* cicd(configs): adds workflow to publish package

* cicd: only run publish on correct tag

* chore(configs): corrects version number

* chore(configs): corrects license

* deps(configs): updates typescript to 5.2.2

* feat(configs): adds aliases for alchemy subgraphs

* cicd(configs): adds it to the reusable-check-tag workflow

* chore(configs): change to cammelcase

* feat(configs): exports networks properly typed with generics (#38)

* cicd(configs): renames publish workflow (#37)

cicd: fixes release not generation

* docs: reference audit files from previous osx versions (#39)

* docs: added audit files from previous osx versions

* refactor: just reference the audit

* docs: improved explanation

* Add: generic entity ID generators (#41)

* add generic functions

* fix lint

* fix operations map

* feat: contracts and sdk refactoring (#36)

* build: added version number to allow importing

* revert: remove osx dependency

* fix: use new IDAO

* feat: add former voting helpers

* feat: refactored helpers

* refactor: event function

* refactor: improved naming

* refactor: improve time helpers

* refactor: removed hardhat time

* fix: wrong import

* refactor: improve time constants

* docs: add todo comment

* refactor: move over plugin and plugin setups as well as permissions

* refactor: renaming and changed folder structure

* feat: added bitmap

* refactor: moved metadata into separate file

* refactor: moved events

* refactor: moved permissions

* revert: version bump of solhint

* refactor: improve folder structure

* refactor: folders structure, imports, yarn lock

* ci: fix

* fix: version mismatch with sdk

* revert: remove etherscan

* refactor: rename event constants

* ci: make sdk an alpha version

* feat: move permissions

* build: rename package

* refactor: structure

* build: save yarn lock

* build: use same typescript version

* refactor: imports

* build: contracts start with alpha version

* build: use commons-sdk

* fix: imports

* build: add files to index

* v0.0.1-alpha.1

* fix: bump version and fix import

* fix: imports

* fix: missing export

* chore: bump version

* chore: save lock file

* chore: bump version

* build: no postinstall

* chore: ignore DS_Store files

* v0.0.1-alpha.3

* refactor: remove proxy helper

* build: add protocol version

* v0.0.1-alpha.4

* feat: made ProtocolVersion non-abstract

* refactor: protocol version number

remove protocol version constant and bump osx-commons-contracts package version number to match with the protocol version

* revert: make ProtocolVersion abstract and use mock instead

* v1.4.0-alpha.1

* refactor: renamed function

* chore: maintain changelog

* build: improve build

* ci: added missing secret

* revert: remove duplicate

* build: remove osx-ethers dependencies

* revert: remove TestPlugin

* build: use files allowlist instead of .npmignore denylist

* refactor: improved mocks

* refactor: improved mocks further

* refactor: rename test

* refactor: remove placeholder setup

* feat: added test sekletons and todos

* revert: removed todo that has its own task already

* build: bump version number

* docs: improved plugin setup mock data

* refactor: renamed PluginMockData to PluginSetupMockData

* refactor: setup mocks

* build: remove src folder

* refactor: move and added todo

* refactor: move auth into dao folder

* build: adapt the hardhat solidity source path subtask

* refactor: move auth

* revert: src removal

* revert: delete storage

* refactor: move governance into extensions

* build: remove governance folder from package.json

* fix: wrong path

* refactor: harmonize mock contract naming and move CloneFactory

* revert: author comment for mock

* style: fix enum values

* feat: add custom event error

* chore: use new sdk

* ci: fixes labeler

---------

Co-authored-by: Mathias Scherer <[email protected]>

* ci: fixes check tag to ignore semver additions (#42)

* ci: fixes check tag to ignore semver additions

* ci: checktag better fix

* ci: check tag removes useless grep command

* ci: checktag updates comments

* ci: checktag  corrects title

Co-authored-by: Michael Heuer <[email protected]>

---------

Co-authored-by: Michael Heuer <[email protected]>

* test: interfaces and ERC-165 (#40)

* build: added version number to allow importing

* revert: remove osx dependency

* fix: use new IDAO

* feat: add former voting helpers

* feat: refactored helpers

* refactor: event function

* refactor: improved naming

* refactor: improve time helpers

* refactor: removed hardhat time

* fix: wrong import

* refactor: improve time constants

* docs: add todo comment

* refactor: move over plugin and plugin setups as well as permissions

* refactor: renaming and changed folder structure

* feat: added bitmap

* refactor: moved metadata into separate file

* refactor: moved events

* refactor: moved permissions

* revert: version bump of solhint

* refactor: improve folder structure

* refactor: folders structure, imports, yarn lock

* ci: fix

* fix: version mismatch with sdk

* revert: remove etherscan

* refactor: rename event constants

* ci: make sdk an alpha version

* feat: move permissions

* build: rename package

* refactor: structure

* build: save yarn lock

* build: use same typescript version

* refactor: imports

* build: contracts start with alpha version

* build: use commons-sdk

* fix: imports

* build: add files to index

* v0.0.1-alpha.1

* fix: bump version and fix import

* fix: imports

* fix: missing export

* chore: bump version

* chore: save lock file

* chore: bump version

* build: no postinstall

* chore: ignore DS_Store files

* v0.0.1-alpha.3

* refactor: remove proxy helper

* build: add protocol version

* v0.0.1-alpha.4

* feat: made ProtocolVersion non-abstract

* refactor: protocol version number

remove protocol version constant and bump osx-commons-contracts package version number to match with the protocol version

* revert: make ProtocolVersion abstract and use mock instead

* v1.4.0-alpha.1

* refactor: renamed function

* chore: maintain changelog

* build: improve build

* ci: added missing secret

* revert: remove duplicate

* build: remove osx-ethers dependencies

* revert: remove TestPlugin

* build: use files allowlist instead of .npmignore denylist

* refactor: improved mocks

* refactor: improved mocks further

* refactor: rename test

* refactor: remove placeholder setup

* feat: added test sekletons and todos

* revert: removed todo that has its own task already

* build: bump version number

* docs: improved plugin setup mock data

* refactor: renamed PluginMockData to PluginSetupMockData

* refactor: setup mocks

* build: remove src folder

* refactor: move and added todo

* refactor: move auth into dao folder

* build: adapt the hardhat solidity source path subtask

* refactor: move auth

* revert: src removal

* revert: delete storage

* refactor: move governance into extensions

* build: remove governance folder from package.json

* fix: wrong path

* refactor: harmonize mock contract naming and move CloneFactory

* revert: author comment for mock

* feat: use name aliases

* feat: added interface related tests

* fix: added missing await

* style: improved linting

* fix: contract linting errors

* style: improve linting

* fix: subgraph linter complaints

* docs: remove todos and add test skeleton

* style: fix enum values

* feat: add custom event error

* chore: use new sdk

* docs: fix comments

* fix: linter

* test: added missing interface test

* test: base classes and free functions (#43)

* build: added version number to allow importing

* revert: remove osx dependency

* fix: use new IDAO

* feat: add former voting helpers

* feat: refactored helpers

* refactor: event function

* refactor: improved naming

* refactor: improve time helpers

* refactor: removed hardhat time

* fix: wrong import

* refactor: improve time constants

* docs: add todo comment

* refactor: move over plugin and plugin setups as well as permissions

* refactor: renaming and changed folder structure

* feat: added bitmap

* refactor: moved metadata into separate file

* refactor: moved events

* refactor: moved permissions

* revert: version bump of solhint

* refactor: improve folder structure

* refactor: folders structure, imports, yarn lock

* ci: fix

* fix: version mismatch with sdk

* revert: remove etherscan

* refactor: rename event constants

* ci: make sdk an alpha version

* feat: move permissions

* build: rename package

* refactor: structure

* build: save yarn lock

* build: use same typescript version

* refactor: imports

* build: contracts start with alpha version

* build: use commons-sdk

* fix: imports

* build: add files to index

* v0.0.1-alpha.1

* fix: bump version and fix import

* fix: imports

* fix: missing export

* chore: bump version

* chore: save lock file

* chore: bump version

* build: no postinstall

* chore: ignore DS_Store files

* v0.0.1-alpha.3

* refactor: remove proxy helper

* build: add protocol version

* v0.0.1-alpha.4

* feat: made ProtocolVersion non-abstract

* refactor: protocol version number

remove protocol version constant and bump osx-commons-contracts package version number to match with the protocol version

* revert: make ProtocolVersion abstract and use mock instead

* v1.4.0-alpha.1

* refactor: renamed function

* chore: maintain changelog

* build: improve build

* ci: added missing secret

* revert: remove duplicate

* build: remove osx-ethers dependencies

* revert: remove TestPlugin

* build: use files allowlist instead of .npmignore denylist

* refactor: improved mocks

* refactor: improved mocks further

* refactor: rename test

* refactor: remove placeholder setup

* feat: added test sekletons and todos

* revert: removed todo that has its own task already

* build: bump version number

* docs: improved plugin setup mock data

* refactor: renamed PluginMockData to PluginSetupMockData

* refactor: setup mocks

* build: remove src folder

* refactor: move and added todo

* refactor: move auth into dao folder

* build: adapt the hardhat solidity source path subtask

* refactor: move auth

* revert: src removal

* revert: delete storage

* refactor: move governance into extensions

* build: remove governance folder from package.json

* fix: wrong path

* refactor: harmonize mock contract naming and move CloneFactory

* revert: author comment for mock

* feat: use name aliases

* feat: added interface related tests

* fix: added missing await

* style: improved linting

* fix: contract linting errors

* style: improve linting

* fix: subgraph linter complaints

* docs: remove todos and add test skeleton

* style: fix enum values

* feat: add custom event error

* chore: use new sdk

* docs: fix comments

* fix: linter

* test: added missing interface test

* test: added Proposal and DAO mock tests

* test: add bitmap tests

* style: fix linters

* style: remove whitespace

* test: remove .only

* test: added more tests

* fix: wrong solcover folder

* revert: remove unused function

* style: satisfy linter

* test: use fixtures and re-use test for upgradeable proposal base class

* test: upgradeability tests

* revert: remove skipped test

uint8 index cannot become larger than 255

* test: DaoAuthorizable contracts

* test: remove duplicated constant

* refactor: corrected naming

* docs: added production warning comment to all mocks

* feat(configs): adds helper function for networks and deployments (#44)

* fix(configs): changes to be commonjs package
feat(configs): improves typings for networks
feat(configs): adds helper function for networks and deployments

* chore(configs): applies formatting

* deploy(configs): bumps version to 0.1.0

* fix(configs): typo in SupportedVerions

* fix(configs): typo in NetworkDeploymnets
docs(configs): adds more clarifying comments

* fix(configs): corrects SupportedVersions enum keys

* Add tests
Add missing sepolia contract
Add NetworksAliases enum
Add CHANGELOG
Add ContractNames enum
Add exported `contracts` object
Add `getNetworkAlias` function

* fix comments

* fix prettier

* fix changelog

* add generic tests

* fix lint
+

* update contract names enum

* update type with enum value

* fix networkDeployment type

---------

Co-authored-by: Jose Manuel Mariñas Bascoy <[email protected]>

* ci: fixes reusable publish workflow to install deps before trying to publish (#47)

* ci: fixes reusable publish workflow to install deps before trying to publish

* ci(labeler): fixes labeler configuration

* chore: fixes styling in labeler.yml file

* refactor: adaptations to use `osx-commons` in `osx-plugin-template-hardhat` (#48)

* feat: single target permission type

* chore: bump version and maintain changelog

* feat: move more events

* feat: move permission manager flags

* feat: export address constants

* refactor: improved name

* test: moved over tests from hardhat template

* build: added missing import

* build: use the same typescript version

* refactor: address constants

* ci: fixes publish workflows (#50)

* ci: fixes deps installation in publish reuseable

* ci: renames tests workflows names to be more meaningful

* deps(configs): adds tsdlib as dependency

* refactor: `PluginSetup` and deployment helpers (`Proxy`, `CloneFactory`) (#46)

* refactor: deployment helpers and plugin setup

* refactor: enforce setting the implementation through the setup constructor

* chore: maintained changelog

* style: run prettier

* chore: bump package version

* style: run eslint

* fix: wrong variable name

* style: run solhint

* refactor: renaming

* docs: improved natspec

* refactor: added explicit function returning the implementation

* refactor: provide default implementation for the initial build

* build: clean typechain

* refactor: remove default prepareUpdate implementation for the upgradeable setup

* test: setups and deployment helpers

* chore: maintained changelog

* style: fix linting issues

* test: use address constant

* test: initialization

* docs: typo

* refactor: renaming

* style: remove trailing underscore

* style: improve library order

* feat: added event to sdk

* build: use sdk 0.0.1-alpha.5

* build: print coverage report in the console

* test: use fixtures

* fix: linter

* refactor: fix names

* refactor: reverting prepareUpdate default implementation

* style: move fixtures to the end of the files

* revert: remove default implementation

* style: move fixture to the EOF

* Apply suggestions from code review

Co-authored-by: Mathias Scherer <[email protected]>

---------

Co-authored-by: Mathias Scherer <[email protected]>

* docs(configs): adds readme for configs package (#49)

* docs(configs): adds readme for configs package

* docs(config): updates readme with small changes

* fix: createWrappedERC20TokenCalls function (#52)

* fix createWrappedERC20TokenCalls

* update package and changelog

* fix: update yarn lock (#53)

* update changelog

* update workflows

* feat: Add missing methods and local network support (#51)

* add missing methods and local network support

* revert getNetworkByNameAliasOrChainId

* fix prettier

* ci: another fix for the labeler

---------

Co-authored-by: Mathias Scherer <[email protected]>

* feat: add new configs folder structure (#54)

* add new folder structure

* fix prettier

* apply suggestions

* fix prettier

* fix imports

* F/os 1008 fix pr tagging (#59)

* fix pr taging

* fix pr taging

* fix prettier

* labeler test

* labeler test

* update labeler version

* fix prettier

* fix: mocks, missing permission ID, event name removal (#62)

* style: add input variable name

* feat: add ROOT_PERMISSION id

* fix: naming and indentation in mock

* chore: bump package

* revert: remove event names

* CI: remove push contraints for tests (#63)

* ci: remove push contraints for tests

* test: fix failin test in context.test.ts

* feat: improve folder structure for bitmap and events (#56)

* add bitmap and events

* fix prettier

* fix lint

* fix tests

* remove comment

* fix tests

* fix comments

* add error
check anto flipbit and getBit

* fix prettier

* fix comments

* fix: unclear variable naming

* fix: unclear variable naming

* fix: rename contractReceipt to receipt

* fix: errors after rebase

* fix: prettier

* chore: maintained changelog (#64)

* feat: add ens resolving functions (#61)

* add ens resolvers

* updatee changelog

* fix prettier

* add jsdoc

* fix tests

* fix lint and prettier

* fix tests

* update changelog

* fix: grouped 2 functions in one and changed varaible naming on tests

* fix: prettier failing

* fix: provider type and changelog

* update: package version

* feat: define the common domain and the current used exceptions and add getter function for dao ens and plugin ens

* feat: define Network domain type

* ci: move the getters to the getter file

* ci: create a folder for the deployment tests

* feat: add tests for the get dao and plugin functions

* feat: add new deployment test folder to avoid being ignored in the prettierignore

* ci: remove log

* featL update the changelog

* ci: rename types commented in the PR review

* Update configs/src/deployments/types.ts

Co-authored-by: josemarinas <[email protected]>

* feat: fix  types issues after using the supported network type

* ci: rename the osx ens domains file

* feat: update the package version

* ci:change to public rpc

* feat: improve folder structure, add hex and plugin folders (#57)

* add hex and plugin folders

* improve JSdoc

* fix prettier

* fix comments

* fix: constant names in tests

* fix: conflicts with develop branch

* feat: add change to changelog and update the package version

* feat: define new rpc urls

* feat: add needed index

* ci: update changelog

* feat: update the hardhat config file to use the common networks

* feat: update the .env.examples

* ci: remove not needed imports

* feat: update the hardhat config to initialize the configuration

* feat: add initializer function to provide the rpc apiKey to the networks configuration

* ci: remove not needed console logs

* feat: move the init function to the network file, and complete the rpc url with the api key

* ci: change the string char

* ci: remove my api key from the env examples

* feat: refactor the hardhat config file

* feat: add commons config to the dependencies

* ci: update the comments in the env example

* feat: remove the rpc url from the networks and add a function to set the value given the rpc and the api key

* feat: update the changelog and the README

* ci: update readme

* ci: remove comment

* feat: update the hardhat config file to use the new addRpcUrlToNetwork from commons-config package

* Chore: Change all RPCs to public RPC (#66)

* ci:change to public rpc

* feat: add change to changelog and update the package version

* feat: define new rpc urls

* feat: add needed index

* ci: update changelog

* feat: add initializer function to provide the rpc apiKey to the networks configuration

* ci: remove not needed console logs

* feat: move the init function to the network file, and complete the rpc url with the api key

* ci: change the string char

* feat: remove the rpc url from the networks and add a function to set the value given the rpc and the api key

* feat: update the changelog and the README

* ci: update readme

* ci: remove comment

* feat: make exception with base goerli when setting the url

---------

Co-authored-by: Claudia <[email protected]>

* feat: add new commons config version to contracts

* feat: update the workflows to use the new api key

* feat: bump commons config version in sdk package

* feat: update changelog

* f: added more fields to action ID generation and re-organized the structure

* chore: bumped version and updated changelog

* lint: prettier:write

* lint: subgraph linter

* ci: minor update

* feat: define the develop and main branch to run the actions on commits and run them also on PR relevant changes

* ci: fix prettier

* ci: reorder the events

* ci: reorder also in the sdk

* fix: typo in the name of the action event

* Update .github/workflows/sdk-tests.yml

Co-authored-by: Rekard0 <[email protected]>

* ci: add new line removed

* chore: remove SDK 1.0 related code from osx-sdk (#72)

* remove: SDK 1.0 unused folders, functions and constants

* update: changelog

* refactor: restructure `osx-commons-sdk` (#73)

* chore: folder restructure

* chore: delete examples from sdk 1.0

* fix: prettier

* fix: broken dependency

* fix: broken dependency

* fix: update yarn.lock

* fix: tests missing dependency

* fix: apply code structure suggestions

* fix: remove regex.ts

* fix: pr comments

* update: package.json version

* feat: bump OZ to v4.9.6 (#74)

* chore: bump OZ

* doc: add item to checklist

* docs: maintained changelog

* chore: bump package version

* feat(sdk): add `getProtocolVersion` function (#76)

* add: getProtocolVersion function

* fix: prettier

* fix: linting

* Update sdk/src/introspection.ts

Co-authored-by: Carles <[email protected]>

* Update sdk/src/introspection.ts

Co-authored-by: Michael Heuer <[email protected]>

* Update sdk/test/unit/introspection.test.ts

Co-authored-by: Michael Heuer <[email protected]>

* remove: constant ADDRESS_ONE

* fix: prettier

* update: changelog and package version

* fix: export of addres one

* fix: update getProtocolVersion return comment

* chore: add ADDRESS_ONE to constants

---------

Co-authored-by: Carles <[email protected]>
Co-authored-by: Michael Heuer <[email protected]>

* fix(sdk): `getProtocolVersion` function (#77)

* add: getProtocolVersion function

* fix: prettier

* fix: linting

* Update sdk/src/introspection.ts

Co-authored-by: Carles <[email protected]>

* Update sdk/src/introspection.ts

Co-authored-by: Michael Heuer <[email protected]>

* Update sdk/test/unit/introspection.test.ts

Co-authored-by: Michael Heuer <[email protected]>

* remove: constant ADDRESS_ONE

* fix: prettier

* fix: export of addres one

* fix: update getProtocolVersion return comment

* chore: add ADDRESS_ONE to constants

* feat: add getProtocolVersion

* update pacakge.json

---------

Co-authored-by: Carles <[email protected]>
Co-authored-by: Michael Heuer <[email protected]>

* feat(sdk): add back `PluginType` enum and fix npm dependencies (#78)

* feat: add back plugin type enum

* chore: bump version and maintain changelog

* chore: update lockfile

* chore: change authors after AA dissolution (#21)

* chore: adapt authors

* fix: merge conflict artifact

* chore: adapt contracts and bump version (#79)

* docs: added and improved `README.md`s (#80)

* docs: added and improved READMEs

* docs: improved README.md

* style: code snipped formatting

* docs: improved title

* Update README.md

Co-authored-by: Claudia Barcelo <[email protected]>

---------

Co-authored-by: Claudia Barcelo <[email protected]>

---------

Co-authored-by: Rekard0 <[email protected]>
Co-authored-by: Mathias Scherer <[email protected]>
Co-authored-by: josemarinas <[email protected]>
Co-authored-by: Mathias Scherer <[email protected]>
Co-authored-by: Jose Manuel Mariñas Bascoy <[email protected]>
Co-authored-by: Claudia <[email protected]>
Co-authored-by: jordaniza <[email protected]>
Co-authored-by: Jordan <[email protected]>
Co-authored-by: Carles <[email protected]>
  • Loading branch information
10 people authored Apr 29, 2024
1 parent 7776266 commit 7df1629
Show file tree
Hide file tree
Showing 216 changed files with 33,794 additions and 2 deletions.
32 changes: 32 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# GENERAL

## The network used for testing purposes
NETWORK_NAME="mainnet" # ["mainnet", "sepolia", "polygon", "mumbai","baseMainnet", "baseGoerli", "baseSepolia", "arbitrum", "arbitrumSepolia"]

# CONTRACTS

## Hex encoded private keys separated by a comma `,`a
PRIVATE_KEY="0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80" # Default hardhat account 0 private key. DON'T USE FOR DEPLOYMENTS

## RPC alchemy credentials
ALCHEMY_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"

## Gas Reporting
REPORT_GAS='true'
COINMARKETCAP_API_KEY="zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz"

## Block explorers
ETHERSCAN_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
POLYGONSCAN_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
BASESCAN_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
ARBISCAN_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"

# SUBGRAPH

## The Graph credentials
GRAPH_KEY="zzzzzzzzzzzz"

## Subgraph
SUBGRAPH_NAME="osx"
SUBGRAPH_VERSION="alice-debug-1s"
SUBGRAPH_NETWORK_NAME="goerli" # ["mainnet", "goerli", "polygon", "polygonMumbai"]
34 changes: 34 additions & 0 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
root: true

extends:
- 'eslint:recommended'
- 'plugin:@typescript-eslint/eslint-recommended'
- 'plugin:@typescript-eslint/recommended'
- 'prettier'

plugins:
- '@typescript-eslint'
- 'unused-imports'

rules:
'@typescript-eslint/no-floating-promises':
- error
- ignoreIIFE: true
ignoreVoid: true
'@typescript-eslint/no-inferrable-types': 'off'
'@typescript-eslint/no-explicit-any': 'off'
'@typescript-eslint/no-unused-vars':
- error
- argsIgnorePattern: '_'
varsIgnorePattern: '_'

'unused-imports/no-unused-imports': 'error'

ignorePatterns:
- '*.log'
- '*.env'
- '.env'
- '.DS_Store'
- .pnp.*
- 'node_modules'
- '*.config.js'
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a bug report to help us
title: 'Bug: <add-text-here>'
labels: bug
assignees: ''
---

**Describe the bug**
A short summary of what the bug is. Please be clear and concise.

**To Reproduce (please complete the following information)**

- Config and flags: [e.g. variable="xyz"]
- Steps to reproduce the behavior:
1. node '...'
2. make request with '....'
3. '...'
4. See error

**Current behavior**
In depth explanation, if required, or a clear and concise description of what actually happens.

**Expected behavior**
A clear and concise description of what you expected to happen.

**System (please complete the following information):**

- OS: [e.g. Fedora 35]
- Software version [e.g. Docker 8, Node 14.19.1]
- Commit hash [e.g. e84617d]

**Additional context**
Add any other context about the problem here.
27 changes: 27 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
contracts:
- changed-files:
- any-glob-to-any-file:
- 'contracts/**/*'
- 'contracts/*'
- '.github/workflows/contracts-*.yml'

sdk:
- changed-files:
- any-glob-to-any-file:
- 'sdk/**/*'
- 'sdk/*'
- '.github/workflows/sdk-*.yml'

subgraph:
- changed-files:
- any-glob-to-any-file:
- 'subgraph/**/*'
- 'subgraph/*'
- '.github/workflows/subgraph-*.yml'

configs:
- changed-files:
- any-glob-to-any-file:
- 'configs/**/*'
- 'configs/*'
- '.github/workflows/configs-*.yml'
20 changes: 20 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
## Description

Please include a summary of the change and be sure you follow the contributions rules we do provide [here](./CONTRIBUTIONS.md)

Task ID: [OS-?](https://aragonassociation.atlassian.net/browse/OS-?)

<!--- Use the https://www.conventionalcommits.org to name this PR and its commits.-->
<!--- Consider using https://commitizen.github.io/cz-cli/ for this purpose.-->

## Checklist:

- [ ] I have selected the correct base branch.
- [ ] I have performed a self-review of my own code.
- [ ] I have commented my code, particularly in hard-to-understand areas.
- [ ] I have made corresponding changes to the documentation.
- [ ] My changes generate no new warnings.
- [ ] Any dependent changes have been merged and published in downstream modules.
- [ ] I created tasks to update dependent repositories (OSx, Plugins)
- [ ] I ran all tests with success and extended them if necessary.
- [ ] I have updated the `CHANGELOG.md` file in the root folder.
58 changes: 58 additions & 0 deletions .github/scripts/generate_release_matrix.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import json
import os

#
# // PULL_LABELS = toJson(github.event.pull_request.labels)
#
# [
# {
# "color": "FFFFF7",
# "default": false,
# "description": "Issue describes change in the development process",
# "id": 1786730933,
# "name": "label_pqr-xyz-release",
# "node_id": "MDU6TGFiZWwxNzg2NzMwOTMz",
# "url": "https://api.github.com/repos/parzh/parzh.github.io/labels/Domain:%20dev"
# },
# {
# "color": "cc062a",
# "default": false,
# "description": "Issue must be addressed right now",
# "id": 1786706637,
# "name": "label_abc-release",
# "node_id": "MDU6TGFiZWwxNzg2NzA2NjM3",
# "url": "https://api.github.com/repos/parzh/parzh.github.io/labels/Priority:%20top"
# },
# {
# "color": "00727C",
# "default": false,
# "description": "Issue describes lack of a functionality or an open possibility of enhancement",
# "id": 1786726751,
# "name": "label_123-improvement",
# "node_id": "MDU6TGFiZWwxNzg2NzI2NzUx",
# "url": "https://api.github.com/repos/parzh/parzh.github.io/labels/Type:%20improvement"
# }
# ]
#
# Test:
# PULL_LABELS=$(cat labels.json) python3 generate_release_matrix.py
#

try:
labels = json.loads(os.getenv('PULL_LABELS'))
except:
labels = []

trigger_substring = "-release"
matrix = []
hasLabels = False
for label in labels:
label_name = str(label['name'])
trigger_substring_index = label_name.find(trigger_substring)
if trigger_substring_index != -1:
matrix.append({
'package': label_name[:trigger_substring_index],
})
hasLabels = True

print(json.dumps({'include': matrix}))
24 changes: 24 additions & 0 deletions .github/scripts/generate_release_notes.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/bash

PACKAGE=$1

echo "RELEASE_NOTES<<EOF" >> $GITHUB_ENV
echo "## All changes in $PACKAGE" >> $GITHUB_ENV
echo "" >> $GITHUB_ENV

PULL_REQUESTS=$(gh pr list --label $PACKAGE --state merged --json title,mergeCommit,number)

# convert to base64 so we only have one line per pull request that we iterate over
echo $PULL_REQUESTS | jq -r '.[] | @base64' | while read pull_request ; do
COMMIT=$(echo $pull_request | base64 -d | jq -r '.mergeCommit.oid')
NUMBER=$(echo $pull_request | base64 -d | jq -r '.number')
TITLE=$(echo $pull_request | base64 -d | jq -r '.title')

# if there is more than 1 tag, the pull request is already included in another release
if [ $(git tag --contain $COMMIT | grep -i $PACKAGE | wc -l) -le 1 ]; then
echo "- $TITLE in #$NUMBER" >> $GITHUB_ENV
fi
done


echo "EOF" >> $GITHUB_ENV
21 changes: 21 additions & 0 deletions .github/workflows/configs-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Configs Publish

on:
push:
tags:
- '*-configs'

jobs:
check_tag:
uses: ./.github/workflows/reusable-check-tag.yml
with:
ref: ${{ github.ref }}

publish:
needs: [check_tag]
uses: ./.github/workflows/reusable-publish.yml
with:
package: ${{ needs.check_tag.outputs.package }}
version: ${{ needs.check_tag.outputs.version }}
secrets:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
40 changes: 40 additions & 0 deletions .github/workflows/configs-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Configs Tests

on:
push:
branches:
- main
- develop
pull_request:
paths:
- 'configs/**'
- '.github/workflows/configs-*.yml'
workflow_dispatch:
workflow_call:

jobs:
formatting-linting:
uses: ./.github/workflows/formatting-linting.yml
tests:
runs-on: 'ubuntu-latest'
defaults:
run:
working-directory: configs
steps:
- name: 'Check out the repo'
uses: 'actions/checkout@v3'

- name: 'Install Node.js'
uses: 'actions/setup-node@v3'
with:
cache: 'yarn'
node-version: 18

- name: 'Install the dependencies'
run: 'yarn install --frozen-lockfile'

- name: 'Build the configs'
run: 'yarn build'

- name: 'Test the configs'
run: 'yarn test >> $GITHUB_STEP_SUMMARY'
28 changes: 28 additions & 0 deletions .github/workflows/contracts-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Contracts Publish

on:
push:
tags:
- '*-contracts'

jobs:
check_tag:
uses: ./.github/workflows/reusable-check-tag.yml
with:
ref: ${{ github.ref }}

tests:
needs: [check_tag]
if: ${{ needs.check_tag.outputs.package == 'contracts' }}
uses: ./.github/workflows/contracts-tests.yml
secrets:
ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }}

publish:
needs: [check_tag, tests]
uses: ./.github/workflows/reusable-publish.yml
with:
package: ${{ needs.check_tag.outputs.package }}
version: ${{ needs.check_tag.outputs.version }}
secrets:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
52 changes: 52 additions & 0 deletions .github/workflows/contracts-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Contracts Tests

on:
push:
branches:
- main
- develop
pull_request:
paths:
- 'contracts/**'
- '.github/workflows/contracts-*.yml'
workflow_dispatch:
workflow_call:
secrets:
ALCHEMY_API_KEY:
required: true

jobs:
formatting-linting:
uses: ./.github/workflows/formatting-linting.yml
tests:
runs-on: 'ubuntu-latest'
defaults:
run:
working-directory: contracts
steps:
- name: 'Check out the repo'
uses: 'actions/checkout@v3'

- name: 'Install Node.js'
uses: 'actions/setup-node@v3'
with:
cache: 'yarn'
node-version: 18

- name: 'Install the dependencies'
run: 'yarn install --frozen-lockfile'

- name: 'Build the contracts'
run: 'yarn build'
env:
ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }}

- name: 'Build the typechain'
run: 'yarn typechain'
env:
ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }}

- name: 'Test the contracts and generate the coverage report'
run: 'yarn coverage >> $GITHUB_STEP_SUMMARY'
env:
ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }}
Loading

0 comments on commit 7df1629

Please sign in to comment.