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

p5.js 2.0 Updates #7261

Open
Qianqianye opened this issue Sep 11, 2024 · 2 comments
Open

p5.js 2.0 Updates #7261

Qianqianye opened this issue Sep 11, 2024 · 2 comments

Comments

@Qianqianye
Copy link
Contributor

Qianqianye commented Sep 11, 2024

Topic

Hi!

Earlier this year, we initiated the p5.js 2.0 RFC (Request for Comment) process to collectively re-envision the next major release of p5.js with the community, with a strong focus on our core value of access. We want to extend our gratitude for your participation—over 60 p5.js 2.0 proposals were opened and discussed. You can find all 2.0 proposals under the label ‘p5.js 2.0’. We’re excited to share some updates with you.

We’ve organized all the proposals into a p5.js 2.0 GitHub project, categorized by priority, project size, and phases. Proposals in Phase 1 are planned to be completed by the end of October, while Phase 2 proposals have a tentative completion timeframe around the end of 2024.

Governance Model and Decision-Making Process

To ensure collective decision-making on which proposals to implement, the p5.js 2.0 project follows this governance model and decision-making process, which includes three components:

  1. p5.js 2.0 Core Committee: Responsible for organizing proposals, making initial approval/decline decisions, prioritizing, and assessing project size and phases.
    Qianqian Ye, @Qianqianye: p5.js lead
    Kenneth Lim, @limzykenneth: p5.js mentor
    Dave Pagurek, @davepagurek: p5.js contributor and maintainer

  2. p5.js 2.0 Advisory Committee: Responsible for making final approval/decline decisions on proposals.
    Lauren Lee McCarthy, @lmccart: p5.js creator
    Nat Decker, @natdecker: p5.js accessibility consultant
    cypress masso, @outofambit: 2019 p5.js fellow
    Stalgia Grigg, @stalgiag: 2019 p5.js fellow
    Daniel Shiffman, @shiffman: p5.js educator

  3. Community Input: Solicit comments on implementation details or potential implementers.
    For any proposal accepted for implementation by both the core and advisory committees, its status will be updated to ‘Implementation’ on the p5.js 2.0 GitHub project, categorized by high, medium, or low priority. Proposals not selected for implementation for now will be labeled as ‘Out of Scope’ or 'No Priority' and will not move forward to the next phase, but we are open to implement them in the near future. The broader community is encouraged to leave comments on accepted proposals, and these will be considered during implementation. However, the decision on the proposal itself will not change at this stage. The goal is to clarify the implementation approach and identify potential implementers. We are committed to work with a group of implementers that reflect the diversity of the p5.js community.

What's Next?

Several p5.js 2.0 proposals are already in progress or almost completed, such as the Functional core and modular build, Async/Await setup(), Typography module revamp, and others. Please see the latest updates in the dev-2.0 branch. We will continue to update the p5.js 2.0 GitHub project and the dev-2.0 branch as we move forward and will share updates with the community. Please feel free to leave comments in this issue if you have any questions about p5.js 2.0 process and proposals.

Our current priority is the p5.js 2.0 issues and PRs, so it might take us a bit longer to review other issues and PRs. However, we will get to them eventually! We appreciate your patience in the meantime.

Thank you!

@ejgutierrez74
Copy link

Hi, im a teacher of vocational education and im using p5 1.11.1, but the course using p5.js would begin after holiday of christmas ( about 10th Janurary). Is there any ETA to release 2.0 ? The core code would be the same or backwards compatible ?

Thanks because ive to prepare classes, so would be great some kind of webeditor with 2.0 RC or the current dev-2.0 branch...just to make some tests and see evolution.

When 2.0 would be released would the documentation be updated?

Thanks

@limzykenneth
Copy link
Member

limzykenneth commented Nov 21, 2024

Hi @ejgutierrez74, we don't want to give a concrete release date just yet as we are still working through many aspects of 2.0 at the moment. A very rough time frame we are aiming for is the first quarter of 2025 but if some delay occurs it can be later.

Most things will be backwards compatible, I expect the majority of simple to moderately complex sketches will work out of the box, with probably the most notable non-compatible feature being the loading functions no longer using preload() and will be promise based. You can have a look at the proposals for a sense of what may be changing. We will probably also release a migration guide for transitioning from 1.x to 2.0 but at the same time there will likely be a relatively short period of bug fixes for 1.x so you can continue using 1.x even after 2.0 has released.

Some stuff are still not stable in the dev-2.0 branch so I won't want to prepare an RC just yet to avoid people trying it out expecting something that may change later. You can build from dev-2.0 or use npm run dev/npm run dev:global to test the current state if you wish.

The documentation will be updated with the release of 2.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

3 participants