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

Write ADR for IBC testing package++ #1265

Closed
3 tasks done
colin-axner opened this issue Apr 14, 2022 · 3 comments
Closed
3 tasks done

Write ADR for IBC testing package++ #1265

colin-axner opened this issue Apr 14, 2022 · 3 comments
Assignees
Labels
testing Testing package and unit/integration tests

Comments

@colin-axner
Copy link
Contributor

colin-axner commented Apr 14, 2022

Summary

The testing package is heavily used by our code base as well as by external IBC applications. It has undergone significant refactors thanks to external feedback along with our own usage. Updating to ABCI++ will require another refactor due to the current block execution structure being incompatible.

The testing package is simultaneously robust and fragile. Many design decisions have been made due to subtle understandings of tendermint and the SDK. These design choices should be documented so we can easier reason about potential changes in the future. Discussion on this ADR will also give us space as a community to discuss the potential improvments/requirements.

Problem Definition

The testing package has accrued a long history and will break with ABCI++. The current and future design decisions should be clearly documented.

This problem needs to be addressed

Proposal

Write an ADR outlining the context of the testing package, its history, and the future changes required for it to align with ABCI++


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned
@colin-axner colin-axner added the testing Testing package and unit/integration tests label Apr 14, 2022
@colin-axner colin-axner self-assigned this Apr 14, 2022
@crodriguezvega crodriguezvega moved this to Backlog in ibc-go Apr 14, 2022
@crodriguezvega crodriguezvega moved this from Backlog to Todo in ibc-go May 1, 2022
@crodriguezvega crodriguezvega added this to the Q3-2022-backlog milestone Jul 8, 2022
@crodriguezvega crodriguezvega moved this from Todo to Backlog in ibc-go Jul 8, 2022
@crodriguezvega crodriguezvega moved this from Backlog to Todo in ibc-go Sep 22, 2022
@crodriguezvega crodriguezvega removed this from the SDK v0.47.x upgrade milestone Oct 3, 2022
@crodriguezvega crodriguezvega moved this to Backlog in ibc-go Nov 1, 2022
@colin-axner
Copy link
Contributor Author

There are now a serious of proposed changes in the Testing package improvements milestone. Maybe we could at least add an ADR documenting all the changes made

The abci++ changes initially are less substantial than I anticipated and has mostly lead to clean up in the testing pkg

@DimitrisJim
Copy link
Contributor

+1 for ADR.

Since testing is a package other people use, it might be sensible to loop them in here. One way this is done is via RFCs whereby interested parties can contribute to the discussion. RFC fleshes out the initial details and creates consensus around some specific architectural decision while the ADR will document that final decision.

I am unsure if it is entirely warranted, it might be overkill and not something the team wishes to go through. In general I'd find it beneficial to introduce this separation as I do think having a process that would likely make other voices heard could be beneficial.

CosmosCar pushed a commit to caelus-labs/ibc-go that referenced this issue Nov 6, 2023
<!--
Please read and fill out this form before submitting your PR.

Please make sure you have reviewed our contributors guide before
submitting your
first PR.
-->

## Overview

<!-- 
Please provide an explanation of the PR, including the appropriate
context,
background, goal, and rationale. If there is an issue with this
information,
please provide a tl;dr and link the issue. 
-->

## Checklist

<!-- 
Please complete the checklist to ensure that the PR is ready to be
reviewed.

IMPORTANT:
PRs should be left in Draft until the below checklist is completed.
-->

- [x] New and updated code has appropriate documentation
- [ ] New and updated code has new and/or updated testing
- [ ] Required CI checks are passing
- [ ] Visual proof for any user facing features like CLI or
documentation updates
- [ ] Linked issues closed with keywords


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

### Summary by CodeRabbit

- Documentation: Enhanced the description of the `Store` interface,
providing a clearer understanding of its methods and their purposes.
This update offers a deeper insight into the key-value store
implementation and the data type prefixes used, making it easier for
users to navigate and understand the system's data management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
@colin-axner
Copy link
Contributor Author

Gonna close this issue, as I don't think it makes much sense to dedicate effort to it. Would be nice, but the testing package isn't so complicated

@github-project-automation github-project-automation bot moved this from Backlog 🕐 to Done 🥳 in ibc-go Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
testing Testing package and unit/integration tests
Projects
Status: Done 🥳
Development

No branches or pull requests

3 participants