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

Roadmap updates #3119

Merged
merged 8 commits into from
Jun 16, 2023
Merged

Roadmap updates #3119

merged 8 commits into from
Jun 16, 2023

Conversation

codebien
Copy link
Contributor

@codebien codebien commented Jun 12, 2023

The current Roadmap is out of date after just one cycle, so we decided it was more convenient to have it as an interactive GitHub project.

@codebien codebien self-assigned this Jun 12, 2023
@github-actions github-actions bot requested review from imiric and olegbespalov June 12, 2023 09:40
@codebien codebien mentioned this pull request Jun 12, 2023
@codecov-commenter
Copy link

codecov-commenter commented Jun 12, 2023

Codecov Report

Merging #3119 (211ce4f) into master (9254ce7) will increase coverage by 0.05%.
The diff coverage is 89.47%.

❗ Current head 211ce4f differs from pull request most recent head 28c7603. Consider uploading reports for the commit 28c7603 to get more accurate results

@@            Coverage Diff             @@
##           master    #3119      +/-   ##
==========================================
+ Coverage   73.80%   73.85%   +0.05%     
==========================================
  Files         243      243              
  Lines       18474    18492      +18     
==========================================
+ Hits        13634    13658      +24     
+ Misses       3969     3965       -4     
+ Partials      871      869       -2     
Flag Coverage Δ
ubuntu 73.79% <89.47%> (+0.06%) ⬆️
windows 73.69% <89.47%> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
output/cloud/output.go 74.14% <33.33%> (ø)
output/cloud/expv2/metrics_client.go 55.55% <80.00%> (-2.45%) ⬇️
output/cloud/expv2/output.go 86.84% <95.12%> (+2.50%) ⬆️
cloudapi/client.go 73.46% <100.00%> (+1.30%) ⬆️
output/cloud/expv2/flush.go 84.61% <100.00%> (ø)

... and 1 file with indirect coverage changes

olegbespalov
olegbespalov previously approved these changes Jun 12, 2023
Copy link
Contributor

@olegbespalov olegbespalov left a comment

Choose a reason for hiding this comment

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

Looks good to me 👍 Thanks for taking care of it 🙇

However, it's probably worth requesting a review from @dgzlopes @markjmeier

@codebien codebien requested a review from andrewslotin June 12, 2023 12:05
@codebien
Copy link
Contributor Author

codebien commented Jun 12, 2023

However, it's probably worth requesting a review from @dgzlopes @markjmeier

Before pinging them directly, I think @andrewslotin knows if it is aligned with their vision, asking for a review.

ROADMAP.md Outdated

*see*: [#2974](https://github.com/grafana/k6/issues/2974)

### HTTP API redesign
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@imiric Having it as one of the next short-term is it realistic for you?

Copy link
Contributor

Choose a reason for hiding this comment

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

Definitely not 😅

While we'll be delivering it in phases, making it actually usable as an improvement over the current HTTP API will take a few development cycles.

So I would leave it as a long-term project, as we still don't have a clear timeline of when it will actually be delivered.

ROADMAP.md Outdated
@@ -6,21 +6,37 @@ This roadmap covers user-oriented features, UX improvements, JavaScript support,

We hope this updated roadmap provides a clear overview of our plans for k6's future development. As always, we welcome feedback, corrections, and suggestions to make this roadmap more comprehensive, accessible, and valuable for the k6 community.

## Short-term goals
## Recently completed
Copy link
Contributor

Choose a reason for hiding this comment

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

One thing in my mind is to maybe not switch the title from Short-term goals to Recently completed because we released the modules as experimental. Maybe the goal itself is changed a bit. E.g. for the GRPC extension the next milestone is extension stabilization and merging it back to the core.

Also, we have no listed here, but maybe we should share here some plans about merging to core other experimental extensions that we have, like the xk6-timers and xk6-websockets.

WDYT?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Maybe the goal itself is changed a bit. E.g. for the GRPC extension the next milestone is extension stabilization and merging it back to the core.

Also, we have no listed here, but maybe we should share here some plans about merging to core other experimental extensions that we have, like the xk6-timers and xk6-websockets.

I would avoid it because I don't think they are short-term so having them make this roadmap unrealistic. Based on our historical data they seem to be mid/long term. I would prefer setting the fact we provided a solution to the main problem as delivered, otherwise, most of the items here will be stuck because they are huge features that never will be implemented in one step (and they could require over years improvements).

Copy link
Contributor

Choose a reason for hiding this comment

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

I would prefer setting the fact we provided a solution to the main problem as delivered, otherwise, most of the items here will be stuck because they are huge features that never will be implemented in one step (and they could require over years improvements).

Yeah, but that fact is recorded in the release notes, right? The roadmap always will contain something just because it's a roadmap. It's our plan.

Just in case, I'm not saying that these (webcrypto and GRPC) modules should remain in the short-term goals, but I'm trying to say that they should be presented somehow in our roadmap. Otherwise, at some point, they could look abandoned. 😢

Copy link
Contributor

Choose a reason for hiding this comment

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

I partly agree with Oleg. The roadmap is not the place to list anything that already happened. It's by definition a plan of what will happen in the future. If some goals were completed and shipped, they should just be removed from the roadmap, and new items should take their place.

@olegbespalov They wouldn't look abandoned, just done. As you say, users would be aware of them from our release notes, documentation, etc.

So I vote against changing the title of this section, and for removing the gRPC streaming support and WebCrypto projects. Even if there are still some things to iron out in both, they're probably not worth mentioning here.

Copy link
Contributor

Choose a reason for hiding this comment

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

They wouldn't look abandoned, just done. As you say, users would be aware of them from our release notes, documentation, etc.

That's the point they aren't just done while they are prefixed as k6/experimental/. They are somewhere in their lifecycle (hopefully in the middle), so only if they become just a k6/ or removed could they be considered done.

Copy link
Contributor

Choose a reason for hiding this comment

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

However, I believe that we should close the #2020 and open a new one about making the k6/experimental/grpc stable. And that new task could be presented in a roadmap in mid/long term.

Copy link
Contributor

Choose a reason for hiding this comment

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

I guess this boils down to the "definition of done", but I see it as the feature being ready to use, i.e. generally available. Experimental modules are subject to change, but they're still considered stable and usable.

The support for gRPC streaming and WebCrypto is "done" in that sense, and we can track the minor leftover changes outside of the roadmap. As we discussed on Slack, we don't need to mention minor tasks on the roadmap.

👍 for closing #2020.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The support for gRPC streaming and WebCrypto is "done" in that sense

I also second this idea. The main issue is to us providing a solution to the problem. The experimental lifecycle should be tracked separately and I see it as a minor issue from the User's point of view (I judge it as minor based on the fact no one opened an issue for asking us to push out a specific module from the experimental phase).

Replace the static text with an interactive GitHub project.
@codebien
Copy link
Contributor Author

I replaced the static text with the link to the new GitHub project.

@codebien
Copy link
Contributor Author

I think it's a bit difficult to discover the ROADMAP.md file or the project itself. Should we add a link from the README too?

@olegbespalov
Copy link
Contributor

olegbespalov commented Jun 15, 2023

I think it's a bit difficult to discover the ROADMAP.md file or the project itself. Should we add a link from the README too?

I believe we should add a link to the ROADMAP from the readme.

One minor thing (and I'm not solid on that), keep in mind the current content of the ROADMAP.MD, maybe it could be summarized as a few sentences and turned into the section in README.md where it is more discoverable and has fewer jumps for our customers.

olegbespalov
olegbespalov previously approved these changes Jun 15, 2023
@imiric
Copy link
Contributor

imiric commented Jun 15, 2023

I think it's a bit difficult to discover the ROADMAP.md file or the project itself. Should we add a link from the README too?

I would drop the ROADMAP.md file entirely, and just have a link in the README to the GH board, now that we have one. We don't need a separate document, or a link to that document that then links to the board itself.

@olegbespalov
Copy link
Contributor

olegbespalov commented Jun 16, 2023

I still prefer a few more sentences that give some context to the roadmap instead of just linking to the board. For example, this one:

Remember that timeframes and priorities may shift, but we believe it's important to share our vision and allow users to plan accordingly.

from the ROADMAP.md, I believe it is essential to have, simply because of transparency.

So haven't something like:

Our team is dedicated to continuously improving k6 and providing the best user experience possible. The roadmap covers user-oriented features, UX improvements, JavaScript support, and k6 internals that our team will focus on. Remember that timeframes and priorities may shift, but we believe it's important to share our vision and allow users to plan accordingly.

We hope the roadmap provides a clear overview of our plans for k6's future development. As always, we welcome feedback, corrections, and suggestions to make this roadmap more comprehensive, accessible, and valuable for the k6 community.

as a section doesn't harm our README

UPD: As discussed internally added a suggestion via commit 3a6da9f

@codebien codebien requested a review from olegbespalov June 16, 2023 08:22
imiric
imiric previously approved these changes Jun 16, 2023
README.md Outdated Show resolved Hide resolved
olegbespalov
olegbespalov previously approved these changes Jun 16, 2023
@codebien codebien requested a review from imiric June 16, 2023 09:04
Copy link
Contributor

@olegbespalov olegbespalov left a comment

Choose a reason for hiding this comment

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

Looks great! 👍 Thanks for taking care here & creating a GH project with Roadmap 🙇

@codebien codebien merged commit 9e48c38 into master Jun 16, 2023
@codebien codebien deleted the update-roadmap branch June 16, 2023 09:38
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