Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(x/ecocredit): Put basket server method #758

Merged
merged 28 commits into from
Feb 11, 2022

Conversation

technicallyty
Copy link
Contributor

@technicallyty technicallyty commented Feb 10, 2022

Description

Implements the Put method for baskets.
Tests for Put method.

ref: #732


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • included the correct type prefix in the PR title
  • added ! to the type prefix if API or client breaking change
  • targeted the correct branch (see PR Targeting)
  • provided a link to the relevant issue or specification
  • followed the guidelines for building modules
  • included the necessary unit and integration tests
  • added a changelog entry to CHANGELOG.md
  • included comments for documenting Go code
  • updated the relevant documentation or specification
  • reviewed "Files changed" and left comments if necessary
  • confirmed all CI checks have passed

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.

I have...

  • confirmed the correct type prefix in the PR title
  • confirmed ! in the type prefix if API or client breaking change
  • confirmed all author checklist items have been addressed
  • reviewed state machine logic
  • reviewed API design and naming
  • reviewed documentation is accurate
  • reviewed tests and test coverage
  • manually tested (if applicable)

@technicallyty technicallyty changed the base branch from master to release/v2.2.x February 10, 2022 23:08
Copy link
Member

@aaronc aaronc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My original idea was to add a method to basket.EcocreditKeeper like SubtractTradableBalance to take care of this. Not sure which is better really... and maybe we shouldn't even have two packages and separate keepers. You can see what I'm doing with EcocreditKeeper and mocking in #746

x/ecocredit/server/basket/helpers.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
@aaronc aaronc mentioned this pull request Feb 11, 2022
68 tasks
@technicallyty technicallyty marked this pull request as ready for review February 11, 2022 01:13
Copy link
Member

@aaronc aaronc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good work @technicallyty 👍

Took a quick look, will look more later when I'm better rested

Let's change usages of award to mint

types/math/dec.go Show resolved Hide resolved
types/math/dec.go Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
types/math/dec.go Outdated Show resolved Hide resolved
Copy link
Member

@aaronc aaronc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is looking very close! Just a few things to update and then we can merge 🎉

x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put_test.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put_test.go Show resolved Hide resolved
x/ecocredit/server/invariants.go Show resolved Hide resolved
types/math/dec.go Outdated Show resolved Hide resolved
Co-authored-by: Aaron Craelius <aaron@regen.network>
Copy link
Member

@aaronc aaronc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Great work @technicallyty 👏

@aaronc aaronc enabled auto-merge (squash) February 11, 2022 18:55
Copy link
Member

@ryanchristo ryanchristo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice! A few comments and NewKeeper needs to be updated in a couple tests following the latest merge.

x/ecocredit/keys.go Show resolved Hide resolved
x/ecocredit/server/basket/put_test.go Outdated Show resolved Hide resolved
x/ecocredit/server/basket/put.go Show resolved Hide resolved
@technicallyty
Copy link
Contributor Author

technicallyty commented Feb 11, 2022

conflict with #765 - maybe we should wait til that gets merged

Copy link
Collaborator

@robert-zaremba robert-zaremba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pre-approving, but before merging let's consider:

  • using subaccount for baskets
  • moving decimal functions to a separate package


// ParseBalanceKey parses the recipient address and batch-denom from tradable or retired balance key.
func ParseBalanceKey(key []byte) (sdk.AccAddress, BatchDenomT) {
addrLen := key[1]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add a comment that key[0] is a storage prefix.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added comment explaining format

if err = k.bankKeeper.MintCoins(sdkCtx, ecocredit.ModuleName, coinsToSend); err != nil {
return nil, err
}
if err = k.bankKeeper.SendCoinsFromModuleToAccount(sdkCtx, ecocredit.ModuleName, ownerAddr, coinsToSend); err != nil {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's use a subaccount, eg:

const BasketModuleAddr = ecocredit.ModuleName + "-basket"

I'm putting it in basket/keys.go

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we just need to make sure we put this in app.go

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

its not really an address though, how about BasketModuleName?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BasketSubModuleName

}

if batchInfo.StartDate.Before(minStartDate) {
return sdkerrors.ErrInvalidRequest.Wrapf("cannot put a credit from a batch with start date %s "+
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
return sdkerrors.ErrInvalidRequest.Wrapf("cannot put a credit from a batch with start date %s "+
return errBadReq.Wrapf("cannot put a credit from a batch with start date %s "+

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can use it everywhere instead of sdkerrors.ErrInvalidRequest

// use floating notation here always for canonical representation
store.Set(key, []byte(value.String()))
}
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Get Set, Add ... Decimal functions are general - how about moving it outside of ecocrerdits? At least, let's move them to different package.

Copy link
Member

@aaronc aaronc Feb 11, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is mostly code that was already there and will be going way soon in #723 so I don't think we to spend that much effort on cleanup. agreed a different package makes sense generally...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

perhaps we can just do that when/if the times comes when another package needs it? this move was just a fix for import cycles

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah i'd say keep as is because it's all getting deleted right after the 2.2 release

@ryanchristo
Copy link
Member

Aside from failing test and go mod tidy, looks good to me.

@aaronc
Copy link
Member

aaronc commented Feb 11, 2022

Aside from failing test and go mod tidy, looks good to me.

what's the failing test?

@aaronc
Copy link
Member

aaronc commented Feb 11, 2022

Aside from failing test and go mod tidy, looks good to me.

what's the failing test?

ah i see, but that's unrelated. let's push a fix separately?

@aaronc aaronc merged commit 452ec03 into release/v2.2.x Feb 11, 2022
@aaronc aaronc deleted the ty/732-msg_server_put branch February 11, 2022 21:52
ryanchristo added a commit that referenced this pull request Mar 9, 2022
* chore: Changelog + Release Notes for v2.0.0-rc1 (#565)

* chore: update changelog & add release notes

* Apply suggestions from code review

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* Update RELEASE_NOTES.md

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* chore: changelog update and merging master (#581)

* feat: add simulations for update credit class messages (#559)

* feat: add weighted operations for update credit class msgs

* chore: fix typo

* chore: address review changes

* feat(tests): add `x/ecocredit` gRPC REST tests (#544)

* feat: WIP add grpc rest tests

* wip

* WIP adding tests

* add query tests

* fix failing test

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* update query batches endpoint

* Update x/ecocredit/client/testsuite/grpc.go

* run make proto-swagger-gen

* chore: fix errors

* fix failing tests

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* feat: Script for starting a local Regen test node, based on the tutorial (#538)

* added script to create a test node based on the tutorial instructions

* Apply suggestions from code review

I'm going to make one more change after this commit.

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* run the uname command once and assign to variable

* using bash shell rather than sh

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* docs: ecocredit client spec (#557)

* docs: ecocredit client spec

* add update commands

* address review comment

* Update x/ecocredit/spec/05_client.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix: ORM IndexKeyCodec (#475) (#525)

* WIP Max255DynamicLengthIndexKeyCodec

* Add PrefixSearchableKey and get all tests working

* WIP changes to IndexKeyCodec

* wip on key codec

* Fix some tests

* Fix remaining tests

* Rm uint64_index

* Clean up and add more tests

* Update x/group and x/ecocredit

* Verify index key type

* Address some review comments

* Fix docs

* Add docs about NewIndex

Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* docs: update regen test networks (#561)

* docs: update regen test networks

* docs: update regen test networks

* Update docs/getting-started/running-a-validator.md

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* fix link

* minor revisions

* Update docs/getting-started/live-networks.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix link

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* chore: update cosmos sdk dependency (#580)

* chore: update cosmos sdk dependency

* update cosmos-sdk dependency in all nested modules

* v2.0.0-rc2 Changelog

* Apply suggestions from code review

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* chore: backport go 1.17 update (#587)

* chore: bump go to v1.17 (#582)

* changelog update - linting the v2.0.0-rc2 section

* add changelog rc3 section

* format changelog markdown

* v2.0.0-rc4 changelog & master merge (#593)

* feat: add simulations for update credit class messages (#559)

* feat: add weighted operations for update credit class msgs

* chore: fix typo

* chore: address review changes

* feat(tests): add `x/ecocredit` gRPC REST tests (#544)

* feat: WIP add grpc rest tests

* wip

* WIP adding tests

* add query tests

* fix failing test

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* update query batches endpoint

* Update x/ecocredit/client/testsuite/grpc.go

* run make proto-swagger-gen

* chore: fix errors

* fix failing tests

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* feat: Script for starting a local Regen test node, based on the tutorial (#538)

* added script to create a test node based on the tutorial instructions

* Apply suggestions from code review

I'm going to make one more change after this commit.

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* run the uname command once and assign to variable

* using bash shell rather than sh

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* docs: ecocredit client spec (#557)

* docs: ecocredit client spec

* add update commands

* address review comment

* Update x/ecocredit/spec/05_client.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix: ORM IndexKeyCodec (#475) (#525)

* WIP Max255DynamicLengthIndexKeyCodec

* Add PrefixSearchableKey and get all tests working

* WIP changes to IndexKeyCodec

* wip on key codec

* Fix some tests

* Fix remaining tests

* Rm uint64_index

* Clean up and add more tests

* Update x/group and x/ecocredit

* Verify index key type

* Address some review comments

* Fix docs

* Add docs about NewIndex

Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* docs: update regen test networks (#561)

* docs: update regen test networks

* docs: update regen test networks

* Update docs/getting-started/running-a-validator.md

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* fix link

* minor revisions

* Update docs/getting-started/live-networks.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix link

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* chore: update cosmos sdk dependency (#580)

* chore: update cosmos sdk dependency

* update cosmos-sdk dependency in all nested modules

* chore: bump go to v1.17 (#582)

* docs: ecocredit acceptance tests (#550)

* docs: ecocredit acceptance tests
* address review comments

* fix: manually set credit class fee (#591)

* fix: fix error msg (#592)

* fix error msg

* updated change log

* fix account issue

* fix test

* update changelog

* add test

* fix test

* Update CHANGELOG.md

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>

* fix: allow from flag to accept key-name (#599) (#601)

* fix: allow from flag to accept key-name

* bump: go version in github actions

* fix: fix test

(cherry picked from commit b4d3a2a)

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>

* update dependencies for ecocredit v1.0.0

* update dependencies for group v1.0.0-beta1

* chore: v2.0.0 Changelog consolidation & submodule version publishing (#606)

* add submodule versions to root go.mod for v2.0.0

* consolidate changelog for v2.0.0

* Update CHANGELOG.md

Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* chore: update ibc-go to v2.0.0 (#652) (#658)

(cherry picked from commit 78051dc)

# Conflicts:
#	go.sum

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix: update go module for regen-ledger to v2 (backport #644) (#657)

* fix: update go module for regen-ledger to v2 (#644)

* fix: update go module for regen-ledger to v2

* go fmt

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
(cherry picked from commit 6c455ec)

# Conflicts:
#	app/regen/cmd/testnet.go

* fix conflicts

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: ryanchristo <12519942+ryanchristo@users.noreply.github.com>

* fix: add ibc migration (#654)

* fix: set v2.1.0 upgrade height, update changelog + release notes (#659)

* update upgrade height for v2.1.0

* add changelog & release notes

* Apply suggestions from code review

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix: update swagger-gen to include ibc-go swagger docs (backport #666) (#685)

* fix: update swagger-gen to include ibc-go swagger docs (#666)

* chore: Changelog + Release Notes for v2.0.0-rc1 (#565)

* chore: update changelog & add release notes

* Apply suggestions from code review

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* Update RELEASE_NOTES.md

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* chore: changelog update and merging master (#581)

* feat: add simulations for update credit class messages (#559)

* feat: add weighted operations for update credit class msgs

* chore: fix typo

* chore: address review changes

* feat(tests): add `x/ecocredit` gRPC REST tests (#544)

* feat: WIP add grpc rest tests

* wip

* WIP adding tests

* add query tests

* fix failing test

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* update query batches endpoint

* Update x/ecocredit/client/testsuite/grpc.go

* run make proto-swagger-gen

* chore: fix errors

* fix failing tests

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* feat: Script for starting a local Regen test node, based on the tutorial (#538)

* added script to create a test node based on the tutorial instructions

* Apply suggestions from code review

I'm going to make one more change after this commit.

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* run the uname command once and assign to variable

* using bash shell rather than sh

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* docs: ecocredit client spec (#557)

* docs: ecocredit client spec

* add update commands

* address review comment

* Update x/ecocredit/spec/05_client.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix: ORM IndexKeyCodec (#475) (#525)

* WIP Max255DynamicLengthIndexKeyCodec

* Add PrefixSearchableKey and get all tests working

* WIP changes to IndexKeyCodec

* wip on key codec

* Fix some tests

* Fix remaining tests

* Rm uint64_index

* Clean up and add more tests

* Update x/group and x/ecocredit

* Verify index key type

* Address some review comments

* Fix docs

* Add docs about NewIndex

Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* docs: update regen test networks (#561)

* docs: update regen test networks

* docs: update regen test networks

* Update docs/getting-started/running-a-validator.md

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* fix link

* minor revisions

* Update docs/getting-started/live-networks.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix link

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* chore: update cosmos sdk dependency (#580)

* chore: update cosmos sdk dependency

* update cosmos-sdk dependency in all nested modules

* v2.0.0-rc2 Changelog

* Apply suggestions from code review

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* chore: backport go 1.17 update (#587)

* chore: bump go to v1.17 (#582)

* changelog update - linting the v2.0.0-rc2 section

* add changelog rc3 section

* format changelog markdown

* v2.0.0-rc4 changelog & master merge (#593)

* feat: add simulations for update credit class messages (#559)

* feat: add weighted operations for update credit class msgs

* chore: fix typo

* chore: address review changes

* feat(tests): add `x/ecocredit` gRPC REST tests (#544)

* feat: WIP add grpc rest tests

* wip

* WIP adding tests

* add query tests

* fix failing test

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* Update x/ecocredit/client/testsuite/grpc.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* update query batches endpoint

* Update x/ecocredit/client/testsuite/grpc.go

* run make proto-swagger-gen

* chore: fix errors

* fix failing tests

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* feat: Script for starting a local Regen test node, based on the tutorial (#538)

* added script to create a test node based on the tutorial instructions

* Apply suggestions from code review

I'm going to make one more change after this commit.

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* run the uname command once and assign to variable

* using bash shell rather than sh

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* docs: ecocredit client spec (#557)

* docs: ecocredit client spec

* add update commands

* address review comment

* Update x/ecocredit/spec/05_client.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix: ORM IndexKeyCodec (#475) (#525)

* WIP Max255DynamicLengthIndexKeyCodec

* Add PrefixSearchableKey and get all tests working

* WIP changes to IndexKeyCodec

* wip on key codec

* Fix some tests

* Fix remaining tests

* Rm uint64_index

* Clean up and add more tests

* Update x/group and x/ecocredit

* Verify index key type

* Address some review comments

* Fix docs

* Add docs about NewIndex

Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* docs: update regen test networks (#561)

* docs: update regen test networks

* docs: update regen test networks

* Update docs/getting-started/running-a-validator.md

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>

* fix link

* minor revisions

* Update docs/getting-started/live-networks.md

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix link

Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* chore: update cosmos sdk dependency (#580)

* chore: update cosmos sdk dependency

* update cosmos-sdk dependency in all nested modules

* chore: bump go to v1.17 (#582)

* docs: ecocredit acceptance tests (#550)

* docs: ecocredit acceptance tests
* address review comments

* fix: manually set credit class fee (#591)

* fix: fix error msg (#592)

* fix error msg

* updated change log

* fix account issue

* fix test

* update changelog

* add test

* fix test

* Update CHANGELOG.md

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>

* fix: allow from flag to accept key-name (#599) (#601)

* fix: allow from flag to accept key-name

* bump: go version in github actions

* fix: fix test

(cherry picked from commit b4d3a2a)

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>

* update dependencies for ecocredit v1.0.0

* update dependencies for group v1.0.0-beta1

* chore: v2.0.0 Changelog consolidation & submodule version publishing (#606)

* add submodule versions to root go.mod for v2.0.0

* consolidate changelog for v2.0.0

* Update CHANGELOG.md

Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>

* chore: update ibc-go to v2.0.0 (#652) (#658)

(cherry picked from commit 78051dc)

# Conflicts:
#	go.sum

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix: update go module for regen-ledger to v2 (backport #644) (#657)

* fix: update go module for regen-ledger to v2 (#644)

* fix: update go module for regen-ledger to v2

* go fmt

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
(cherry picked from commit 6c455ec)

# Conflicts:
#	app/regen/cmd/testnet.go

* fix conflicts

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: ryanchristo <12519942+ryanchristo@users.noreply.github.com>

* fix: add ibc migration (#654)

* fix: set v2.1.0 upgrade height, update changelog + release notes (#659)

* update upgrade height for v2.1.0

* add changelog & release notes

* Apply suggestions from code review

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* feat: update swagger-gen to include ibc-go docs

* update swagger docs

* chore: merge master

* chore: run go mod tidy

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 9050862)

* chore(build): generate swagger docs

Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: aleem1314 <aleem@vitwit.com>

* feat(x/ecocredit): backport basket codegen (#737)

* baskets proto

* delete state.proto

* generate proto

add fee

* add generated code

* feat(x/ecocredit): minimal baskets ORM + keeper setup (#734)

* fix(x/ecocredit): broken integration tests from BasketCreationFee param (#741)

* feat: backport proto generation (#743)

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>

* feat(x/ecocredit): sdk.Msg impl for MsgPut (#747)

* feat: backport proto generation

* feat: msgput and test

* chore: rename

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>

* feat(x/ecocredit): sdk.Msg for MsgTake (#748)

* feat(x/ecocredit): sdk.Msg for MsgTake

* add tests

* add tests

* address review comments

* feat(basket): implement sdk.Msg and LegacyMsg for MsgCreate (#745)

* docs(x/ecocredit): clarify basket exponent usage to eliminate rounding (backport #752) (#755)

* docs(x/ecocredit): clarify basket exponent usage to eliminate rounding (#752)

(cherry picked from commit 674da96)

# Conflicts:
#	proto/regen/ecocredit/basket/v1/tx.proto

* Update tx.proto

Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* feat(x/ecocredit): add BasketBalance query (#751)

* feat(x/ecocredit): add BasketBalance query

* go mod tidy

* add nil check

* feat: basket window integration (#757)

* copy new version of state.pb.go

* backport basket.date_criteria

* regenerate proto

* gomod

* adding tests

* formatting

* Update x/ecocredit/basket/msg_create.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* formatting

* update go doc comments

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* feat: add basket balance queries (#760)

* feat(x/ecocredit): query baskets (#761)

* feat(x/ecocredit): add Basket query (#753)

* feat(x/ecocredit): add Basket query

* pulsar to proto

* fix test

* Update x/ecocredit/server/basket/query_basket_test.go

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* feat(x/ecocredit): Put basket server method (#758)

* feat: put server method

* feat: test

* wip

* fix: decimal math

* chore: remove dead code

* chore: comment cleanups

* chore: address review

* Update x/ecocredit/server/basket/put.go

Co-authored-by: Aaron Craelius <aaron@regen.network>

* chore: review comments

* feat: assert basket has balance in test

* chore: add balance checks to test

* Update types/math/dec.go

Co-authored-by: Aaron Craelius <aaron@regen.network>

* chore: add addr check

* fix: invariant checks for supplies

* chore: add event emission

* Update types/math/dec.go

Co-authored-by: Aaron Craelius <aaron@regen.network>

* fix: fix tests

* chore: godocs, fix tests, credit type

* chore: class id

* chore: comment, sub module coins

* chore: error shortening

* chore: BasketModuleName -> BasketSubModuleName

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>

* feat(x/ecocredit): implement basket MsgServer.Take (#746)

* feat(x/ecocredit): QueryBasketBalances (#763)

* feat: query balances

* Update x/ecocredit/server/basket/query_balances_test.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix: test

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>

* feat(x/ecocredit): basket query cli cmd (#766)

* feat: add take-from-basket command (#749)

* feat: baskets cli command (#767)

* feat: add add-to-basket cli command (#750)

* feat(x/ecocredit): add create-basket command (#754)

* feat(x/ecocredit): add create-basket command

* feat(x/ecocredit): add create-basket command

* add date criteria

* fix package name

* fee not required

* combine commands and specify seconds

* cleanup

* feat(x/ecocredit): codec and server registration (#765)

* feat(x/ecocredit): codec and server registration

* amino

* feat(x/ecocredit): Msg Create implementation (#762)

* feat: msgserver Create implementation

* add Validate

* adding converton methods

* update create rpc

* build fixes

* updates to Create

* refactor tests

* WIP on Create

* passing tests

* fix tests

* fix app.go

* small refactoring

* adding HasClassInfo

* remove found from assertCreditTypeExists

* review

* c.Name == creditType

* rollback to use Abbreviation for CreditType

* update tests

Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>

* feat(x/ecocredit): basket genesis (#764)

* feat(x/ecocredit): basket genesis

* WIP on tests

* update orm

* go mod tidy

* fix tests

* make json more efficient

* WIP optimizing

* fix test

* fix sims

* docs

* feat: backport basket proto updates (#772)

* backporting proto

* gen proto update

* wip

* update msg_create

* add basket.name checks

* add description check

* chore: update msgs,tests

* fix: cli and test

* fix: put tests/impl

* use ValidateCreditTypeAbbreviation

* add ExponentToPrefix

* compute prefix from exponent

* update denom format

* update prefix

* update tests

* extract denom creation to separate function

* Update x/ecocredit/basket/msg_create.go

Co-authored-by: Aaron Craelius <aaron@regen.network>

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>

* test(x/ecocredit): basket integration test (#771)

* wip

* more wip

* chore: fixup 1 final thing

* fix: oof

* chore: cleanup comments

* chore: add basket submodule to app.go

* chore: fix testss

* wip

* test: add retire test

* chore: comment

* wip: need to fix coin validate stuff

* fix: add and set sdk regex for basket coins

* chore: ecocredit doesnt need minter

* chore: dont need account keeper in suite

* chore: goimport files

* chore: goimport app.go

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>

* feat!: basket name update (#776)

* backport new proto

* remove prefix and add name to the basket state

* udpate tests

* basket denom tests

* adding more tests and update integration tests

* feat: migration handler for v2.2 (#775)

* feat: add upgrade handler for basket fee

* fix: use GetSubspace instead

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Cory <cjlevinson@gmail.com>

* chore: fix create-basket cli (#777)

* chore: fix create-basket cli

* chore: update description

* Update x/ecocredit/client/basket/tx.go

Co-authored-by: Robert Zaremba <robert@zaremba.ch>

Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* feat(types): better tests for math and correct decimal -> integer conversion in x/ecocredit (#783)

* chore(basket): Audit MsgPut (#781)

* Add tests for Put in basket with existing balance

* Use res

* Add dec tests

* Update proto

* feat: split DateCriteria oneof into separate fields (backport #790) (#792)

* Update basket code to account for new DateCriteria

* feat: split DateCriteria oneof into separate fields (#790)

* feat: split DateCriteria oneof into separate fields

* fix: fix messages

* chore: make proto-gen

* fix: unused imports

* Update types.proto

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* go mod tidy

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* feat: handling ecocredits/basket web grpc (#789)

* register web grpc handlers

* update ecocredits consensus version to 2

* move ecocredit param fee setting to the module migration handler

* add gas for loop iterations

* Update x/ecocredit/module/module.go

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix build

Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>

* fix(x/ecocredit): InitGenesis and MigrationHandler (#784)

* feat: remove

* chore: add errMsg

* go mod tidy

* go mod tidy all

* fix: add dist keeper

* fix: init genesis

* chore: remove prints

* feat: add go mod tidy script and makefile

* fix: add register migration method

* chore: remove uesless iface embed

* revert: use embedded configurator

* chore: remove migrationmap

* chore: tidy

Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>

* feat: add basket invariants (#787)

* udpate comments

* basket invarinats

* fix build

* fix configurator initialization

* normalize coins

* update mocks

* adding unit tests to basket invariants

* chore(basket): Audit MsgTake (#780)

* chore(basket): Audit MsgTake

* Add comment

* Add test

* Update x/ecocredit/server/basket/take_test.go

Co-authored-by: Robert Zaremba <robert@zaremba.ch>

Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* chore: audit changes (#782)

* chore: audit changes

* review changes

* docs

* docs

* Update x/ecocredit/denom.go

Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>

* review changes

* fix tests

* fix CLI and rollback DateCriteria changes

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>

* docs: generate swagger docs (#797)

* build: generate swagger docs

* Update client/docs/config.json

* feat!: basket events update (#794)

* events: backport \#778

* generage ecocredit/events code

* set EventReceive.BasketDenom in basket/MsgTake

* Update proto/regen/ecocredit/v1alpha1/events.proto

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* feat(x/ecocredit): add basket simulations (#769)

* wip: add simulations

* feat: implement simulate msg-create-basket

* feat: add put into basket sim

* wip: sims

* wip: try fix sims

* feat: add msg-take

* chore: cleanup

* chore: inc basket sims gas

* add logs

* fix error

* add basket fee check

* try fix sims

* convert basket decimal to integer using string

* cleanup

* update app/app.go

* fix random amt issue

* fix sim error

* chore: create helpers

* add date criteria

* fix supply invariant

* chore: review changes

Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: ryanchristo <12519942+ryanchristo@users.noreply.github.com>

* docs: v3.0.0 release notes (#798)

* docs: v3.0.0 release notes

* update changelog

* update order

* add credit type

* chore: v3 version bump (#799)

* fix: ecocredit module migration (#805)

* feat: move ecocredit migration back to the upgrade handler

* Update app/stable_appconfig.go

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix: event receive attributes (#809)

* fix: EventReceive for Msg/CreateBatch

* cleanup Makefile

* bump golangci-lint action

* feat(x/ecocredit): add classes to basket query response (#803)

* wip

* feat(x/ecocredit): add classes to basket query response

* Update x/ecocredit/server/basket/query_basket.go

Co-authored-by: Aaron Craelius <aaron@regen.network>

* add unit test

* update api version

* update api version

* fix: proto-gen

* chore: tidy

Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>

* chore: changelog updates for v3.0 final (#811)

* chore: changelog updates for 3.0.0 final

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Cory <cjlevinson@gmail.com>

* add date for 3.0

Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com>

* fix build and tests

* chore: make proto-gen

* remove unused patch file

Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: MD Aleem <72057206+aleem1314@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: John Kemp <frumioj@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Ru Horlick <ruperthorlick@gmail.com>
Co-authored-by: likhita-809 <78951027+likhita-809@users.noreply.github.com>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: aleem1314 <aleem@vitwit.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants