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

1.0.0 Feature Freeze #291

Closed
joshuakarp opened this issue Nov 16, 2021 · 10 comments
Closed

1.0.0 Feature Freeze #291

joshuakarp opened this issue Nov 16, 2021 · 10 comments
Assignees
Labels
enhancement New feature or request epic Big issue with multiple subissues

Comments

@joshuakarp
Copy link
Contributor

joshuakarp commented Nov 16, 2021

After the testnet deployment, the next stage of development with Polykey should be focusing on tying up the loose ends, such that we can perform our initial release!

We shouldn't be focusing on introducing new features (hence, "feature freeze"), and instead be looking at making the current state of Polykey as robust as possible.

Using this epic primarily as a means of categorising issues that should be a part of this enhancement process.

Template and description TBD

@joshuakarp joshuakarp added enhancement New feature or request epic Big issue with multiple subissues labels Nov 16, 2021
@CMCDragonkai
Copy link
Member

Should this #268 be before or after this gets done? I reckon we should release for test usage, and use this epic to organise everything that needs to be done for a 1.0 release.

@joshuakarp
Copy link
Contributor Author

I reckon we should release for test usage, and use this epic to organise everything that needs to be done for a 1.0 release.

This seems reasonable to me. I'd actually forgotten that we had #268. In that case, perhaps these should all be moved to #268? I was moreso treating this epic as just an interim container for all of the issues that I view as being important to finish up before an initial release, so this can be organised in another way if preferred..

@CMCDragonkai
Copy link
Member

I think this issue can be made into a release version issue. Like Release 11.0 or something. That makes it a feature freeze, and then work out all the final problems/optmisations/bugfixing/code quality issues.

@CMCDragonkai
Copy link
Member

CMCDragonkai commented Nov 18, 2021

Some KeyManager quick fixes:

  1. Don't need to read from the file when you are always just changing the keys, as it is expected nobody else can swap them around, use the in-memory key which should only be this._dbKey
  2. Should be using locks to lock the operations on the key renewal, right now race conditions can occur in the side effects there.
  3. Proper documentation on where subkeys are supposed to be located and managed by who like vault key, db key and session manager key.

@CMCDragonkai
Copy link
Member

The error in:

class ErrorClientInvalidNode extends ErrorClient {
  exitCode: number = 70;
}

requires a proper review. It seems weird. Should this really be in client/errors.ts?

@CMCDragonkai
Copy link
Member

I noticed that some exceptions are Missing and some are NotFound. So far no Required.

We should standardise on which suffix we use to mean these things.

@joshuakarp joshuakarp changed the title Tying up the loose ends 1.0.0 Feature Freeze Nov 19, 2021
@CMCDragonkai
Copy link
Member

All uses of fail should be replaced with expectations. Details here: https://gitlab.com/MatrixAI/Engineering/Polykey/js-polykey/-/merge_requests/213#note_742208447

@CMCDragonkai
Copy link
Member

Should replace all use of poll in our tests/utils.ts with src/utils.ts. Any timeout usage should be done with timerStart and timerStop.

@joshuakarp
Copy link
Contributor Author

Some very rough time estimates for the current state of this epic. Time estimates include planning, research, development, review and testing times:

@CMCDragonkai CMCDragonkai self-assigned this Feb 18, 2022
@CMCDragonkai
Copy link
Member

Mostly all done. We're going to do a testnet deployment in a couple days. Closing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request epic Big issue with multiple subissues
Development

No branches or pull requests

2 participants