Gnosis Safe – The most trusted platform to store digital assets on Ethereum https://gnosis-safe.io
Go to file
Mikhail Mikheev 83436e37b2
v1.9.5 (#771)
* Bug: Invalid V in signature with eth_sign (#728)

* Fix invalid V with metamask/ledger

* DONT FORGET TO REVERT BEFORE MERGING: test deployment

* DONT FORGET TO REVERT BEFORE MERGING 2: test deployment

* Revert "DONT FORGET TO REVERT BEFORE MERGING 2: test deployment"

This reverts commit 8331f2a78f7fc8f53eb893899f16edd8238c68ff.

* Revert "DONT FORGET TO REVERT BEFORE MERGING: test deployment"

This reverts commit 03b81e31820ce4fe078a7131c2f0caa2af4870ac.

* BUG: Only injected providers are cached as last used provider (#733)

* cache every used provider, not only injected one

* package json update

* (Fix) Adapt app to back-end changes (#736)

* refactor: Set success status to `201` (CREATED)

* refactor: return `null` when there's no latestTx

* (Fix) Transaction not automatically executed (#716)

* feature: action/reducer to UPDATE_SAFE_NONCE

* refactor: when processing txs returned from backend, extract latest tx nonce value and store it in the safe's state

* chore: update `yarn.lock`

* refactor: `UPDATE_SAFE_THRESHOLD` and `UPDATE_SAFE_NONCE` discarded in favor of `UPDATE_SAFE`

* refactor: use `SAFE_REDUCER_ID` constant

* refactor: remove `updateSafeNonce` file

* (Fix) Change the order of the upgrade methods lookup (#740)

* fix: change the order of the upgrade methods lookup

The `isUpgradeTransaction` method was looking for the methods in an wrong order (#599).
The proper order was set in #610, but `isUpgradeTransaction` wasn't updated.

* fix: contract upgrade version lookup

* Feature: Use eth_sign for hardware wallets connected via onboard.js (#742)

* Use eth_sign for hardware wallets

* install onboard.js with fix from forked repo

* rebuild yarn.lock to fix cached onboard

* update bnc-onboard

* update package json (#743)

* (Fix) Properly decode threshold value in tx details (#749)

* fix: Display new threshold value when changing its value

There was a typo for the `changeThreshold` action

fixes #746

* refactor: use a constant for safe methods names

* fix: check for `decimals` method in transferredTokens (#748)

Previously we were looking for `decimals` hash in the contract `code`.
There are some contracts like USDC who happen to be behind a FiatTokenProxy, making it upgradable.
By directly calling the `decimals()` method, we interact with the contract and can be sure that the `decimals()` method is present.

fixes #678

* Bug #747: Don't use getLastTxNonce to fetch safe nonce (#750)

* don't use getLastTxNonce to fetch safe nonce

* fetch safe nonce in checkAndUpdateSafe

* checkAndUpdateSafe refactor

* remove nonce update logic from UPDATE_SAFE reducer

* handle the case when localSafe returns undefined

* handle the case when localSafe returns undefined in buildTransactionFrom

* bump package json version to 1.9.4

* Issue-595: Apps config from Manifest (#715)

* getting apps info from its manifest

* Consume app info from manifest in Apps list, Transactions and Toast

* fixes

* navigate to TX Tab with an app makes a TX

* (Fix) If backend returns `null` for addresses the Transaction ca… (#718)

This tends to solve any possible issue that there may be in the tx execution for the `gasToken` and `refundReceiver` nullish values.

fixes #573

* #751 fix - Replaces decimals from backend with decimals from blockchain (#755)

* Replaces decimals from backend with decimals from blockchain

* Removes fetching again token info from blockchain
Fixs decimals cast, now we force to move from bignumber to number
For data already wrong stored as string we remove it to force fetching again the decimals

* Fixs missing symbol

* Add description comment

* Added Unilogin provider + support for legacy paths (#719)

* Added unilogin provier + support for legacy path

* Bump onboardjs version

* fallback to displaying custom tx when we fail to fetch token info (#767)

Co-authored-by: Fernando <fernando.greco@gmail.com>
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
Co-authored-by: Agustin Pane <agustin.pane@gmail.com>
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
2020-04-16 15:11:24 +04:00
.github/ISSUE_TEMPLATE Feature: Add bug-report template (#372) 2020-01-16 23:10:13 +01:00
config Merge branch 'master' of github.com:gnosis/safe-react into development 2020-03-11 16:49:33 +04:00
contracts Add test case for sending token with 6 decimals, wrap moveFunds helper fireEvent in act() 2019-10-14 17:13:15 +04:00
flow-typed/npm (Feature) erc721 feature implementation (#570) 2020-03-18 17:24:24 -03:00
migrations send funds test refacotring wip 2019-05-31 19:22:05 +04:00
public (Fix) Basic mobile responsiveness (#532) 2020-02-06 12:40:29 -03:00
scripts Development (#378) 2019-12-18 13:35:03 +01:00
src v1.9.5 (#771) 2020-04-16 15:11:24 +04:00
.env.example v1.9.5 (#771) 2020-04-16 15:11:24 +04:00
.eslintignore (Fix) Enforce linting and formatting (#564) 2020-02-17 19:20:43 -03:00
.eslintrc (add) linter sorting rules (#614) 2020-02-28 10:58:40 +01:00
.flowconfig Development (#355) 2019-12-16 17:04:42 +04:00
.gitignore #386: Addressbook transaction details (#407) 2020-01-15 16:12:17 +04:00
.nvmrc (Fix) Enforce linting and formatting (#564) 2020-02-17 19:20:43 -03:00
.prettierignore (Fix) Enforce linting and formatting (#564) 2020-02-17 19:20:43 -03:00
.prettierrc (Fix) Enforce linting and formatting (#564) 2020-02-17 19:20:43 -03:00
.travis.yml Sync master dev (#656) 2020-03-11 14:23:16 +04:00
LICENSE.md Adding README and LICENSE (#7) 2018-03-12 11:26:53 +01:00
babel.config.js safe creation test wip 2019-05-29 18:11:44 +04:00
jest.config.js remove cleanup-after-each 2019-08-15 18:50:15 +04:00
jsconfig.json WA-238 Added contracts after migrated to Kovan and Rinkeby 2018-05-04 12:50:24 +02:00
package.json v1.9.5 (#771) 2020-04-16 15:11:24 +04:00
readme.md Update readme (#696) 2020-03-27 13:53:20 +04:00
truffle.js add token contracts for testing purposes and refactor TokenMovements utils 2019-05-31 17:58:35 +04:00
yarn.lock v1.9.5 (#771) 2020-04-16 15:11:24 +04:00

readme.md

Gnosis Safe Multisig

The most trusted platform to store digital assets on Ethereum

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

What things you need to install the software and how to install them

yarn add truffle // recommended usage of -g flag
yarn add ganache-cli // recommended usage of -g flag
yarn add flow-type // recommended usage of -g flag

We use yarn in our infrastacture, so we decided to go with yarn in the README

Installing and running

A step by step series of examples that tell you have to get a development env running

Install dependencies for the project:

yarn install

For using the Rinkeby services:

yarn start

If you prefer using Mainnet ones:

yarn start-mainnet

Building

For Rinkeby:

yarn build

For Mainnet:

yarn build-mainnet

Running the tests

  1. Run transaction-history-service
git clone https://github.com/gnosis/safe-transaction-service.git
cd safe-transaction-service
git checkout develop
docker-compose build
# it comes enabled by default in docker-compose
sudo service postgresql stop
docker-compose up -d

Check that the service is running at https://localhost:8000

  1. Migrate Safe Contracts:
git clone https://github.com/gnosis/safe-contracts.git
cd safe-contracts
yarn
npx truffle migrate
  1. Migrate Token Contracts for the tests: Inside safe-react directory
npx truffle migrate
  1. Run the tests:
yarn test

Break down into end to end tests

Explain what these tests test and why

Give an example

And coding style tests

Explain what these tests test and why

Give an example

Deployment

Add additional notes about how to deploy this on a live system

Built With

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See the full list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Thanks for Gnosis Team for providing the Safe contracts.