[bisq-network/bisq] Change TradeInfo proto's tradePrice & tradeVolume fields to string [#5] (PR #6062)

Stan notifications at github.com
Sat Feb 19 19:34:10 CET 2022


As longs, they created confusion, and extra client side code for handling display of trade prices and volumes.  

Java/Python API client devs will not have to try to figure out how long values are representing fractional fiat/altcoin prices and volumes.

Just changing volume _or_ price field to string would leave the PR in an incomplete, messy state, so changed both in same PR.  

Summary:

- Change `TradeInfo` .proto's `tradePrice` & `tradeVolume` fields from long to string.

- Adjust `core.api.model` .proto wrappers to price & volume type change.

- Adjust `cli` to `TradeInfo` .proto's price & volume type change.  Quite a bit of refactoring in `cli` module.  A lot of number-string formatting was removed.	
  
- Adjust apitest cases to `TradeInfo` .proto's price & volume type change.

- XMR amounts/volumes are now shown with a precision of 8 in the CLI console.


Based on branch `4-change-grpc-proto-volume-to-string`, PR https://github.com/bisq-network/bisq/pull/6060
You can view, comment on, or merge this pull request online at:

  https://github.com/bisq-network/bisq/pull/6062

-- Commit Summary --

  * Include unmerged API NPE fix to FeeService class (see PR #6052)
  * Prepare API Offers .proto defs for significant changes
  * Fix comment about changing "all" number fields to string
  * Delete deprecated CLI console output formatting classes
  * Change OfferInfo proto's 'price' field type to string
  * Adjust cli module to OfferInfo.price field change to string  type
  * Fix typo in comment
  * Adjust apitest cases to OfferInfo.price proto field type to string
  * Fix 'unnecessary use of fully qualified name'.
  * Change existing `uint64 triggerPrice` field type in grpc.proto to `string triggerPrice`.
  * Adjust to `string triggerPrice` change in API core classes.
  * Adjust to `string triggerPrice` change in API cli classes
  * Adjust to `string triggerPrice` change in API test cases
  * Change OfferInfo proto's volume fields' type to string
  * Adjust cli module to grpc.proto::volume field type change (string)
  * Remove some dead code
  * Add some asserts on volume/min-volume strings from server
  * Merge branch 'master' into 4-change-grpc-proto-volume-to-string
  * Change TradeInfo .proto's price & volume fields to string
  * Adjust .proto wrappers to price & volume type change
  * Adjust cli to TradeInfo .proto's price & volume type change
  * Adjust apitest cases to TradeInfo .proto's price & volume type change

-- File Changes --

    M apitest/src/test/java/bisq/apitest/method/offer/AbstractOfferTest.java (45)
    M apitest/src/test/java/bisq/apitest/method/offer/BsqSwapOfferTest.java (10)
    M apitest/src/test/java/bisq/apitest/method/offer/CreateBSQOffersTest.java (44)
    M apitest/src/test/java/bisq/apitest/method/offer/CreateOfferUsingFixedPriceTest.java (30)
    M apitest/src/test/java/bisq/apitest/method/offer/CreateOfferUsingMarketPriceMarginTest.java (39)
    M apitest/src/test/java/bisq/apitest/method/offer/CreateXMROffersTest.java (16)
    M apitest/src/test/java/bisq/apitest/method/offer/EditOfferTest.java (204)
    M apitest/src/test/java/bisq/apitest/method/trade/AbstractTradeTest.java (14)
    M apitest/src/test/java/bisq/apitest/method/trade/BsqSwapBuyBtcTradeTest.java (9)
    M apitest/src/test/java/bisq/apitest/method/trade/BsqSwapSellBtcTradeTest.java (4)
    M apitest/src/test/java/bisq/apitest/method/trade/TakeBuyBSQOfferTest.java (2)
    M apitest/src/test/java/bisq/apitest/method/trade/TakeBuyXMROfferTest.java (2)
    M apitest/src/test/java/bisq/apitest/method/trade/TakeSellBSQOfferTest.java (2)
    M apitest/src/test/java/bisq/apitest/method/trade/TakeSellXMROfferTest.java (2)
    M apitest/src/test/java/bisq/apitest/scenario/LongRunningOfferDeactivationTest.java (26)
    M apitest/src/test/java/bisq/apitest/scenario/bot/BotClient.java (3)
    M apitest/src/test/java/bisq/apitest/scenario/bot/RandomOffer.java (2)
    M apitest/src/test/java/bisq/apitest/scenario/bot/RobotBob.java (12)
    M apitest/src/test/java/bisq/apitest/scenario/bot/protocol/BotProtocol.java (11)
    M apitest/src/test/java/bisq/apitest/scenario/bot/protocol/MakerBotProtocol.java (12)
    M apitest/src/test/java/bisq/apitest/scenario/bot/protocol/TakerBotProtocol.java (5)
    M cli/src/main/java/bisq/cli/CliMain.java (31)
    D cli/src/main/java/bisq/cli/ColumnHeaderConstants.java (81)
    M cli/src/main/java/bisq/cli/CurrencyFormat.java (98)
    D cli/src/main/java/bisq/cli/DirectionFormat.java (61)
    M cli/src/main/java/bisq/cli/GrpcClient.java (14)
    D cli/src/main/java/bisq/cli/OfferFormat.java (309)
    D cli/src/main/java/bisq/cli/TableFormat.java (156)
    D cli/src/main/java/bisq/cli/TradeFormat.java (222)
    D cli/src/main/java/bisq/cli/TransactionFormat.java (60)
    M cli/src/main/java/bisq/cli/opts/EditOfferOptionParser.java (4)
    M cli/src/main/java/bisq/cli/request/OffersServiceRequest.java (46)
    M cli/src/main/java/bisq/cli/table/builder/AbstractTableBuilder.java (4)
    M cli/src/main/java/bisq/cli/table/builder/AbstractTradeListBuilder.java (50)
    M cli/src/main/java/bisq/cli/table/builder/ClosedTradeTableBuilder.java (16)
    M cli/src/main/java/bisq/cli/table/builder/FailedTradeTableBuilder.java (16)
    M cli/src/main/java/bisq/cli/table/builder/OfferTableBuilder.java (77)
    M cli/src/main/java/bisq/cli/table/builder/OpenTradeTableBuilder.java (16)
    M cli/src/main/java/bisq/cli/table/builder/TradeDetailTableBuilder.java (21)
    M cli/src/main/java/bisq/cli/table/builder/TradeTableColumnSupplier.java (36)
    R cli/src/main/java/bisq/cli/table/column/AltcoinVolumeColumn.java (39)
    M cli/src/main/java/bisq/cli/table/column/FiatColumn.java (19)
    D cli/src/main/java/bisq/cli/table/column/MixedPriceColumn.java (57)
    D cli/src/main/java/bisq/cli/table/column/MixedVolumeColumn.java (73)
    M cli/src/test/java/bisq/cli/table/AddressCliOutputDiffTest.java (17)
    M cli/src/test/java/bisq/cli/table/GetBalanceCliOutputDiffTest.java (15)
    M cli/src/test/java/bisq/cli/table/GetOffersCliOutputDiffTest.java (9)
    M cli/src/test/java/bisq/cli/table/GetTradeCliOutputDiffTest.java (9)
    M cli/src/test/java/bisq/cli/table/GetTransactionCliOutputDiffTest.java (10)
    M cli/src/test/java/bisq/cli/table/PaymentAccountsCliOutputDiffTest.java (9)
    M core/src/main/java/bisq/core/api/CoreApi.java (12)
    M core/src/main/java/bisq/core/api/CoreOffersService.java (19)
    M core/src/main/java/bisq/core/api/EditOfferValidator.java (21)
    M core/src/main/java/bisq/core/api/model/CanceledTradeInfo.java (6)
    M core/src/main/java/bisq/core/api/model/OfferInfo.java (40)
    M core/src/main/java/bisq/core/api/model/TradeInfo.java (50)
    M core/src/main/java/bisq/core/api/model/builder/OfferInfoBuilder.java (16)
    M core/src/main/java/bisq/core/api/model/builder/TradeInfoV1Builder.java (8)
    M proto/src/main/proto/grpc.proto (237)

-- Patch Links --

https://github.com/bisq-network/bisq/pull/6062.patch
https://github.com/bisq-network/bisq/pull/6062.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/bisq/pull/6062
You are receiving this because you are subscribed to this thread.

Message ID: <bisq-network/bisq/pull/6062 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20220219/2eedbe14/attachment-0001.htm>


More information about the bisq-github mailing list