Recommended strategy for active development re versions?

#1

Hi, @ryanchristo. I would appreciate an update on your recommended strategy for stress free active development with colony. :slight_smile:

I am running into issues like this one that are affecting my development: https://github.com/JoinColony/colonyJS/issues/338

I just spent an hour trying to figure out why my token symbol and name were not getting set and then came across this.

This is only on the development branch, but is really a hotfix because it is a bug in the current colonyStarter, etc.

You recommended I keep my colony packages up to date, but I am not sure if that includes beta releases. My uncertainty is compounded by the fact that you commented that I am not supposed to update ethers to the latest version, as that breaks the colony ethers adapter.

I know that the state of colonyJS and the colonyNetwork are closely linked, so I am also careful for that reason.

Can you recommend if I should upgrade to the beta versions of colonyJS as they come out? Will they break with the current colonyNetwork available in the latest colony cli beta version?

When is the release of the new major version planned that you have mentioned and how will that affect this situation?

I am excited about Colony, but the level of “bleeding edge” I am running into is frustrating. I know your team is working hard, but I hope to find a way where I can development for 6 months on a particular set of versions and then upgrade smoothly to the latest version following the notes on breaking changes provided in the release notes. Or if there were an upgrade tool available to migrate between versions that addressed breaking changes that would be even better. :slight_smile:

Thank you.

1 Like
#2

We did some beta releases for use in the dApp. My recommendation still stands that you should keep the colony packages in your project up-to-date but, I should clarify, up-to-date with stable releases. Unless of course you are contributing to the project or you would like to help beta test new packages but the latest stable releases are your best bet for stress free (or less stressful) development.

We tagged these releases as beta releases and intentionally did not include a changelog because they are beta releases - releases that may still contain bugs, therefore, they are not yet stable. You can see the changelog for what will be the next stable release in the develop branch. Whenever we publish a stable release, we merge the develop branch into the master branch, which will publish updated documentation.

When is the release of the new major version planned that you have mentioned and how will that affect this situation?

We deployed the latest version of the colonyNetwork contracts to Goerli test network last week. We are testing the colonyJS beta packages and updating the documentation this week. The next stable colonyJS release should be available by the end of the week. This will not be the major version (colonyJS 2.0) mentioned in the past but it will be a stable version that works with the latest colonyNetwork contracts deployed to Goerli.

I hope to find a way where I can development for 6 months on a particular set of versions and then upgrade smoothly to the latest version following the notes on breaking changes provided in the release notes.

Once the colonyNetwork contracts are deployed to mainnet, there will be a stable version of colonyJS that works with that version of the colonyNetwork contracts. My recommendation to stay up-to-date with the latest colonyJS packages is to ensure that your project can use the colonyNetwork contracts that will be deployed to mainnet.

If you decide that the version of the colonyNetwork contracts initially deployed to mainnet suites your needs, then there is no reason to concern yourself with updating to the latest versions every time a new version is released.