From 5c0da0127ad0f57705099595dc2fa5a121ff1b8e Mon Sep 17 00:00:00 2001 From: Andrew McWhae Date: Fri, 13 Dec 2024 00:03:10 -0700 Subject: [PATCH 01/61] Fixed loop variable in createFileInput() docs (dom.js) --- src/dom/dom.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dom/dom.js b/src/dom/dom.js index 2f04be1ef2..d35fbc4ea3 100644 --- a/src/dom/dom.js +++ b/src/dom/dom.js @@ -2023,7 +2023,7 @@ p5.prototype.createInput = function (value = '', type = 'text') { * let y = i * 20; * * // Draw the image. - * image(img, 0, y, 100, 100); + * image(images[i], 0, y, 100, 100); * } * * describe('A gray square with a file input beneath it. If the user selects multiple image files to load, they are displayed on the square.'); From bba9ed737f39458892c865cb5dde434af5c3025e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 15 Feb 2025 08:58:36 +0000 Subject: [PATCH 02/61] Bump serialize-javascript and mocha Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) to 6.0.2 and updates ancestor dependency [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together. Updates `serialize-javascript` from 6.0.0 to 6.0.2 - [Release notes](https://github.com/yahoo/serialize-javascript/releases) - [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.0...v6.0.2) Updates `mocha` from 10.2.0 to 10.8.2 - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v10.2.0...v10.8.2) --- updated-dependencies: - dependency-name: serialize-javascript dependency-type: indirect - dependency-name: mocha dependency-type: direct:development ... Signed-off-by: dependabot[bot] --- package-lock.json | 169 ++++++++++++++++++++-------------------------- 1 file changed, 72 insertions(+), 97 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7040c18256..c938cfe98c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2590,10 +2590,11 @@ } }, "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -5236,10 +5237,11 @@ "dev": true }, "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -11098,32 +11100,32 @@ "dev": true }, "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" }, "bin": { "_mocha": "bin/_mocha", @@ -11131,10 +11133,6 @@ }, "engines": { "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" } }, "node_modules/mocha/node_modules/ansi-regex": { @@ -11167,6 +11165,16 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/mocha/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -11219,12 +11227,13 @@ } }, "node_modules/mocha/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -11235,12 +11244,6 @@ } } }, - "node_modules/mocha/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/mocha/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -11276,37 +11279,26 @@ } }, "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": "*" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/mocha/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11369,10 +11361,11 @@ } }, "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -11380,15 +11373,6 @@ "node": ">=10" } }, - "node_modules/mocha/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/mocha/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -11523,10 +11507,11 @@ } }, "node_modules/mocha/node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -11597,18 +11582,6 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -15807,10 +15780,11 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" } @@ -17536,10 +17510,11 @@ } }, "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "dev": true, + "license": "Apache-2.0" }, "node_modules/wrap-ansi": { "version": "6.2.0", From 6195f88d34c3f016c32b1bc9fe0d4e3c1a58a727 Mon Sep 17 00:00:00 2001 From: Ben Gilbert Date: Mon, 26 May 2025 00:26:18 +0100 Subject: [PATCH 03/61] Remove second call of _updateWindowSize() https://github.com/processing/p5.js/commit/173e09552c698cb2ec5e107d42280edfc9c75995 in https://github.com/processing/p5.js/pull/7785 accidently added a second call to `this._updateWindowSize();` --- src/core/main.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/core/main.js b/src/core/main.js index 4e9684dc80..b58f4de936 100644 --- a/src/core/main.js +++ b/src/core/main.js @@ -657,9 +657,6 @@ class p5 { } }; - // ensure correct reporting of window dimensions - this._updateWindowSize(); - const friendlyBindGlobal = this._createFriendlyGlobalFunctionBinder(); // If the user has created a global setup or draw function, @@ -699,6 +696,7 @@ class p5 { p5._checkForUserDefinedFunctions(this); } + // ensure correct reporting of window dimensions this._updateWindowSize(); // call any registered init functions From d7797caae4bdfaf367266c77e5d1c69f44979a70 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 3 Jun 2025 11:34:41 +0200 Subject: [PATCH 04/61] Add stewards list and updating action --- .github/workflows/stewards-update.yml | 33 +++++++++++++++++ stewards.yml | 53 +++++++++++++++++++++++++++ utils/stewards-table.js | 53 +++++++++++++++++++++++++++ 3 files changed, 139 insertions(+) create mode 100644 .github/workflows/stewards-update.yml create mode 100644 stewards.yml create mode 100644 utils/stewards-table.js diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml new file mode 100644 index 0000000000..ed6ad9668f --- /dev/null +++ b/.github/workflows/stewards-update.yml @@ -0,0 +1,33 @@ +name: Update Steward Table in README + +on: + push: + branches: [main] + paths: + - stewards.yml + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install dependencies + run: npm install js-yaml + + - name: Run table generator + run: node utils/stewards-table.js + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v5 + with: + commit-message: "Update README table from stewards.yml" + branch: update-readme-table + title: 'chore: update README table from stewards.yml' + body: 'This PR updates the README.md table to refelct changes in stewards.yml.' + add: README.md diff --git a/stewards.yml b/stewards.yml new file mode 100644 index 0000000000..8e86a17676 --- /dev/null +++ b/stewards.yml @@ -0,0 +1,53 @@ + +calebfoss: + - Accessibility + +davepagurek: + - Core + - Maintainers + - Graphics: + - WebGL + +dhowe: + - Typography + +qianqianye: + - Maintainers + +ogbabydiesal: + - p5.sound.js + +limzykenneth: + - Maintainers + - DevOps + - Documentation + - Color + - i18n: + - zh + +perminder-17: + - Graphics: + - WebGL + - Documentation + - Maintainers + +lukeplowden: + - Graphics: + - WebGL + - p5.strands + +ksen0: + - Maintainers + - p5.js-website + +Divyansh013: + - i18n: + - hi + +GregStanton: + - Math + - Shapes + +holomorfo: + - Math + diff --git a/utils/stewards-table.js b/utils/stewards-table.js new file mode 100644 index 0000000000..632202c033 --- /dev/null +++ b/utils/stewards-table.js @@ -0,0 +1,53 @@ +const yaml = require('js-yaml'); +const fs = require('fs'); + +const yamlData = fs.readFileSync('stewards.yml', 'utf8'); +const parsed = yaml.load(yamlData); + +const areaMap = {}; +const maintainers = new Set(); +const supportedi18n = new Set(['hi', 'ko', 'zh', 'es']); + +for (const [user, roles] of Object.entries(parsed)) { + roles.forEach(role => { + if (typeof role === 'string') { + if (role.toLowerCase() === 'maintainers') { + maintainers.add(user); + } + areaMap[role] = areaMap[role] || new Set(); + areaMap[role].add(`@${user}`); + } else { + for (const [main, subs] of Object.entries(role)) { + subs.forEach(sub => { + if (main === 'i18n' && !supportedi18n.has(sub)) return; + const key = `${main} (${sub})`; + areaMap[key] = areaMap[key] || new Set(); + areaMap[key].add(`@${user}`); + }); + } + } + }); +} + +const header = '| Area | Steward(s) |'; +const divider = '|------|-------------|'; + +const sortedEntries = Object.entries(areaMap).sort(([aKey], [bKey]) => { + if (aKey === 'Maintainers') return -1; + if (bKey === 'Maintainers') return 1; + return aKey.localeCompare(bKey); +}); + +const rows = sortedEntries.map(([area, users]) => `| ${area} | ${[...users].sort().map( + u => `[@${u}](https://github.com/${u})` +).join(', ')} |`).join('\n'); +const newTable = [header, divider, rows].join('\n'); + +let readme = fs.readFileSync('README.md', 'utf8'); + +readme = readme.replace( + /\| *Area *\|.*\n\|[-| ]+\|\n(?:\|.*\|\n?)*/g, + newTable + '\n' +); + +fs.writeFileSync('README.md', readme); From 7b80ec54baedf5676338b43abbf4f22d0992b502 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 3 Jun 2025 12:19:55 +0200 Subject: [PATCH 05/61] Udpate stewardship guidelines --- contributor_docs/steward_guidelines.md | 59 +++++++++++++++++++++++++- 1 file changed, 58 insertions(+), 1 deletion(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 98cbdbebdc..8226d5e8f1 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -2,11 +2,15 @@ # Steward Guidelines -Whether you have just joined us as a steward, are a seasoned maintainer of p5.js, or are somewhere in between, this guide contains information as well as tips and tricks that will help you effectively contribute to p5.js. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. +Whether you are new to p5.js contribution, are already active on the p5.js GitHub repositories, or are somewhere in between, this guide contains information about p5.js stewardship. If you are not sure what to expect from stewards, or if you considering how to volunteer or get started as a steward, read on! ## Table of Contents +- [Stewardship] + - [Community Care](#community-care) + - [Areas](#areas) + - [Becoming a Steward](#becoming-a-steward) - [Issues](#issues) - [Bug report](#bug-report) - [Feature request](#feature-request) @@ -28,6 +32,59 @@ Whether you have just joined us as a steward, are a seasoned maintainer of p5.js --- +## Stewardship + +### Community Care + +An open source ethos includes [accessibility, education, collaboration, transparency, and agency](https://www.opensourceethos.net/). To live and practice these values while we write code together needs a lot of community care. These are the community care practices that are part of our definition of stewardship: + +1. Welcoming new contributors to GitHub through **friendly comments** and helpful **code reviews** +2. Helping to **facilitate feature discussions** and resolve technical disagreements +3. Suporting **releases** of the p5.js software through bug reporting, bug fixing, feature completion + +The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. + +Everyone is invited to help steward the community when you can! We are happy to see contributors welcome new contributors, review others' code, and provide API design feedback. There are also some concrete roles: + +1. Contributors are able to make Issues, PRs, Comments, and Code Reviews. +2. Maintainers are also able to merge PRs and admin other parts of the codebase. + +Stewards sit in-between: they can make Issues, PRs, Comments, and Code Reviews, but when they are stewarding a particular area, they can also be tagged by other contributors to help with discussion and review. + +As a contributor, you can check the current stewards in the p5.js repository's README file and tag relevant stewards - but please be mindful of our contributor guidelines, which emphasize patience and mindfulness that most of the technical work on an open-source project is volunteer. + +As a steward, we hope that you regularly chime in on code reviews on Issues or PRs that you did not make, if they are in your area and if you are able to provide helpful guidance! + +### Areas + +There are different areas of work that stewards can be responsible for. These areas match the GitHub Labels in most cases, with a couple of exceptions. Below is the list of areas. + +- Accessibility: This area specifically refers to digital and web accessibility, including, for example, screen reader suport via API like `describe(..)` as well as accessibility support on the reference website +- Core: Refers to core p5.js API, including rendering and environment +- DevOps: Refers to build process, unit testing, +- Documentation: includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content +- i18n (Internationalization): Includes writing and reviewing translations, specifically for the supported languages on the reference website (`es`, `hi`, `ko`, `zh`) +- Graphics: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) +- Color: Includes Color, ColorMode, accessibility improvements around color usage, colro in 2D and 3D, and so on +- Typography: Refers to all topics on handling text and font +- Math: Includes both external Math API and internal performance improvements +- Shapes: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js +- Maintainers: this is not an area, but rather the group of contributors who have the ability to merge PRs +- p5.sound.js: The [new p5.sound.js](https://github.com/processing/p5.sound.js) addon library +- p5.js-website: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on. + +These focus areas may change over time depending on the needs of the project - so if you are going through the process of applying to be a steward, you are welcome to proposals new areas! + +### Becoming a Steward + +There are two ways to become a steward: + +1. Nomination by maintainers or other stewards - this can happen in conversation over Discord or GitHub, and a maintainer may reach out to you +2. Application by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion. + +To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor (e.g., 2.1.0 or 1.11.0 - when the middle number changes) or major releases (e.g., 2.0 - when the leftmsot number changes). This means supporting other contributors through discussion or code review. + +To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! ## Issues From cbfce123135d6b76eb4952138091321e677672f3 Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 3 Jun 2025 12:26:16 +0200 Subject: [PATCH 06/61] Update steward_guidelines.md --- contributor_docs/steward_guidelines.md | 36 ++++++++++++-------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 8226d5e8f1..4186318289 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -7,7 +7,7 @@ Whether you are new to p5.js contribution, are already active on the p5.js GitHu ## Table of Contents -- [Stewardship] +- [Stewardship](#stewardship) - [Community Care](#community-care) - [Areas](#areas) - [Becoming a Steward](#becoming-a-steward) @@ -59,19 +59,19 @@ As a steward, we hope that you regularly chime in on code reviews on Issues or P There are different areas of work that stewards can be responsible for. These areas match the GitHub Labels in most cases, with a couple of exceptions. Below is the list of areas. -- Accessibility: This area specifically refers to digital and web accessibility, including, for example, screen reader suport via API like `describe(..)` as well as accessibility support on the reference website -- Core: Refers to core p5.js API, including rendering and environment -- DevOps: Refers to build process, unit testing, -- Documentation: includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content -- i18n (Internationalization): Includes writing and reviewing translations, specifically for the supported languages on the reference website (`es`, `hi`, `ko`, `zh`) -- Graphics: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) -- Color: Includes Color, ColorMode, accessibility improvements around color usage, colro in 2D and 3D, and so on -- Typography: Refers to all topics on handling text and font -- Math: Includes both external Math API and internal performance improvements -- Shapes: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js -- Maintainers: this is not an area, but rather the group of contributors who have the ability to merge PRs -- p5.sound.js: The [new p5.sound.js](https://github.com/processing/p5.sound.js) addon library -- p5.js-website: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on. +- **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader suport via API like `describe(..)` as well as accessibility support on the reference website +- **Core**: Refers to core p5.js API, including rendering and environment +- **DevOps**: Refers to build process, unit testing, +- **Documentation**: includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content +- i18n (Internationalization / **Translation**): Includes writing and reviewing translations, particularly for `es`, `hi`, `ko`, `zh` +- **Graphics**: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) +- **Color**: Includes Color, ColorMode, accessibility improvements around color usage, colro in 2D and 3D, and so on +- **Typography**: Refers to all topics on handling text and font +- **Math**: Includes both external Math API and internal performance improvements +- **Shapes**: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js +- **Maintainers**: This group can merge PRs +- **p5.sound.js**: The [new p5.sound.js](https://github.com/processing/p5.sound.js) addon library +- **p5.js-website**: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on. These focus areas may change over time depending on the needs of the project - so if you are going through the process of applying to be a steward, you are welcome to proposals new areas! @@ -79,12 +79,10 @@ These focus areas may change over time depending on the needs of the project - s There are two ways to become a steward: -1. Nomination by maintainers or other stewards - this can happen in conversation over Discord or GitHub, and a maintainer may reach out to you -2. Application by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion. +1. _Nomination_ by maintainers or other stewards, such as in conversation over Discord, Discourse, or GitHub. +2. _Application_ by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion. -To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor (e.g., 2.1.0 or 1.11.0 - when the middle number changes) or major releases (e.g., 2.0 - when the leftmsot number changes). This means supporting other contributors through discussion or code review. - -To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! +To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! ## Issues From d9959fced1b56635e36abc668a246f3e66996de7 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 3 Jun 2025 12:59:36 +0200 Subject: [PATCH 07/61] Update stewards.yml --- stewards.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/stewards.yml b/stewards.yml index 8e86a17676..907c5e73d1 100644 --- a/stewards.yml +++ b/stewards.yml @@ -1,3 +1,6 @@ +aferriss: + - Graphics: + - WebGL calebfoss: - Accessibility From a8a8dd206f2e0ad0a31f9541439e1c0d9346d40f Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 3 Jun 2025 13:00:20 +0200 Subject: [PATCH 08/61] Update contributor_docs/steward_guidelines.md Co-authored-by: Dave Pagurek --- contributor_docs/steward_guidelines.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 4186318289..10847fb047 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -82,7 +82,7 @@ There are two ways to become a steward: 1. _Nomination_ by maintainers or other stewards, such as in conversation over Discord, Discourse, or GitHub. 2. _Application_ by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion. -To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! +To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor releases (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! ## Issues From a2ca6d0f503d4c1206e5d80c7210c78ff6b2c54b Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 3 Jun 2025 14:56:15 +0200 Subject: [PATCH 09/61] Update contributor_docs/steward_guidelines.md Co-authored-by: Kenneth Lim --- contributor_docs/steward_guidelines.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 10847fb047..6eb1c0e430 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -40,7 +40,7 @@ An open source ethos includes [accessibility, education, collaboration, transpar 1. Welcoming new contributors to GitHub through **friendly comments** and helpful **code reviews** 2. Helping to **facilitate feature discussions** and resolve technical disagreements -3. Suporting **releases** of the p5.js software through bug reporting, bug fixing, feature completion +3. Suporting releases of the p5.js software through **supporting** bug fixing and feature completion The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. From 8e3902804b56b8ccb94158b36e20bbf0e73ee8a1 Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 3 Jun 2025 14:56:25 +0200 Subject: [PATCH 10/61] Update contributor_docs/steward_guidelines.md Co-authored-by: Kenneth Lim --- contributor_docs/steward_guidelines.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 6eb1c0e430..fcb96ee2c1 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -49,7 +49,7 @@ Everyone is invited to help steward the community when you can! We are happy to 1. Contributors are able to make Issues, PRs, Comments, and Code Reviews. 2. Maintainers are also able to merge PRs and admin other parts of the codebase. -Stewards sit in-between: they can make Issues, PRs, Comments, and Code Reviews, but when they are stewarding a particular area, they can also be tagged by other contributors to help with discussion and review. +Stewards can also be contributors: they can make Issues and PRs as contributors, while they also take on responsibility, when they are stewarding a particular area, to comment on issues and do code reviews, especially when tagged by other contributors to help with discussion and review. As a contributor, you can check the current stewards in the p5.js repository's README file and tag relevant stewards - but please be mindful of our contributor guidelines, which emphasize patience and mindfulness that most of the technical work on an open-source project is volunteer. From 842e9c49d60fc6545a7cae158b05ebdcdfe4d816 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 3 Jun 2025 15:02:41 +0200 Subject: [PATCH 11/61] Clarified to the stewardship responsibilities list --- contributor_docs/steward_guidelines.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index fcb96ee2c1..f85d903671 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -39,8 +39,8 @@ Whether you are new to p5.js contribution, are already active on the p5.js GitHu An open source ethos includes [accessibility, education, collaboration, transparency, and agency](https://www.opensourceethos.net/). To live and practice these values while we write code together needs a lot of community care. These are the community care practices that are part of our definition of stewardship: 1. Welcoming new contributors to GitHub through **friendly comments** and helpful **code reviews** -2. Helping to **facilitate feature discussions** and resolve technical disagreements -3. Suporting releases of the p5.js software through **supporting** bug fixing and feature completion +2. Helping to **facilitate feature discussions** and resolve technical disagreements. For example, this means making connections to other past discussion, or offering input from prior relevant experience. Suggesting features or working on them is contribution, rather than stewardship. +3. Participating in releases of the p5.js software through **supporting** bug fixing and feature completion. For example, this means guiding other contributors and reviewing their PRs. Fixing bugs is contribution, rather than stewardship. The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. @@ -59,11 +59,11 @@ As a steward, we hope that you regularly chime in on code reviews on Issues or P There are different areas of work that stewards can be responsible for. These areas match the GitHub Labels in most cases, with a couple of exceptions. Below is the list of areas. -- **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader suport via API like `describe(..)` as well as accessibility support on the reference website +- **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader support via API like `describe(..)` as well as accessibility support on the reference website - **Core**: Refers to core p5.js API, including rendering and environment -- **DevOps**: Refers to build process, unit testing, +- **DevOps**: Refers to build process, unit testing, and other aspects of the development experience - **Documentation**: includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content -- i18n (Internationalization / **Translation**): Includes writing and reviewing translations, particularly for `es`, `hi`, `ko`, `zh` +- i18n (Internationalization / **Translation**): Includes reviewing translations, particularly for `es`, `hi`, `ko`, `zh` - **Graphics**: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) - **Color**: Includes Color, ColorMode, accessibility improvements around color usage, colro in 2D and 3D, and so on - **Typography**: Refers to all topics on handling text and font From f123ad460bff566daeadee46c4e66a71f2b57e98 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Thu, 5 Jun 2025 20:31:55 +0200 Subject: [PATCH 12/61] Fixes in guideline and new stewards --- README.md | 44 ++++++++++++++------------ contributor_docs/steward_guidelines.md | 10 +++--- stewards.yml | 28 ++++++++++++++++ utils/stewards-table.js | 21 ++++++++---- 4 files changed, 70 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index ef45a87a39..e1d72afba3 100644 --- a/README.md +++ b/README.md @@ -86,27 +86,29 @@ Lead/Mentor Alumni * [@qianqianye](https://github.com/qianqianye) - p5.js Lead,2021-present (on leave) * [@outofambit](https://github.com/outofambit) - p5.js Co-Lead 2021-22, Mentor 2022-2023 * [@mcturner1995](https://github.com/mcturner1995) - p5.js Lead 2020 - -| Area | Steward(s) | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| Overall | [@ksen0](https://github.com/ksen0) | -| [Accessibility](https://github.com/processing/p5.js/tree/main/src/accessibility) | [@calebfoss](https://github.com/calebfoss), [@cosmicbhejafry](https://github.com/cosmicbhejafry), [@apoorva-a98](https://github.com/apoorva-a98), [@tedkmburu](https://github.com/tedkmburu), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@nhasalajoshi](https://github.com/nhasalajoshi)| -| [Color](https://github.com/processing/p5.js/tree/main/src/color) | [@paulaxisabel](https://github.com/paulaxisabel), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@mrbrack](https://github.com/mrbrack), [@TJ723](https://github.com/TJ723), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Core](https://github.com/processing/p5.js/tree/main/src/core)/Environment/Rendering | [@limzykenneth](https://github.com/limzykenneth), [@davepagurek](https://github.com/davepagurek), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@tuminzee](https://github.com/tuminzee), [@Zarkv](https://github.com/Zarkv), [@robin-haxx](https://github.com/robin-haxx), [@Gaurav-1306](https://github.com/Gaurav-1306) | -| [Data](https://github.com/processing/p5.js/tree/main/src/data) | [@angelabelle](https://github.com/angelabelle), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@SkylerW99](https://github.com/SkylerW99), [@nhasalajoshi](https://github.com/nhasalajoshi) | -| [DOM](https://github.com/processing/p5.js/tree/main/src/dom) | [@SarveshLimaye](https://github.com/SarveshLimaye), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@ramya202000](https://github.com/ramya202000), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@MarceloGoncalves](https://github.com/MarceloGoncalves), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Events](https://github.com/processing/p5.js/tree/main/src/events) | [@limzykenneth](https://github.com/limzykenneth), [@richardegil](https://github.com/richardegil), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@TanviKumar](https://github.com/TanviKumar), [@tuminzee](https://github.com/tuminzee) | -| [Image](https://github.com/processing/p5.js/tree/main/src/image) | [@cgusb](https://github.com/cgusb), [@albertomancia](https://github.com/albertomancia), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx)| -| [IO](https://github.com/processing/p5.js/tree/main/src/io) | [@limzykenneth](https://github.com/limzykenneth), [@Pritam1136](https://github.com/Pritam1136), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@jeanetteandrews](https://github.com/jeanetteandrews)| -| [Math](https://github.com/processing/p5.js/tree/main/src/math) | [@limzykenneth](https://github.com/limzykenneth), [@ericnlchen](https://github.com/ericnlchen), [@ChihYungChang](https://github.com/ChihYungChang), [@bsubbaraman](https://github.com/bsubbaraman), [@albertomancia](https://github.com/albertomancia), [@JazerUCSB](https://github.com/JazerUCSB), [@tedkmburu](https://github.com/tedkmburu), [@perminder-17](https://github.com/perminder-17), [@Obi-Engine10](https://github.com/Obi-Engine10), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| [Typography](https://github.com/processing/p5.js/tree/main/src/typography) | [@dhowe](https://github.com/dhowe), [@paulaxisabel](https://github.com/paulaxisabel), [@SarveshLimaye](https://github.com/SarveshLimaye), [@SkylerW99](https://github.com/SkylerW99), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@hannahvy](https://github.com/hannahvy), [@singshris](https://github.com/singshris), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Utilities](https://github.com/processing/p5.js/tree/main/src/utilities) | [@limzykenneth](https://github.com/limzykenneth), [@glopzel](https://github.com/glopzel) | -| [WebGL](https://github.com/processing/p5.js/tree/main/src/webgl) | [@davepagurek](https://github.com/davepagurek), [@aferriss](https://github.com/aferriss), [@aceslowman](https://github.com/aceslowman), [@ShenpaiSharma](https://github.com/ShenpaiSharma), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@JazerUCSB](https://github.com/JazerUCSB), [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@Gaurav-1306](https://github.com/Gaurav-1306), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| [Internalization](https://github.com/processing/p5.js/blob/main/src/core/internationalization.js) | [@limzykenneth](https://github.com/limzykenneth) | -| [Friendly Errors](https://github.com/processing/p5.js/tree/main/src/core/friendly_errors) | [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@bisabi-01](https://github.com/bisabi-01), [@singshris](https://github.com/singshris) | -| [Contributor Docs](https://github.com/processing/p5.js/tree/main/contributor_docs) |[@limzykenneth](https://github.com/limzykenneth), [@asukaminato0721](https://github.com/asukaminato0721), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@richardegil](https://github.com/richardegil), [@hannahvy](https://github.com/hannahvy), [@bayomayo](https://github.com/bayomayo) | -| [p5.sound](https://github.com/processing/p5.sound.js) |[@miguellacorte](https://github.com/miguellacorte), [@JazerUCSB](https://github.com/JazerUCSB), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@hannahvy](https://github.com/hannahvy), [@glopzel](https://github.com/glopzel), [@singshris](https://github.com/singshris), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| Build Process/Unit Testing | [@limzykenneth](https://github.com/limzykenneth) | + + + +| Area | Steward(s) | +|------|-------------| +| Maintainers | [@davepagurek](https://github.com/davepagurek), [@ksen0](https://github.com/ksen0), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17), [@qianqianye](https://github.com/qianqianye) | +| Accessibility | [@calebfoss](https://github.com/calebfoss) | +| Color | [@limzykenneth](https://github.com/limzykenneth) | +| Core | [@davepagurek](https://github.com/davepagurek) | +| DevOps | [@Vaivaswat2244](https://github.com/Vaivaswat2244), [@error-four-o-four](https://github.com/error-four-o-four), [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | +| Documentation | [@VANSH3104](https://github.com/VANSH3104), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17) | +| Friendly Errors | [@IITM-Jay](https://github.com/IITM-Jay) | +| Graphics (p5.strands) | [@lukeplowden](https://github.com/lukeplowden) | +| Graphics (WebGL) | [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) | +| i18n (hi) | [@Divyansh013](https://github.com/Divyansh013), [@takshittt](https://github.com/takshittt) | +| i18n (zh) | [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | +| Math | [@GregStanton](https://github.com/GregStanton), [@holomorfo](https://github.com/holomorfo) | +| p5.js-website | [@clairep94](https://github.com/clairep94), [@ksen0](https://github.com/ksen0) | +| p5.sound.js | [@ogbabydiesal](https://github.com/ogbabydiesal) | +| Shapes | [@GregStanton](https://github.com/GregStanton) | +| Typography | [@dhowe](https://github.com/dhowe) | +| WebGL | [@RandomGamingDev](https://github.com/RandomGamingDev) | + ## Contributors diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index f85d903671..fca90c23cc 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -2,7 +2,7 @@ # Steward Guidelines -Whether you are new to p5.js contribution, are already active on the p5.js GitHub repositories, or are somewhere in between, this guide contains information about p5.js stewardship. If you are not sure what to expect from stewards, or if you considering how to volunteer or get started as a steward, read on! +Whether you are new to p5.js contribution, are already active on the p5.js GitHub repositories, or are somewhere in between, you'll find what you need in this guide to p5.js stewardship. If you are not sure what to expect from stewards, or if you are considering how to volunteer or get started as a steward, read on! ## Table of Contents @@ -44,7 +44,7 @@ An open source ethos includes [accessibility, education, collaboration, transpar The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. -Everyone is invited to help steward the community when you can! We are happy to see contributors welcome new contributors, review others' code, and provide API design feedback. There are also some concrete roles: +Everyone is invited to help steward the community when they can! We are happy to see contributors welcome new contributors, review others' code, and provide API design feedback. There are also some concrete roles: 1. Contributors are able to make Issues, PRs, Comments, and Code Reviews. 2. Maintainers are also able to merge PRs and admin other parts of the codebase. @@ -62,15 +62,15 @@ There are different areas of work that stewards can be responsible for. These ar - **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader support via API like `describe(..)` as well as accessibility support on the reference website - **Core**: Refers to core p5.js API, including rendering and environment - **DevOps**: Refers to build process, unit testing, and other aspects of the development experience -- **Documentation**: includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content +- **Documentation**: Includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content - i18n (Internationalization / **Translation**): Includes reviewing translations, particularly for `es`, `hi`, `ko`, `zh` - **Graphics**: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) -- **Color**: Includes Color, ColorMode, accessibility improvements around color usage, colro in 2D and 3D, and so on +- **Color**: Includes Color, ColorMode, accessibility improvements around color usage - **Typography**: Refers to all topics on handling text and font - **Math**: Includes both external Math API and internal performance improvements - **Shapes**: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js - **Maintainers**: This group can merge PRs -- **p5.sound.js**: The [new p5.sound.js](https://github.com/processing/p5.sound.js) addon library +- **p5.sound.js**: The [new p5.sound.js](https://github.com/processing/p5.sound.js) add-on library - **p5.js-website**: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on. These focus areas may change over time depending on the needs of the project - so if you are going through the process of applying to be a steward, you are welcome to proposals new areas! diff --git a/stewards.yml b/stewards.yml index 907c5e73d1..e1465bec97 100644 --- a/stewards.yml +++ b/stewards.yml @@ -54,3 +54,31 @@ GregStanton: holomorfo: - Math +lirenjie95: + - i18n: + - zh + - DevOps + +IITM-Jay: + - Friendly Errors + +Vaivaswat2244: + - DevOps + +RandomGamingDev: + - WebGL + +VANSH3104: + - Documentation + +error-four-o-four: + - DevOps + +takshittt: + - i18n: + - hi + +clairep94: + - p5.js-website + + diff --git a/utils/stewards-table.js b/utils/stewards-table.js index 632202c033..9d679315c4 100644 --- a/utils/stewards-table.js +++ b/utils/stewards-table.js @@ -8,6 +8,7 @@ const areaMap = {}; const maintainers = new Set(); const supportedi18n = new Set(['hi', 'ko', 'zh', 'es']); + for (const [user, roles] of Object.entries(parsed)) { roles.forEach(role => { if (typeof role === 'string') { @@ -15,20 +16,24 @@ for (const [user, roles] of Object.entries(parsed)) { maintainers.add(user); } areaMap[role] = areaMap[role] || new Set(); - areaMap[role].add(`@${user}`); + areaMap[role].add(`${user}`); } else { for (const [main, subs] of Object.entries(role)) { subs.forEach(sub => { if (main === 'i18n' && !supportedi18n.has(sub)) return; const key = `${main} (${sub})`; areaMap[key] = areaMap[key] || new Set(); - areaMap[key].add(`@${user}`); + areaMap[key].add(`${user}`); }); } } }); } + +const startMarker = ''; +const endMarker = ''; + const header = '| Area | Steward(s) |'; const divider = '|------|-------------|'; @@ -41,13 +46,15 @@ const sortedEntries = Object.entries(areaMap).sort(([aKey], [bKey]) => { const rows = sortedEntries.map(([area, users]) => `| ${area} | ${[...users].sort().map( u => `[@${u}](https://github.com/${u})` ).join(', ')} |`).join('\n'); -const newTable = [header, divider, rows].join('\n'); +const newTable = [startMarker, header, divider, rows, endMarker].join('\n'); let readme = fs.readFileSync('README.md', 'utf8'); -readme = readme.replace( - /\| *Area *\|.*\n\|[-| ]+\|\n(?:\|.*\|\n?)*/g, - newTable + '\n' -); +const startIndex = readme.indexOf(startMarker); +const endIndex = readme.indexOf(endMarker) + endMarker.length; + +if (startIndex !== -1 && endIndex !== -1) { + readme = readme.slice(0, startIndex) + newTable + readme.slice(endIndex); +} fs.writeFileSync('README.md', readme); From 4577058e21d4b9e626f8a512d66c603b383daad4 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Thu, 5 Jun 2025 20:44:15 +0200 Subject: [PATCH 13/61] Add onboarding to steward guideline --- contributor_docs/steward_guidelines.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index fca90c23cc..2b271f8ba1 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -11,6 +11,7 @@ Whether you are new to p5.js contribution, are already active on the p5.js GitHu - [Community Care](#community-care) - [Areas](#areas) - [Becoming a Steward](#becoming-a-steward) + - [Getting Started with Stewardship](#getting-started-with-stewardship) - [Issues](#issues) - [Bug report](#bug-report) - [Feature request](#feature-request) @@ -84,6 +85,12 @@ There are two ways to become a steward: To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor releases (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! +### Getting Started with Stewardship + +1. Keep this guideline handy as a reference - how to help with new issues, bugs, and features. For example, the "Feature request" section includes tips on how to use the the p5.js [access statement](access.md) as a steward. +2. When helping to answer technical questions or review, try to apply the Processing Foundation [guideline on answering questions](https://discourse.processing.org/t/guidelines-answering-questions/2145) - these can be especially helpful for giving constructive technical feedback. +3. Join the [p5.js Discord](https://discord.com/invite/SHQ8dH25r9) - in the `#contribute-to-p5` you're welcome to ask any questions you have about this process - or suggest how it can be improved! + ## Issues We encourage most source code contributions to start with an issue, and as such, issues are the place where most of the discussions will take place. The steps to take when reviewing an issue will depend on what kind of issue it is. The repo uses [GitHub issue templates](https://github.com/processing/p5.js/blob/main/.github/ISSUE_TEMPLATE) in order to better organize different kinds of issues and encourage issue authors to provide all relevant information about their problems. The first step in reviewing the issue will often be looking through the filled-out template and determining if you need additional information (e.g., because some fields weren't filled in or the incorrect template was used). From 0ede2fb682a6e0b1ac96174af765223e1a5381a0 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Fri, 6 Jun 2025 10:08:01 +0200 Subject: [PATCH 14/61] Clean up stewards table generation --- utils/stewards-table.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/utils/stewards-table.js b/utils/stewards-table.js index 9d679315c4..fe5060f7ba 100644 --- a/utils/stewards-table.js +++ b/utils/stewards-table.js @@ -5,16 +5,12 @@ const yamlData = fs.readFileSync('stewards.yml', 'utf8'); const parsed = yaml.load(yamlData); const areaMap = {}; -const maintainers = new Set(); const supportedi18n = new Set(['hi', 'ko', 'zh', 'es']); for (const [user, roles] of Object.entries(parsed)) { roles.forEach(role => { if (typeof role === 'string') { - if (role.toLowerCase() === 'maintainers') { - maintainers.add(user); - } areaMap[role] = areaMap[role] || new Set(); areaMap[role].add(`${user}`); } else { From fda190fad4cfa781c3f128857d8096f04fa3ef75 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Fri, 6 Jun 2025 11:55:54 +0200 Subject: [PATCH 15/61] Update issue labeler to include new steward areas --- .github/ISSUE_TEMPLATE/2-found-a-bug.yml | 8 ++++---- .github/labeler.yml | 10 ++++++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/2-found-a-bug.yml b/.github/ISSUE_TEMPLATE/2-found-a-bug.yml index dd06e29725..948c2f1c37 100644 --- a/.github/ISSUE_TEMPLATE/2-found-a-bug.yml +++ b/.github/ISSUE_TEMPLATE/2-found-a-bug.yml @@ -19,11 +19,11 @@ body: - label: Math - label: Typography - label: Utilities + - label: p5.strands - label: WebGL - - label: Build process - - label: Unit testing - - label: Internationalization - - label: Friendly errors + - label: DevOps, Build process, Unit testing + - label: Internationalization (i18n) + - label: Friendly Errors - label: Other (specify if possible) - type: input attributes: diff --git a/.github/labeler.yml b/.github/labeler.yml index daa971834c..a593e7c8e9 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -22,11 +22,17 @@ - '\[[xX]\]\s*Utilities' "Area:WebGL": - '\[[xX]\]\s*WebGL' +"Internationalization": + - '\[[xX]\]\s*Internationalization' +"DevOps": + - '\[[xX]\]\s*Build Process' +"DevOps": + - '\[[xX]\]\s*Unit Testing' "Build Process": - '\[[xX]\]\s*Build Process' "Unit Testing": - '\[[xX]\]\s*Unit Testing' -"Internationalization": - - '\[[xX]\]\s*Internationalization' "Friendly Errors": - '\[[xX]\]\s*Friendly Errors' +"p5.strands": + - '\[[xX]\]\s*p5.strands' From 29a95147f65d7e8836ba3359d5380bb777a92111 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 6 Jun 2025 09:59:12 +0000 Subject: [PATCH 16/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 97b411a021..ff94232d3b 100644 --- a/README.md +++ b/README.md @@ -1147,6 +1147,7 @@ We recognize all types of contributions. This project follows the [all-contribut jep
jep

πŸ€” Dipanshu Gupta
Dipanshu Gupta

πŸ“– sukrucildirr
sukrucildirr

πŸ“– + Andrew McWhae
Andrew McWhae

πŸ“– From aa8a907680e4a9d7533775d05795873179d664fd Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 6 Jun 2025 09:59:13 +0000 Subject: [PATCH 17/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 2cdb2f076d..f4cfbabfb1 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6905,6 +6905,15 @@ "contributions": [ "doc" ] + }, + { + "login": "andrewmcwhae", + "name": "Andrew McWhae", + "avatar_url": "https://avatars.githubusercontent.com/u/8450380?v=4", + "profile": "https://linktr.ee/andrewmcwhae", + "contributions": [ + "doc" + ] } ], "repoType": "github", From b66dcdf414a415699a25bc8d234843e47980161b Mon Sep 17 00:00:00 2001 From: Ben Gilbert Date: Sat, 7 Jun 2025 17:19:19 +0100 Subject: [PATCH 18/61] Merge (#1) * Fixed loop variable in createFileInput() docs (dom.js) * Bump serialize-javascript and mocha Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) to 6.0.2 and updates ancestor dependency [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together. Updates `serialize-javascript` from 6.0.0 to 6.0.2 - [Release notes](https://github.com/yahoo/serialize-javascript/releases) - [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.0...v6.0.2) Updates `mocha` from 10.2.0 to 10.8.2 - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v10.2.0...v10.8.2) --- updated-dependencies: - dependency-name: serialize-javascript dependency-type: indirect - dependency-name: mocha dependency-type: direct:development ... Signed-off-by: dependabot[bot] * Bump elliptic from 6.6.0 to 6.6.1 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.6.0 to 6.6.1. - [Commits](https://github.com/indutny/elliptic/compare/v6.6.0...v6.6.1) --- updated-dependencies: - dependency-name: elliptic dependency-type: indirect ... Signed-off-by: dependabot[bot] * added instance of video in callback * Revert "fix: push() ignoring the ColorMode #7402" * Fix typos * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * Add @dpanshug for doc * Update reference.js * Update reference.js.map * Update books.xml * Update error_helpers.js * Update sketch.js * Update sketch.js * Update p5.Table.js * Update p5.Image.js * Update pixels.js * Remove generated reference.js.map from PR * Restore generated file to match upstream main * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * 1.11.8 * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] --------- Signed-off-by: dependabot[bot] Co-authored-by: Andrew McWhae Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Soubhagya Mohapatra Co-authored-by: kit <1304340+ksen0@users.noreply.github.com> Co-authored-by: omahs <73983677+omahs@users.noreply.github.com> Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: raclim <43053081+raclim@users.noreply.github.com> Co-authored-by: Perminder Singh <127239756+perminder-17@users.noreply.github.com> Co-authored-by: ksen0 Co-authored-by: sukrucildirr --- .all-contributorsrc | 63 ++++++ README.md | 10 +- .../project_wrapups/DIVYANSHU_RAJ_GSOC_20.md | 2 +- .../project_wrapups/munusshih_gsoc_2023.md | 2 +- docs/yuidoc-p5-theme/assets/js/reference.js | 20 +- lib/addons/p5.sound.js | 6 +- package-lock.json | 180 ++++++++---------- package.json | 2 +- src/accessibility/outputs.js | 2 +- src/core/friendly_errors/sketch_reader.js | 2 +- src/core/p5.Renderer.js | 4 +- src/dom/dom.js | 20 +- src/image/p5.Image.js | 2 +- src/image/pixels.js | 2 +- src/io/p5.Table.js | 4 +- src/webgl/shaders/lighting.glsl | 2 +- tasks/build/browserify.js | 2 +- tasks/build/combineModules.js | 2 +- .../tutorials/DOM-extensions/6/sketch.js | 2 +- .../tutorials/DOM-extensions/7/sketch.js | 2 +- test/unit/assets/books.xml | 4 +- test/unit/core/environment.js | 2 +- test/unit/core/error_helpers.js | 10 +- test/unit/core/rendering.js | 4 +- 24 files changed, 198 insertions(+), 153 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index c4cc53ddeb..f4cfbabfb1 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6851,6 +6851,69 @@ "contributions": [ "doc" ] + }, + { + "login": "irina-wang", + "name": "Irina Mengqi Wang", + "avatar_url": "https://avatars.githubusercontent.com/u/59970384?v=4", + "profile": "https://github.com/irina-wang", + "contributions": [ + "example" + ] + }, + { + "login": "jennybkowalski", + "name": "Jenny Biette Kowalski", + "avatar_url": "https://avatars.githubusercontent.com/u/11235412?v=4", + "profile": "http://jennybkowalski.com", + "contributions": [ + "ideas" + ] + }, + { + "login": "Wlaith", + "name": "Laith Alwazani", + "avatar_url": "https://avatars.githubusercontent.com/u/98265005?v=4", + "profile": "https://github.com/wlaith", + "contributions": [ + "ideas" + ] + }, + { + "login": "jep-a", + "name": "jep", + "avatar_url": "https://avatars.githubusercontent.com/u/20326207?v=4", + "profile": "https://github.com/jep-a", + "contributions": [ + "ideas" + ] + }, + { + "login": "dpanshug", + "name": "Dipanshu Gupta", + "avatar_url": "https://avatars.githubusercontent.com/u/97534722?v=4", + "profile": "https://github.com/dpanshug", + "contributions": [ + "doc" + ] + }, + { + "login": "sukrucildirr", + "name": "sukrucildirr", + "avatar_url": "https://avatars.githubusercontent.com/u/32969880?v=4", + "profile": "https://github.com/sukrucildirr", + "contributions": [ + "doc" + ] + }, + { + "login": "andrewmcwhae", + "name": "Andrew McWhae", + "avatar_url": "https://avatars.githubusercontent.com/u/8450380?v=4", + "profile": "https://linktr.ee/andrewmcwhae", + "contributions": [ + "doc" + ] } ], "repoType": "github", diff --git a/README.md b/README.md index 6f4b71cce8..ff94232d3b 100644 --- a/README.md +++ b/README.md @@ -1134,12 +1134,20 @@ We recognize all types of contributions. This project follows the [all-contribut HughJacks
HughJacks

πŸ’» - Jack L
Jack L

πŸ› πŸ“– Jack L
Jack L

πŸ› πŸ“– Claire Peng
Claire Peng

πŸ’» πŸ› Jay Dev Jha
Jay Dev Jha

πŸ’» Yugal Kaushik
Yugal Kaushik

πŸ’» πŸ“– Lalit Narayan Yadav
Lalit Narayan Yadav

πŸ“– + Irina Mengqi Wang
Irina Mengqi Wang

πŸ’‘ + + + Jenny Biette Kowalski
Jenny Biette Kowalski

πŸ€” + Laith Alwazani
Laith Alwazani

πŸ€” + jep
jep

πŸ€” + Dipanshu Gupta
Dipanshu Gupta

πŸ“– + sukrucildirr
sukrucildirr

πŸ“– + Andrew McWhae
Andrew McWhae

πŸ“– diff --git a/contributor_docs/project_wrapups/DIVYANSHU_RAJ_GSOC_20.md b/contributor_docs/project_wrapups/DIVYANSHU_RAJ_GSOC_20.md index d4117393fd..41c377675e 100644 --- a/contributor_docs/project_wrapups/DIVYANSHU_RAJ_GSOC_20.md +++ b/contributor_docs/project_wrapups/DIVYANSHU_RAJ_GSOC_20.md @@ -53,7 +53,7 @@ The introduction of es6 classes into the JS world , was a great relief for devel when it comes to AUDIO GRAPHS , where one node is connected to so many other nodes and inherit property from its parent nodes , a more robust and cleaner implementation of Nodes was required and ES6 classes rocked the way . -Following PR REVAMPED the p5.sound's AUDIO NODES from ``funtion syntax`` to ``ES6 classes syntax`` +Following PR REVAMPED the p5.sound's AUDIO NODES from ``function syntax`` to ``ES6 classes syntax`` [#502](https://github.com/processing/p5.js-sound/pull/502) [#503](https://github.com/processing/p5.js-sound/pull/503) diff --git a/contributor_docs/project_wrapups/munusshih_gsoc_2023.md b/contributor_docs/project_wrapups/munusshih_gsoc_2023.md index 238f673deb..8a2712b32e 100644 --- a/contributor_docs/project_wrapups/munusshih_gsoc_2023.md +++ b/contributor_docs/project_wrapups/munusshih_gsoc_2023.md @@ -69,7 +69,7 @@ In conclusion, I am grateful for my time working with p5.js typography during GS ## Features Requested ```jsx -If they're not dependent/relevant, we should do seperate PRs. +If they're not dependent/relevant, we should do separate PRs. ``` | Topic | Status | Coded? | PR? | Pushed? | diff --git a/docs/yuidoc-p5-theme/assets/js/reference.js b/docs/yuidoc-p5-theme/assets/js/reference.js index 455d4425d9..bfcfe7c281 100644 --- a/docs/yuidoc-p5-theme/assets/js/reference.js +++ b/docs/yuidoc-p5-theme/assets/js/reference.js @@ -1317,7 +1317,7 @@ define('typeahead',[], function() { wordsOnly: false, caseSensitive: false }; - return function hightlight(o) { + return function highlight(o) { var regex; o = _.mixin({}, defaults, o); if (!o.node || !o.pattern) { @@ -1325,8 +1325,8 @@ define('typeahead',[], function() { } o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ]; regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly); - traverse(o.node, hightlightTextNode); - function hightlightTextNode(textNode) { + traverse(o.node, highlightTextNode); + function highlightTextNode(textNode) { var match, patternNode; if (match = regex.exec(textNode.data)) { wrapperNode = doc.createElement(o.tagName); @@ -1338,14 +1338,14 @@ define('typeahead',[], function() { } return !!match; } - function traverse(el, hightlightTextNode) { + function traverse(el, highlightTextNode) { var childNode, TEXT_NODE_TYPE = 3; for (var i = 0; i < el.childNodes.length; i++) { childNode = el.childNodes[i]; if (childNode.nodeType === TEXT_NODE_TYPE) { - i += hightlightTextNode(childNode) ? 1 : 0; + i += highlightTextNode(childNode) ? 1 : 0; } else { - traverse(childNode, hightlightTextNode); + traverse(childNode, highlightTextNode); } } } @@ -3104,7 +3104,7 @@ var prettyPrint; * recognized. * * Shortcut is an optional string of characters, any of which, if the first - * character, gurantee that this pattern and only this pattern matches. + * character, guarantee that this pattern and only this pattern matches. * * @param {Array} shortcutStylePatterns patterns that always start with * a known character. Must have a shortcut string. @@ -3387,12 +3387,12 @@ var prettyPrint; // preprocessor directives. // This definition of punctuation does not include # in the list of - // follow-on exclusions, so # will not be broken before if preceeded + // follow-on exclusions, so # will not be broken before if preceded // by a punctuation character. We could try to exclude # after // [|&;<>] but that doesn't seem to cause many major problems. // If that does turn out to be a problem, we should change the below // when hc is truthy to include # in the run of punctuation characters - // only when not followint [|&;<>]. + // only when not following [|&;<>]. '^.[^\\s\\w.$@\'"`/\\\\]*'; if (options['regexLiterals']) { punctuation += '(?!\s*\/)'; @@ -4546,7 +4546,7 @@ define('pageView',[ 'libraryView' ], function(App, searchView, listView, itemView, menuView, libraryView) { - // Store the original title parts so we can substitue different endings. + // Store the original title parts so we can substitute different endings. var _originalDocumentTitle = window.document.title; var pageView = Backbone.View.extend({ diff --git a/lib/addons/p5.sound.js b/lib/addons/p5.sound.js index a8a7e3f450..f7216fca04 100644 --- a/lib/addons/p5.sound.js +++ b/lib/addons/p5.sound.js @@ -8308,7 +8308,7 @@ function reverb_setPrototypeOf(o, p) { reverb_setPrototypeOf = Object.setPrototy /** * Reverb adds depth to a sound through a large number of decaying * echoes. It creates the perception that sound is occurring in a - * physical space. The p5.Reverb has paramters for Time (how long does the + * physical space. The p5.Reverb has parameters for Time (how long does the * reverb last) and decayRate (how much the sound decays with each echo) * that can be set with the .set() or .process() methods. The p5.Convolver * extends p5.Reverb allowing you to recreate the sound of actual physical @@ -9727,7 +9727,7 @@ function () { soundLoop_classCallCheck(this, SoundLoop); /** - * Getters and Setters, setting any paramter will result in a change in the clock's + * Getters and Setters, setting any parameter will result in a change in the clock's * frequency, that will be reflected after the next callback * beats per minute (defaults to 60) * @property {Number} bpm @@ -10110,7 +10110,7 @@ function (_Effect) { this.set(attack, knee, ratio, threshold, release); } /** - * Set the paramters of a compressor. + * Set the parameters of a compressor. * @method set * @for p5.Compressor * @param {Number} attack The amount of time (in seconds) to reduce the gain by 10dB, diff --git a/package-lock.json b/package-lock.json index e9291f1fc6..c4b5c08bcb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "p5", - "version": "1.11.7", + "version": "1.11.8", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "p5", - "version": "1.11.7", + "version": "1.11.8", "license": "LGPL-2.1", "devDependencies": { "@babel/core": "^7.7.7", @@ -2590,10 +2590,11 @@ } }, "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -5236,10 +5237,11 @@ "dev": true }, "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" } @@ -5365,10 +5367,11 @@ } }, "node_modules/elliptic": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.0.tgz", - "integrity": "sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dev": true, + "license": "MIT", "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -11098,32 +11101,32 @@ "dev": true }, "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", "dev": true, + "license": "MIT", "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" }, "bin": { "_mocha": "bin/_mocha", @@ -11131,10 +11134,6 @@ }, "engines": { "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" } }, "node_modules/mocha/node_modules/ansi-regex": { @@ -11167,6 +11166,16 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, "node_modules/mocha/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -11219,12 +11228,13 @@ } }, "node_modules/mocha/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -11235,12 +11245,6 @@ } } }, - "node_modules/mocha/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, "node_modules/mocha/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -11276,37 +11280,26 @@ } }, "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": "*" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/mocha/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11369,10 +11362,11 @@ } }, "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -11380,15 +11374,6 @@ "node": ">=10" } }, - "node_modules/mocha/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/mocha/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -11523,10 +11508,11 @@ } }, "node_modules/mocha/node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -11597,18 +11583,6 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -15807,10 +15781,11 @@ } }, "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" } @@ -17536,10 +17511,11 @@ } }, "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "dev": true, + "license": "Apache-2.0" }, "node_modules/wrap-ansi": { "version": "6.2.0", diff --git a/package.json b/package.json index 132b2ad0e4..24646e81a8 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "node --require @babel/register ./utils/sample-linter.js" ] }, - "version": "1.11.7", + "version": "1.11.8", "devDependencies": { "@babel/core": "^7.7.7", "@babel/preset-env": "^7.10.2", diff --git a/src/accessibility/outputs.js b/src/accessibility/outputs.js index 1680f18e31..d712c008bc 100644 --- a/src/accessibility/outputs.js +++ b/src/accessibility/outputs.js @@ -461,7 +461,7 @@ p5.prototype._accsOutput = function(f, args) { if (f === 'line') { //make color stroke include.color = this.ingredients.colors.stroke; - //get lenght + //get length include.length = Math.round(this.dist(args[0], args[1], args[2], args[3])); //get position of end points let p1 = this._getPos(args[0], [1]); diff --git a/src/core/friendly_errors/sketch_reader.js b/src/core/friendly_errors/sketch_reader.js index 01e0076edc..b70e86bf96 100644 --- a/src/core/friendly_errors/sketch_reader.js +++ b/src/core/friendly_errors/sketch_reader.js @@ -202,7 +202,7 @@ if (typeof IS_MINIFIED !== 'undefined') { /** * Converts code written by the user to an array - * every element of which is a seperate line of code. + * every element of which is a separate line of code. * * @method codeToLines * @private diff --git a/src/core/p5.Renderer.js b/src/core/p5.Renderer.js index 41417b3606..21ce3bd64b 100644 --- a/src/core/p5.Renderer.js +++ b/src/core/p5.Renderer.js @@ -86,9 +86,7 @@ class Renderer extends p5.Element { _textAlign: this._textAlign, _textBaseline: this._textBaseline, _textStyle: this._textStyle, - _textWrap: this._textWrap, - _colorMode: this._colorMode, - _colorMaxes: this._colorMaxes.slice() + _textWrap: this._textWrap } }; } diff --git a/src/dom/dom.js b/src/dom/dom.js index 6bafb5bae4..a5e1c54a5c 100644 --- a/src/dom/dom.js +++ b/src/dom/dom.js @@ -2023,7 +2023,7 @@ p5.prototype.createInput = function (value = '', type = 'text') { * let y = i * 20; * * // Draw the image. - * image(img, 0, y, 100, 100); + * image(images[i], 0, y, 100, 100); * } * * describe('A gray square with a file input beneath it. If the user selects multiple image files to load, they are displayed on the square.'); @@ -2082,15 +2082,6 @@ function createMedia(pInst, type, src, callback) { elt.appendChild(sourceEl); } - // If callback is provided, attach to element - if (typeof callback === 'function') { - const callbackHandler = () => { - callback(); - elt.removeEventListener('canplaythrough', callbackHandler); - }; - elt.addEventListener('canplaythrough', callbackHandler); - } - const mediaEl = addElement(elt, pInst, true); mediaEl.loadedmetadata = false; @@ -2109,6 +2100,15 @@ function createMedia(pInst, type, src, callback) { mediaEl.loadedmetadata = true; }); + // If callback is provided, attach to element + if (typeof callback === 'function') { + const callbackHandler = () => { + callback(mediaEl); + elt.removeEventListener('canplaythrough', callbackHandler); + }; + elt.addEventListener('canplaythrough', callbackHandler); + } + return mediaEl; } diff --git a/src/image/p5.Image.js b/src/image/p5.Image.js index 8ab3175afc..1db788cd9c 100644 --- a/src/image/p5.Image.js +++ b/src/image/p5.Image.js @@ -798,7 +798,7 @@ p5.Image = class { * // Display the image. * image(img, 17, 17); * - * describe('A square with a horiztonal color gradient from black to white drawn on a gray background.'); + * describe('A square with a horizontal color gradient from black to white drawn on a gray background.'); * } * * diff --git a/src/image/pixels.js b/src/image/pixels.js index effda98199..aeaf6761a2 100644 --- a/src/image/pixels.js +++ b/src/image/pixels.js @@ -1083,7 +1083,7 @@ p5.prototype.loadPixels = function(...args) { * // Update the canvas. * updatePixels(); * - * describe('A horiztonal color gradient from black to white.'); + * describe('A horizontal color gradient from black to white.'); * } * * diff --git a/src/io/p5.Table.js b/src/io/p5.Table.js index 4e05615bee..cc0e3f92e9 100644 --- a/src/io/p5.Table.js +++ b/src/io/p5.Table.js @@ -1196,7 +1196,7 @@ p5.Table = class { * * function preload() { * // table is comma separated value "CSV" - * // and has specifiying header for column labels + * // and has specifying header for column labels * table = loadTable('assets/mammals.csv', 'csv', 'header'); * } * @@ -1303,7 +1303,7 @@ p5.Table = class { * * function preload() { * // table is comma separated value "CSV" - * // and has specifiying header for column labels + * // and has specifying header for column labels * table = loadTable('assets/mammals.csv', 'csv', 'header'); * } * diff --git a/src/webgl/shaders/lighting.glsl b/src/webgl/shaders/lighting.glsl index b66ac083d1..4110fcf2a4 100644 --- a/src/webgl/shaders/lighting.glsl +++ b/src/webgl/shaders/lighting.glsl @@ -108,7 +108,7 @@ vec2 mapTextureToNormal( vec3 v ){ vec3 calculateImageDiffuse(vec3 vNormal, vec3 vViewPosition, float metallic){ - // make 2 seperate builds + // make 2 separate builds vec3 worldCameraPosition = vec3(0.0, 0.0, 0.0); // hardcoded world camera position vec3 worldNormal = normalize(vNormal * uCameraRotation); vec2 newTexCoor = mapTextureToNormal( worldNormal ); diff --git a/tasks/build/browserify.js b/tasks/build/browserify.js index 2d3fa59245..0af45c985a 100644 --- a/tasks/build/browserify.js +++ b/tasks/build/browserify.js @@ -37,7 +37,7 @@ module.exports = function(grunt) { if (isDev) { globalVars['P5_DEV_BUILD'] = () => true; } - // Invoke Browserify programatically to bundle the code + // Invoke Browserify programmatically to bundle the code let browserified = browserify(srcFilePath, { standalone: 'p5', insertGlobalVars: globalVars diff --git a/tasks/build/combineModules.js b/tasks/build/combineModules.js index 17db3f898b..6fb699a66c 100644 --- a/tasks/build/combineModules.js +++ b/tasks/build/combineModules.js @@ -52,7 +52,7 @@ module.exports = function(grunt) { // Target file path const libFilePath = path.resolve('lib/modules/' + filename); - // Invoke Browserify programatically to bundle the code + // Invoke Browserify programmatically to bundle the code let browseified = browserify(tempFilePath, { standalone: 'p5' }); diff --git a/test/manual-test-examples/tutorials/DOM-extensions/6/sketch.js b/test/manual-test-examples/tutorials/DOM-extensions/6/sketch.js index 1bf5484a72..d1df4138ad 100644 --- a/test/manual-test-examples/tutorials/DOM-extensions/6/sketch.js +++ b/test/manual-test-examples/tutorials/DOM-extensions/6/sketch.js @@ -35,7 +35,7 @@ function draw() { //drawEllipseCanvas(); } -// Addtional drawing functions. +// Additional drawing functions. function drawEllipseCanvas() { background(120, 180, 200); ellipse(width / 2, height / 2, 100, 100); diff --git a/test/manual-test-examples/tutorials/DOM-extensions/7/sketch.js b/test/manual-test-examples/tutorials/DOM-extensions/7/sketch.js index 3ad19088fe..c43241d7b2 100644 --- a/test/manual-test-examples/tutorials/DOM-extensions/7/sketch.js +++ b/test/manual-test-examples/tutorials/DOM-extensions/7/sketch.js @@ -39,7 +39,7 @@ function draw() { drawRectCanvas(); } -// Addtional drawing functions. +// Additional drawing functions. function drawEllipseCanvas() { background(120, 180, 200); ellipse(width / 2, height / 2, 100, 100); diff --git a/test/unit/assets/books.xml b/test/unit/assets/books.xml index baf002f7f7..3d54056b05 100644 --- a/test/unit/assets/books.xml +++ b/test/unit/assets/books.xml @@ -83,7 +83,7 @@ Science Fiction 6.95 2000-11-02 - After an inadvertant trip through a Heisenberg + After an inadvertent trip through a Heisenberg Uncertainty Device, James Salway discovers the problems of being quantum. @@ -117,4 +117,4 @@ integrated into a comprehensive development environment. - \ No newline at end of file + diff --git a/test/unit/core/environment.js b/test/unit/core/environment.js index 4ab600a0e9..ed40189581 100644 --- a/test/unit/core/environment.js +++ b/test/unit/core/environment.js @@ -41,7 +41,7 @@ suite('Environment', function() { frames += 1; assert.equal(myp5.frameCount, frames); if (frames === start + 5) { - // Test 5 seperate redraws + // Test 5 separate redraws myp5.noLoop(); setTimeout(myp5.redraw.bind(myp5), 10); setTimeout(myp5.redraw.bind(myp5), 20); diff --git a/test/unit/core/error_helpers.js b/test/unit/core/error_helpers.js index 75ad06e31f..ccdd9d3047 100644 --- a/test/unit/core/error_helpers.js +++ b/test/unit/core/error_helpers.js @@ -237,7 +237,7 @@ suite('Error Helpers', function() { suite('validateParameters: argument tree', function() { // should not throw a validation error for the same kind of wrong args - // more than once. This prevents repetetive validation logs for a + // more than once. This prevents repetitive validation logs for a // function that is called in a loop or draw() testUnMinified( 'no repeated validation error for the same wrong arguments', @@ -440,7 +440,7 @@ suite('Error Helpers', function() { } ); - testUnMinified('detects spelling + captialization mistakes', function() { + testUnMinified('detects spelling + capitalization mistakes', function() { const logMsg = help(new ReferenceError('RandomGossian is not defined')); assert.match( logMsg, @@ -522,7 +522,7 @@ suite('Error Helpers', function() { }); }); -// seperating in another suite because these don't need to initialize myp5 +// separating in another suite because these don't need to initialize myp5 // for each test. Instead they initialize p5 in the iframe. These tests are // also slower than the above ones. suite('Global Error Handling', function() { @@ -566,7 +566,7 @@ suite('Global Error Handling', function() { return iframe; }; - testUnMinified('identifies errors happenning internally', function() { + testUnMinified('identifies errors happening internally', function() { return new Promise(function(resolve) { // quite an unusual way to test, but the error listener doesn't work // under mocha. Also the stacktrace gets filled with mocha internal @@ -590,7 +590,7 @@ suite('Global Error Handling', function() { }); testUnMinified( - 'identifies errors happenning internally in ES6 classes', + 'identifies errors happening internally in ES6 classes', function() { return new Promise(function(resolve) { prepSyntaxTest( diff --git a/test/unit/core/rendering.js b/test/unit/core/rendering.js index 2f917a2ace..8e932761ed 100644 --- a/test/unit/core/rendering.js +++ b/test/unit/core/rendering.js @@ -174,14 +174,14 @@ suite('Rendering', function() { webglMethod + '() should throw a WEBGL assertion Error', (function(webglMethod) { return function() { - var validateParamters = myp5.validateParameters; + var validateParameters = myp5.validateParameters; myp5.validateParameters = false; try { expect(function() { myp5[webglMethod].call(myp5); }).to.throw(Error, /is only supported in WEBGL mode/); } finally { - myp5.validateParameters = validateParamters; + myp5.validateParameters = validateParameters; } }; })(webglMethod) From 64bc57aa1d62050ba19f8b9deac27ed061f9a259 Mon Sep 17 00:00:00 2001 From: Quinton Ashley Date: Sat, 7 Jun 2025 18:21:01 -0500 Subject: [PATCH 19/61] Respect p5.disableFriendlyErrors Respect `p5.disableFriendlyErrors` setting when overriding p5 global variables --- src/core/main.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/core/main.js b/src/core/main.js index 4e9684dc80..bd2cd2055a 100644 --- a/src/core/main.js +++ b/src/core/main.js @@ -848,9 +848,11 @@ class p5 { value: newValue, writable: true }); - log( - `You just changed the value of "${prop}", which was a p5 function. This could cause problems later if you're not careful.` - ); + if (!p5.disableFriendlyErrors) { + log( + `You just changed the value of "${prop}", which was a p5 function. This could cause problems later if you're not careful.` + ); + } } }); } catch (e) { From 2a4df66011733ae826301c1d71daf7b022c5db61 Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:25:38 +0200 Subject: [PATCH 20/61] Update stewards-update.yml to fix typo and include token --- .github/workflows/stewards-update.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml index ed6ad9668f..930a4ac63a 100644 --- a/.github/workflows/stewards-update.yml +++ b/.github/workflows/stewards-update.yml @@ -29,5 +29,6 @@ jobs: commit-message: "Update README table from stewards.yml" branch: update-readme-table title: 'chore: update README table from stewards.yml' - body: 'This PR updates the README.md table to refelct changes in stewards.yml.' + body: 'This PR updates the README.md table to reflect changes in stewards.yml.' add: README.md + token: ${{ secrets.ACCESS_TOKEN }} From c87081f528bfc789516e00c96e56ff889c6bc6f7 Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 10 Jun 2025 07:38:13 +0200 Subject: [PATCH 21/61] Added p5.js-website accessibility steward stewards.yml Adding @coseeian community as Web Accessibility Stewards for the p5.js-website --- stewards.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/stewards.yml b/stewards.yml index e1465bec97..da59ad2da6 100644 --- a/stewards.yml +++ b/stewards.yml @@ -81,4 +81,6 @@ takshittt: clairep94: - p5.js-website - +coseeian: + - Accessibility: + - p5.js-website From de689ab684f00a7414c3c9fdc1622b24b4f3ee5f Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 10 Jun 2025 08:06:45 +0200 Subject: [PATCH 22/61] Enable workflow_dispatch trigger on stewards table update --- .github/workflows/stewards-update.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml index 930a4ac63a..04d4ca3f82 100644 --- a/.github/workflows/stewards-update.yml +++ b/.github/workflows/stewards-update.yml @@ -5,6 +5,7 @@ on: branches: [main] paths: - stewards.yml + workflow_dispatch: jobs: build: From c5db908b3482d2c9589f7c8e3e10ecc10bd565c0 Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Tue, 10 Jun 2025 13:35:00 +0200 Subject: [PATCH 23/61] Update stewards-update.yml to only make PR with README --- .github/workflows/stewards-update.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml index 04d4ca3f82..d8ef9de2ca 100644 --- a/.github/workflows/stewards-update.yml +++ b/.github/workflows/stewards-update.yml @@ -24,6 +24,12 @@ jobs: - name: Run table generator run: node utils/stewards-table.js + - name: Reset all changes except README.md + run: | + git restore --staged . + git add README.md + git checkout -- . + - name: Create Pull Request uses: peter-evans/create-pull-request@v5 with: From 87538dd3d9eab5cb07caed31140f3faa047b4732 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Tue, 10 Jun 2025 06:17:09 +0000 Subject: [PATCH 24/61] Update README table from stewards.yml --- .github/workflows/stewards-update.yml | 2 +- README.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml index 04d4ca3f82..a3a6c57b09 100644 --- a/.github/workflows/stewards-update.yml +++ b/.github/workflows/stewards-update.yml @@ -5,7 +5,7 @@ on: branches: [main] paths: - stewards.yml - workflow_dispatch: + workflow_dispatch: jobs: build: diff --git a/README.md b/README.md index 8de3d5a846..9695521337 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,7 @@ Lead/Mentor Alumni |------|-------------| | Maintainers | [@davepagurek](https://github.com/davepagurek), [@ksen0](https://github.com/ksen0), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17), [@qianqianye](https://github.com/qianqianye) | | Accessibility | [@calebfoss](https://github.com/calebfoss) | +| Accessibility (p5.js-website) | [@coseeian](https://github.com/coseeian) | | Color | [@limzykenneth](https://github.com/limzykenneth) | | Core | [@davepagurek](https://github.com/davepagurek) | | DevOps | [@Vaivaswat2244](https://github.com/Vaivaswat2244), [@error-four-o-four](https://github.com/error-four-o-four), [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | From 7d82a7fd714e0b0965318abd9228146f02779e66 Mon Sep 17 00:00:00 2001 From: Ben Gilbert Date: Tue, 10 Jun 2025 16:00:50 +0100 Subject: [PATCH 25/61] merge main (#2) * Fixed loop variable in createFileInput() docs (dom.js) * Bump serialize-javascript and mocha Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) to 6.0.2 and updates ancestor dependency [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together. Updates `serialize-javascript` from 6.0.0 to 6.0.2 - [Release notes](https://github.com/yahoo/serialize-javascript/releases) - [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.0...v6.0.2) Updates `mocha` from 10.2.0 to 10.8.2 - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v10.2.0...v10.8.2) --- updated-dependencies: - dependency-name: serialize-javascript dependency-type: indirect - dependency-name: mocha dependency-type: direct:development ... Signed-off-by: dependabot[bot] * Bump elliptic from 6.6.0 to 6.6.1 Bumps [elliptic](https://github.com/indutny/elliptic) from 6.6.0 to 6.6.1. - [Commits](https://github.com/indutny/elliptic/compare/v6.6.0...v6.6.1) --- updated-dependencies: - dependency-name: elliptic dependency-type: indirect ... Signed-off-by: dependabot[bot] * added instance of video in callback * Revert "fix: push() ignoring the ColorMode #7402" * Fix typos * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * Add @dpanshug for doc * Add stewards list and updating action * Udpate stewardship guidelines * Update steward_guidelines.md * Update stewards.yml * Update contributor_docs/steward_guidelines.md Co-authored-by: Dave Pagurek * Update contributor_docs/steward_guidelines.md Co-authored-by: Kenneth Lim * Update contributor_docs/steward_guidelines.md Co-authored-by: Kenneth Lim * Clarified to the stewardship responsibilities list * Update reference.js * Update reference.js.map * Update books.xml * Update error_helpers.js * Update sketch.js * Update sketch.js * Update p5.Table.js * Update p5.Image.js * Update pixels.js * Remove generated reference.js.map from PR * Restore generated file to match upstream main * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * Fixes in guideline and new stewards * Add onboarding to steward guideline * 1.11.8 * Clean up stewards table generation * Update issue labeler to include new steward areas * docs: update README.md [skip ci] * docs: update .all-contributorsrc [skip ci] * Respect p5.disableFriendlyErrors Respect `p5.disableFriendlyErrors` setting when overriding p5 global variables * Update stewards-update.yml to fix typo and include token * Added p5.js-website accessibility steward stewards.yml Adding @coseeian community as Web Accessibility Stewards for the p5.js-website * Enable workflow_dispatch trigger on stewards table update * Update stewards-update.yml to only make PR with README * Update README table from stewards.yml --------- Signed-off-by: dependabot[bot] Co-authored-by: Andrew McWhae Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Soubhagya Mohapatra Co-authored-by: kit <1304340+ksen0@users.noreply.github.com> Co-authored-by: omahs <73983677+omahs@users.noreply.github.com> Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: raclim <43053081+raclim@users.noreply.github.com> Co-authored-by: Perminder Singh <127239756+perminder-17@users.noreply.github.com> Co-authored-by: ksen0 Co-authored-by: Dave Pagurek Co-authored-by: Kenneth Lim Co-authored-by: sukrucildirr Co-authored-by: Quinton Ashley Co-authored-by: ksen0 --- .github/ISSUE_TEMPLATE/2-found-a-bug.yml | 8 +-- .github/labeler.yml | 10 ++- .github/workflows/stewards-update.yml | 41 +++++++++++ README.md | 45 +++++++------ contributor_docs/steward_guidelines.md | 64 +++++++++++++++++- src/core/main.js | 8 ++- stewards.yml | 86 ++++++++++++++++++++++++ utils/stewards-table.js | 56 +++++++++++++++ 8 files changed, 287 insertions(+), 31 deletions(-) create mode 100644 .github/workflows/stewards-update.yml create mode 100644 stewards.yml create mode 100644 utils/stewards-table.js diff --git a/.github/ISSUE_TEMPLATE/2-found-a-bug.yml b/.github/ISSUE_TEMPLATE/2-found-a-bug.yml index dd06e29725..948c2f1c37 100644 --- a/.github/ISSUE_TEMPLATE/2-found-a-bug.yml +++ b/.github/ISSUE_TEMPLATE/2-found-a-bug.yml @@ -19,11 +19,11 @@ body: - label: Math - label: Typography - label: Utilities + - label: p5.strands - label: WebGL - - label: Build process - - label: Unit testing - - label: Internationalization - - label: Friendly errors + - label: DevOps, Build process, Unit testing + - label: Internationalization (i18n) + - label: Friendly Errors - label: Other (specify if possible) - type: input attributes: diff --git a/.github/labeler.yml b/.github/labeler.yml index daa971834c..a593e7c8e9 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -22,11 +22,17 @@ - '\[[xX]\]\s*Utilities' "Area:WebGL": - '\[[xX]\]\s*WebGL' +"Internationalization": + - '\[[xX]\]\s*Internationalization' +"DevOps": + - '\[[xX]\]\s*Build Process' +"DevOps": + - '\[[xX]\]\s*Unit Testing' "Build Process": - '\[[xX]\]\s*Build Process' "Unit Testing": - '\[[xX]\]\s*Unit Testing' -"Internationalization": - - '\[[xX]\]\s*Internationalization' "Friendly Errors": - '\[[xX]\]\s*Friendly Errors' +"p5.strands": + - '\[[xX]\]\s*p5.strands' diff --git a/.github/workflows/stewards-update.yml b/.github/workflows/stewards-update.yml new file mode 100644 index 0000000000..3d2b56ea33 --- /dev/null +++ b/.github/workflows/stewards-update.yml @@ -0,0 +1,41 @@ +name: Update Steward Table in README + +on: + push: + branches: [main] + paths: + - stewards.yml + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install dependencies + run: npm install js-yaml + + - name: Run table generator + run: node utils/stewards-table.js + + - name: Reset all changes except README.md + run: | + git restore --staged . + git add README.md + git checkout -- . + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v5 + with: + commit-message: "Update README table from stewards.yml" + branch: update-readme-table + title: 'chore: update README table from stewards.yml' + body: 'This PR updates the README.md table to reflect changes in stewards.yml.' + add: README.md + token: ${{ secrets.ACCESS_TOKEN }} diff --git a/README.md b/README.md index ff94232d3b..9695521337 100644 --- a/README.md +++ b/README.md @@ -86,27 +86,30 @@ Lead/Mentor Alumni * [@qianqianye](https://github.com/qianqianye) - p5.js Lead,2021-present (on leave) * [@outofambit](https://github.com/outofambit) - p5.js Co-Lead 2021-22, Mentor 2022-2023 * [@mcturner1995](https://github.com/mcturner1995) - p5.js Lead 2020 - -| Area | Steward(s) | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| Overall | [@ksen0](https://github.com/ksen0) | -| [Accessibility](https://github.com/processing/p5.js/tree/main/src/accessibility) | [@calebfoss](https://github.com/calebfoss), [@cosmicbhejafry](https://github.com/cosmicbhejafry), [@apoorva-a98](https://github.com/apoorva-a98), [@tedkmburu](https://github.com/tedkmburu), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@nhasalajoshi](https://github.com/nhasalajoshi)| -| [Color](https://github.com/processing/p5.js/tree/main/src/color) | [@paulaxisabel](https://github.com/paulaxisabel), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@mrbrack](https://github.com/mrbrack), [@TJ723](https://github.com/TJ723), [@Zarkv](https://github.com/Zarkv), [@SkylerW99](https://github.com/SkylerW99), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Core](https://github.com/processing/p5.js/tree/main/src/core)/Environment/Rendering | [@limzykenneth](https://github.com/limzykenneth), [@davepagurek](https://github.com/davepagurek), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@tuminzee](https://github.com/tuminzee), [@Zarkv](https://github.com/Zarkv), [@robin-haxx](https://github.com/robin-haxx), [@Gaurav-1306](https://github.com/Gaurav-1306) | -| [Data](https://github.com/processing/p5.js/tree/main/src/data) | [@angelabelle](https://github.com/angelabelle), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@SkylerW99](https://github.com/SkylerW99), [@nhasalajoshi](https://github.com/nhasalajoshi) | -| [DOM](https://github.com/processing/p5.js/tree/main/src/dom) | [@SarveshLimaye](https://github.com/SarveshLimaye), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@ramya202000](https://github.com/ramya202000), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@MarceloGoncalves](https://github.com/MarceloGoncalves), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Events](https://github.com/processing/p5.js/tree/main/src/events) | [@limzykenneth](https://github.com/limzykenneth), [@richardegil](https://github.com/richardegil), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@TanviKumar](https://github.com/TanviKumar), [@tuminzee](https://github.com/tuminzee) | -| [Image](https://github.com/processing/p5.js/tree/main/src/image) | [@cgusb](https://github.com/cgusb), [@albertomancia](https://github.com/albertomancia), [@ramya202000](https://github.com/ramya202000), [@hannahvy](https://github.com/hannahvy), [@robin-haxx](https://github.com/robin-haxx)| -| [IO](https://github.com/processing/p5.js/tree/main/src/io) | [@limzykenneth](https://github.com/limzykenneth), [@Pritam1136](https://github.com/Pritam1136), [@shahankhatch](https://github.com/shahankhatch), [@TanviKumar](https://github.com/TanviKumar), [@jeanetteandrews](https://github.com/jeanetteandrews)| -| [Math](https://github.com/processing/p5.js/tree/main/src/math) | [@limzykenneth](https://github.com/limzykenneth), [@ericnlchen](https://github.com/ericnlchen), [@ChihYungChang](https://github.com/ChihYungChang), [@bsubbaraman](https://github.com/bsubbaraman), [@albertomancia](https://github.com/albertomancia), [@JazerUCSB](https://github.com/JazerUCSB), [@tedkmburu](https://github.com/tedkmburu), [@perminder-17](https://github.com/perminder-17), [@Obi-Engine10](https://github.com/Obi-Engine10), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| [Typography](https://github.com/processing/p5.js/tree/main/src/typography) | [@dhowe](https://github.com/dhowe), [@paulaxisabel](https://github.com/paulaxisabel), [@SarveshLimaye](https://github.com/SarveshLimaye), [@SkylerW99](https://github.com/SkylerW99), [@BamaCharanChhandogi](https://github.com/BamaCharanChhandogi), [@Obi-Engine10](https://github.com/Obi-Engine10), [@hannahvy](https://github.com/hannahvy), [@singshris](https://github.com/singshris), [@hiddenenigma](https://github.com/hiddenenigma) | -| [Utilities](https://github.com/processing/p5.js/tree/main/src/utilities) | [@limzykenneth](https://github.com/limzykenneth), [@glopzel](https://github.com/glopzel) | -| [WebGL](https://github.com/processing/p5.js/tree/main/src/webgl) | [@davepagurek](https://github.com/davepagurek), [@aferriss](https://github.com/aferriss), [@aceslowman](https://github.com/aceslowman), [@ShenpaiSharma](https://github.com/ShenpaiSharma), [@ChihYungChang](https://github.com/ChihYungChang), [@teragramgius](https://github.com/teragramgius), [@JazerUCSB](https://github.com/JazerUCSB), [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@Gaurav-1306](https://github.com/Gaurav-1306), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| [Internalization](https://github.com/processing/p5.js/blob/main/src/core/internationalization.js) | [@limzykenneth](https://github.com/limzykenneth) | -| [Friendly Errors](https://github.com/processing/p5.js/tree/main/src/core/friendly_errors) | [@richardegil](https://github.com/richardegil), [@itsjoopark](https://github.com/itsjoopark), [@hannahvy](https://github.com/hannahvy), [@bisabi-01](https://github.com/bisabi-01), [@singshris](https://github.com/singshris) | -| [Contributor Docs](https://github.com/processing/p5.js/tree/main/contributor_docs) |[@limzykenneth](https://github.com/limzykenneth), [@asukaminato0721](https://github.com/asukaminato0721), [@SoundaryaKoutharapu](https://github.com/SoundaryaKoutharapu), [@richardegil](https://github.com/richardegil), [@hannahvy](https://github.com/hannahvy), [@bayomayo](https://github.com/bayomayo) | -| [p5.sound](https://github.com/processing/p5.sound.js) |[@miguellacorte](https://github.com/miguellacorte), [@JazerUCSB](https://github.com/JazerUCSB), [@angelabelle](https://github.com/angelabelle), [@littlejacinthe](https://github.com/littlejacinthe), [@hannahvy](https://github.com/hannahvy), [@glopzel](https://github.com/glopzel), [@singshris](https://github.com/singshris), [@jeanetteandrews](https://github.com/jeanetteandrews) | -| Build Process/Unit Testing | [@limzykenneth](https://github.com/limzykenneth) | + + + +| Area | Steward(s) | +|------|-------------| +| Maintainers | [@davepagurek](https://github.com/davepagurek), [@ksen0](https://github.com/ksen0), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17), [@qianqianye](https://github.com/qianqianye) | +| Accessibility | [@calebfoss](https://github.com/calebfoss) | +| Accessibility (p5.js-website) | [@coseeian](https://github.com/coseeian) | +| Color | [@limzykenneth](https://github.com/limzykenneth) | +| Core | [@davepagurek](https://github.com/davepagurek) | +| DevOps | [@Vaivaswat2244](https://github.com/Vaivaswat2244), [@error-four-o-four](https://github.com/error-four-o-four), [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | +| Documentation | [@VANSH3104](https://github.com/VANSH3104), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17) | +| Friendly Errors | [@IITM-Jay](https://github.com/IITM-Jay) | +| Graphics (p5.strands) | [@lukeplowden](https://github.com/lukeplowden) | +| Graphics (WebGL) | [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) | +| i18n (hi) | [@Divyansh013](https://github.com/Divyansh013), [@takshittt](https://github.com/takshittt) | +| i18n (zh) | [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | +| Math | [@GregStanton](https://github.com/GregStanton), [@holomorfo](https://github.com/holomorfo) | +| p5.js-website | [@clairep94](https://github.com/clairep94), [@ksen0](https://github.com/ksen0) | +| p5.sound.js | [@ogbabydiesal](https://github.com/ogbabydiesal) | +| Shapes | [@GregStanton](https://github.com/GregStanton) | +| Typography | [@dhowe](https://github.com/dhowe) | +| WebGL | [@RandomGamingDev](https://github.com/RandomGamingDev) | + ## Contributors diff --git a/contributor_docs/steward_guidelines.md b/contributor_docs/steward_guidelines.md index 98cbdbebdc..2b271f8ba1 100644 --- a/contributor_docs/steward_guidelines.md +++ b/contributor_docs/steward_guidelines.md @@ -2,11 +2,16 @@ # Steward Guidelines -Whether you have just joined us as a steward, are a seasoned maintainer of p5.js, or are somewhere in between, this guide contains information as well as tips and tricks that will help you effectively contribute to p5.js. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. +Whether you are new to p5.js contribution, are already active on the p5.js GitHub repositories, or are somewhere in between, you'll find what you need in this guide to p5.js stewardship. If you are not sure what to expect from stewards, or if you are considering how to volunteer or get started as a steward, read on! ## Table of Contents +- [Stewardship](#stewardship) + - [Community Care](#community-care) + - [Areas](#areas) + - [Becoming a Steward](#becoming-a-steward) + - [Getting Started with Stewardship](#getting-started-with-stewardship) - [Issues](#issues) - [Bug report](#bug-report) - [Feature request](#feature-request) @@ -28,6 +33,63 @@ Whether you have just joined us as a steward, are a seasoned maintainer of p5.js --- +## Stewardship + +### Community Care + +An open source ethos includes [accessibility, education, collaboration, transparency, and agency](https://www.opensourceethos.net/). To live and practice these values while we write code together needs a lot of community care. These are the community care practices that are part of our definition of stewardship: + +1. Welcoming new contributors to GitHub through **friendly comments** and helpful **code reviews** +2. Helping to **facilitate feature discussions** and resolve technical disagreements. For example, this means making connections to other past discussion, or offering input from prior relevant experience. Suggesting features or working on them is contribution, rather than stewardship. +3. Participating in releases of the p5.js software through **supporting** bug fixing and feature completion. For example, this means guiding other contributors and reviewing their PRs. Fixing bugs is contribution, rather than stewardship. + +The rest of these guidelines provide some tips and tricks that will help you effectively contribute to p5.js, and to helpfully guide others' contributions. Most of what is written here are guidelines unless otherwise stated, which means you can adapt the practices shown here to suit your workflow. + +Everyone is invited to help steward the community when they can! We are happy to see contributors welcome new contributors, review others' code, and provide API design feedback. There are also some concrete roles: + +1. Contributors are able to make Issues, PRs, Comments, and Code Reviews. +2. Maintainers are also able to merge PRs and admin other parts of the codebase. + +Stewards can also be contributors: they can make Issues and PRs as contributors, while they also take on responsibility, when they are stewarding a particular area, to comment on issues and do code reviews, especially when tagged by other contributors to help with discussion and review. + +As a contributor, you can check the current stewards in the p5.js repository's README file and tag relevant stewards - but please be mindful of our contributor guidelines, which emphasize patience and mindfulness that most of the technical work on an open-source project is volunteer. + +As a steward, we hope that you regularly chime in on code reviews on Issues or PRs that you did not make, if they are in your area and if you are able to provide helpful guidance! + +### Areas + +There are different areas of work that stewards can be responsible for. These areas match the GitHub Labels in most cases, with a couple of exceptions. Below is the list of areas. + +- **Accessibility**: This area specifically refers to digital and web accessibility, including, for example, screen reader support via API like `describe(..)` as well as accessibility support on the reference website +- **Core**: Refers to core p5.js API, including rendering and environment +- **DevOps**: Refers to build process, unit testing, and other aspects of the development experience +- **Documentation**: Includes both reference in the core codebase that is exposed on the website, the contributor docs, and other website content +- i18n (Internationalization / **Translation**): Includes reviewing translations, particularly for `es`, `hi`, `ko`, `zh` +- **Graphics**: Contains subareas of WebGL and [p5.strands](https://beta.p5js.org/tutorials/intro-to-p5-strands/) +- **Color**: Includes Color, ColorMode, accessibility improvements around color usage +- **Typography**: Refers to all topics on handling text and font +- **Math**: Includes both external Math API and internal performance improvements +- **Shapes**: Includes working with custom shapes in both 1.11.x and 2.x versions of p5.js +- **Maintainers**: This group can merge PRs +- **p5.sound.js**: The [new p5.sound.js](https://github.com/processing/p5.sound.js) add-on library +- **p5.js-website**: Non-content aspects of the [reference website](https://p5js.org/) - for example, its structure, automations, technical improvements and so on. + +These focus areas may change over time depending on the needs of the project - so if you are going through the process of applying to be a steward, you are welcome to proposals new areas! + +### Becoming a Steward + +There are two ways to become a steward: + +1. _Nomination_ by maintainers or other stewards, such as in conversation over Discord, Discourse, or GitHub. +2. _Application_ by creating a PR to update `stewards.yml` with your GitHub @ and proposed areas. Please keep in mind each area should have 1-3 stewards. We are always looking for **translation stewards**! Once you make your application PR, other maintainers or stewards may ask for additional supporting material, like making a PR related to the areas you're interested in, or participating in some related discussion. + +To remain a steward, you must contribute as a steward to at least 1 of the 2 most recent minor releases (e.g., 2.1.0 or 1.11.0 - when the middle number changes). These are not as frequent as patches (e.g., 2.0.3 to 2.0.4 - when the rightmost number changes), and in practice this means that stewards are expected to be active every 4-6 months or so, supporting other contributors through discussion or code review - not necessarily writing code. To step down from stewardship, you can make a PR to remove yourself from `stewards.yml`. You are always welcome to take a pause and reapply in the future! + +### Getting Started with Stewardship + +1. Keep this guideline handy as a reference - how to help with new issues, bugs, and features. For example, the "Feature request" section includes tips on how to use the the p5.js [access statement](access.md) as a steward. +2. When helping to answer technical questions or review, try to apply the Processing Foundation [guideline on answering questions](https://discourse.processing.org/t/guidelines-answering-questions/2145) - these can be especially helpful for giving constructive technical feedback. +3. Join the [p5.js Discord](https://discord.com/invite/SHQ8dH25r9) - in the `#contribute-to-p5` you're welcome to ask any questions you have about this process - or suggest how it can be improved! ## Issues diff --git a/src/core/main.js b/src/core/main.js index b58f4de936..0e19d75ec1 100644 --- a/src/core/main.js +++ b/src/core/main.js @@ -846,9 +846,11 @@ class p5 { value: newValue, writable: true }); - log( - `You just changed the value of "${prop}", which was a p5 function. This could cause problems later if you're not careful.` - ); + if (!p5.disableFriendlyErrors) { + log( + `You just changed the value of "${prop}", which was a p5 function. This could cause problems later if you're not careful.` + ); + } } }); } catch (e) { diff --git a/stewards.yml b/stewards.yml new file mode 100644 index 0000000000..da59ad2da6 --- /dev/null +++ b/stewards.yml @@ -0,0 +1,86 @@ +aferriss: + - Graphics: + - WebGL + +calebfoss: + - Accessibility + +davepagurek: + - Core + - Maintainers + - Graphics: + - WebGL + +dhowe: + - Typography + +qianqianye: + - Maintainers + +ogbabydiesal: + - p5.sound.js + +limzykenneth: + - Maintainers + - DevOps + - Documentation + - Color + - i18n: + - zh + +perminder-17: + - Graphics: + - WebGL + - Documentation + - Maintainers + +lukeplowden: + - Graphics: + - WebGL + - p5.strands + +ksen0: + - Maintainers + - p5.js-website + +Divyansh013: + - i18n: + - hi + +GregStanton: + - Math + - Shapes + +holomorfo: + - Math + +lirenjie95: + - i18n: + - zh + - DevOps + +IITM-Jay: + - Friendly Errors + +Vaivaswat2244: + - DevOps + +RandomGamingDev: + - WebGL + +VANSH3104: + - Documentation + +error-four-o-four: + - DevOps + +takshittt: + - i18n: + - hi + +clairep94: + - p5.js-website + +coseeian: + - Accessibility: + - p5.js-website diff --git a/utils/stewards-table.js b/utils/stewards-table.js new file mode 100644 index 0000000000..fe5060f7ba --- /dev/null +++ b/utils/stewards-table.js @@ -0,0 +1,56 @@ +const yaml = require('js-yaml'); +const fs = require('fs'); + +const yamlData = fs.readFileSync('stewards.yml', 'utf8'); +const parsed = yaml.load(yamlData); + +const areaMap = {}; +const supportedi18n = new Set(['hi', 'ko', 'zh', 'es']); + + +for (const [user, roles] of Object.entries(parsed)) { + roles.forEach(role => { + if (typeof role === 'string') { + areaMap[role] = areaMap[role] || new Set(); + areaMap[role].add(`${user}`); + } else { + for (const [main, subs] of Object.entries(role)) { + subs.forEach(sub => { + if (main === 'i18n' && !supportedi18n.has(sub)) return; + const key = `${main} (${sub})`; + areaMap[key] = areaMap[key] || new Set(); + areaMap[key].add(`${user}`); + }); + } + } + }); +} + + +const startMarker = ''; +const endMarker = ''; + +const header = '| Area | Steward(s) |'; +const divider = '|------|-------------|'; + +const sortedEntries = Object.entries(areaMap).sort(([aKey], [bKey]) => { + if (aKey === 'Maintainers') return -1; + if (bKey === 'Maintainers') return 1; + return aKey.localeCompare(bKey); +}); + +const rows = sortedEntries.map(([area, users]) => `| ${area} | ${[...users].sort().map( + u => `[@${u}](https://github.com/${u})` +).join(', ')} |`).join('\n'); +const newTable = [startMarker, header, divider, rows, endMarker].join('\n'); + +let readme = fs.readFileSync('README.md', 'utf8'); + +const startIndex = readme.indexOf(startMarker); +const endIndex = readme.indexOf(endMarker) + endMarker.length; + +if (startIndex !== -1 && endIndex !== -1) { + readme = readme.slice(0, startIndex) + newTable + readme.slice(endIndex); +} + +fs.writeFileSync('README.md', readme); From 0507b95233b5bc0cb77d86c26f73a18b587d7d8f Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 11 Jun 2025 09:51:23 +0000 Subject: [PATCH 26/61] docs: update README.md [skip ci] --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 9695521337..f18365968e 100644 --- a/README.md +++ b/README.md @@ -1152,6 +1152,9 @@ We recognize all types of contributions. This project follows the [all-contribut sukrucildirr
sukrucildirr

πŸ“– Andrew McWhae
Andrew McWhae

πŸ“– + + Atmaja P.
Atmaja P.

πŸ“– + From 63c34e9e45ff8776c37d925e01adcc54346ed557 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 11 Jun 2025 09:51:25 +0000 Subject: [PATCH 27/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index f4cfbabfb1..1fe0af16e9 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6914,6 +6914,15 @@ "contributions": [ "doc" ] + }, + { + "login": "atmajaa", + "name": "Atmaja P.", + "avatar_url": "https://avatars.githubusercontent.com/u/69838867?v=4", + "profile": "https://github.com/atmajaa", + "contributions": [ + "doc" + ] } ], "repoType": "github", From 5c4225b7ea53230fafbffc6d2705defca4ee1c7c Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Thu, 12 Jun 2025 16:04:25 +0200 Subject: [PATCH 28/61] Update labeler.yml to correctly group DevOps lables --- .github/labeler.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/labeler.yml b/.github/labeler.yml index a593e7c8e9..613755a8ac 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -26,7 +26,6 @@ - '\[[xX]\]\s*Internationalization' "DevOps": - '\[[xX]\]\s*Build Process' -"DevOps": - '\[[xX]\]\s*Unit Testing' "Build Process": - '\[[xX]\]\s*Build Process' From 7cc79b640e54e8c951aab0951d82bf266dee93eb Mon Sep 17 00:00:00 2001 From: shiva Date: Thu, 12 Jun 2025 20:28:37 +0530 Subject: [PATCH 29/61] feat:revamp config.yml --- .github/config.yml | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/.github/config.yml b/.github/config.yml index c4629c14ed..7a92f38473 100644 --- a/.github/config.yml +++ b/.github/config.yml @@ -4,12 +4,26 @@ # Comment to be posted to on first time issues newIssueWelcomeComment: > - Welcome! πŸ‘‹ Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, please make sure to fill out the inputs in the issue forms. Thank you! -# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome + Welcome! πŸ‘‹ Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, please make sure to fill out the inputs in the issue forms. + + For guidance on contributing, check out our [contributing guidelines](https://github.com/processing/p5.js/blob/main/CONTRIBUTING.md) and other [resources for contributors](https://p5js.org/contribute/). + + πŸ’¬ If you have questions or need support, feel free to join the [Processing Foundation Forum](https://discourse.processing.org/) or visit our [Community page](https://p5js.org/community/). + πŸ“œ Please also review our [Code of Conduct](https://p5js.org/code-of-conduct/) to understand our community standards. + + Thank You! +# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome # Comment to be posted to on PRs from first time contributors in your repository newPRWelcomeComment: > - πŸŽ‰ Thanks for opening this pull request! Please check out our [contributing guidelines](https://github.com/processing/p5.js/blob/main/CONTRIBUTING.md) if you haven't already. And be sure to add yourself to the [list of contributors on the readme page](https://github.com/processing/p5.js#contributors)! + πŸŽ‰ Thanks for opening this pull request! For guidance on contributing, check out our [contributor guidelines](https://p5js.org/contribute/contributor_guidelines/) and other [resources for contributors](https://p5js.org/contribute)! + + πŸ€” Please ensure that your PR links to an issue, which has been approved for work by a maintainer; otherwise, there might already be someone working on it, or still ongoing discussion about implementation. You are welcome to join the discussion in an Issue if you're not sure! + + 🌸 Once your PR is merged, be sure to [add yourself](https://github.com/processing/p5.js/issues/2309) to the [list of contributors on the readme page](https://github.com/processing/p5.js#contributors) ! + + + Thank You! # Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge From a54755ae4e4696cefd89386e863a214ad30daadd Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 12 Jun 2025 22:13:36 +0000 Subject: [PATCH 30/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f18365968e..97ad8e446e 100644 --- a/README.md +++ b/README.md @@ -1154,6 +1154,7 @@ We recognize all types of contributions. This project follows the [all-contribut Atmaja P.
Atmaja P.

πŸ“– + SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– From 9147086334a16e1dc6a2227b9587ca125de29434 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 12 Jun 2025 22:13:37 +0000 Subject: [PATCH 31/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 1fe0af16e9..396ec276ff 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6923,6 +6923,20 @@ "contributions": [ "doc" ] + }, + { + "login": "SonyaCode", + "name": "SonyaCode", + "avatar_url": "https://avatars.githubusercontent.com/u/99513449?v=4", + "profile": "https://github.com/SonyaCode", + "contributions": [ + "a11y", + "blog", + "bug", + "code", + "design", + "doc" + ] } ], "repoType": "github", From 12a30298aaac6bf5eb613f64181e6da16756424f Mon Sep 17 00:00:00 2001 From: "fuder.eth" <139509124+vtjl10@users.noreply.github.com> Date: Sat, 14 Jun 2025 16:23:29 +0200 Subject: [PATCH 32/61] Update textOutput.js --- src/accessibility/textOutput.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/accessibility/textOutput.js b/src/accessibility/textOutput.js index 5e37fd5781..1fe2dc8137 100644 --- a/src/accessibility/textOutput.js +++ b/src/accessibility/textOutput.js @@ -59,7 +59,7 @@ function _textSummary(numShapes, background, width, height) { function _shapeDetails(idT, ingredients) { let shapeDetails = ''; let shapeNumber = 0; - //goes trhough every shape type in ingredients + //goes through every shape type in ingredients for (let x in ingredients) { //and for every shape for (let y in ingredients[x]) { @@ -91,7 +91,7 @@ function _shapeDetails(idT, ingredients) { function _shapeList(idT, ingredients) { let shapeList = ''; let shapeNumber = 0; - //goes trhough every shape type in ingredients + //goes through every shape type in ingredients for (let x in ingredients) { for (let y in ingredients[x]) { //it creates a line in a list From d72130957cd35305c931e48d0a2fde5d9d78d217 Mon Sep 17 00:00:00 2001 From: IIITM-Jay Date: Sat, 14 Jun 2025 19:53:37 +0530 Subject: [PATCH 33/61] Correct username in stewards.yml --- stewards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stewards.yml b/stewards.yml index da59ad2da6..0c96b3337c 100644 --- a/stewards.yml +++ b/stewards.yml @@ -59,7 +59,7 @@ lirenjie95: - zh - DevOps -IITM-Jay: +IIITM-Jay: - Friendly Errors Vaivaswat2244: From 5b30f9cb2f136137819b3fed0527c637bd976c14 Mon Sep 17 00:00:00 2001 From: perminder-17 Date: Mon, 16 Jun 2025 12:03:17 +0000 Subject: [PATCH 34/61] Update README table from stewards.yml --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 97ad8e446e..6b89d2294d 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ Lead/Mentor Alumni | Core | [@davepagurek](https://github.com/davepagurek) | | DevOps | [@Vaivaswat2244](https://github.com/Vaivaswat2244), [@error-four-o-four](https://github.com/error-four-o-four), [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | | Documentation | [@VANSH3104](https://github.com/VANSH3104), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17) | -| Friendly Errors | [@IITM-Jay](https://github.com/IITM-Jay) | +| Friendly Errors | [@IIITM-Jay](https://github.com/IIITM-Jay) | | Graphics (p5.strands) | [@lukeplowden](https://github.com/lukeplowden) | | Graphics (WebGL) | [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) | | i18n (hi) | [@Divyansh013](https://github.com/Divyansh013), [@takshittt](https://github.com/takshittt) | From 2129ba339b99b494d37753ff35c459052ab754c2 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 16 Jun 2025 12:07:55 +0000 Subject: [PATCH 35/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 97ad8e446e..6f6542f82c 100644 --- a/README.md +++ b/README.md @@ -1155,6 +1155,7 @@ We recognize all types of contributions. This project follows the [all-contribut Atmaja P.
Atmaja P.

πŸ“– SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– + fuder.eth
fuder.eth

πŸ“– From a3308ca6dd58bf55eaa27dc21a050b881f78f398 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 16 Jun 2025 12:07:56 +0000 Subject: [PATCH 36/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 396ec276ff..efc05acbed 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6937,6 +6937,15 @@ "design", "doc" ] + }, + { + "login": "vtjl10", + "name": "fuder.eth", + "avatar_url": "https://avatars.githubusercontent.com/u/139509124?v=4", + "profile": "https://github.com/vtjl10", + "contributions": [ + "doc" + ] } ], "repoType": "github", From cb0460924002a21db3bd3986298a9b4e7683d1f6 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 16 Jun 2025 17:03:33 +0000 Subject: [PATCH 37/61] docs: update README.md [skip ci] --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c0548e4f5a..0e4fbfc203 100644 --- a/README.md +++ b/README.md @@ -1141,7 +1141,7 @@ We recognize all types of contributions. This project follows the [all-contribut Claire Peng
Claire Peng

πŸ’» πŸ› Jay Dev Jha
Jay Dev Jha

πŸ’» Yugal Kaushik
Yugal Kaushik

πŸ’» πŸ“– - Lalit Narayan Yadav
Lalit Narayan Yadav

πŸ“– + Lalit Narayan Yadav
Lalit Narayan Yadav

πŸ“– πŸ’» Irina Mengqi Wang
Irina Mengqi Wang

πŸ’‘ From 0bb096d7cae03bd05a3d68c2ecc2410b3187dc10 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Mon, 16 Jun 2025 17:03:34 +0000 Subject: [PATCH 38/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index efc05acbed..11c49940fa 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6849,7 +6849,8 @@ "avatar_url": "https://avatars.githubusercontent.com/u/162928571?v=4", "profile": "https://github.com/LalitNarayanYadav", "contributions": [ - "doc" + "doc", + "code" ] }, { From 215220dc0c2378ad5537a3bd8923df90f63044a1 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 18 Jun 2025 06:08:35 +0000 Subject: [PATCH 39/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0e4fbfc203..2b2d05c3bd 100644 --- a/README.md +++ b/README.md @@ -1156,6 +1156,7 @@ We recognize all types of contributions. This project follows the [all-contribut Atmaja P.
Atmaja P.

πŸ“– SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– fuder.eth
fuder.eth

πŸ“– + FerrinThreatt
FerrinThreatt

πŸ“– From 3190af78b4cef69128ae02d3d5306e705a39892a Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 18 Jun 2025 06:08:35 +0000 Subject: [PATCH 40/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 11c49940fa..a634a9cb39 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6947,6 +6947,15 @@ "contributions": [ "doc" ] + }, + { + "login": "FerrinThreatt", + "name": "FerrinThreatt", + "avatar_url": "https://avatars.githubusercontent.com/u/51208056?v=4", + "profile": "https://github.com/FerrinThreatt", + "contributions": [ + "doc" + ] } ], "repoType": "github", From 90ae3f4bbe13ca3169709d1d5c976c15c52225ad Mon Sep 17 00:00:00 2001 From: kit <1304340+ksen0@users.noreply.github.com> Date: Thu, 19 Jun 2025 20:17:31 +0200 Subject: [PATCH 41/61] Update stewards.yml Fixing a typo that created two separate WebGL sections unintentionally --- stewards.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/stewards.yml b/stewards.yml index 0c96b3337c..451fee6b88 100644 --- a/stewards.yml +++ b/stewards.yml @@ -66,7 +66,8 @@ Vaivaswat2244: - DevOps RandomGamingDev: - - WebGL + - Graphics: + - WebGL VANSH3104: - Documentation From a7bfeda0bda7754b36bc7e281192270fedf1b00c Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 19 Jun 2025 19:02:42 +0000 Subject: [PATCH 42/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2b2d05c3bd..e22855af94 100644 --- a/README.md +++ b/README.md @@ -1157,6 +1157,7 @@ We recognize all types of contributions. This project follows the [all-contribut SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– fuder.eth
fuder.eth

πŸ“– FerrinThreatt
FerrinThreatt

πŸ“– + Ben Gilbert
Ben Gilbert

πŸ’» From 03188f0908afc4dc6d9515bc65f0337c369b96be Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Thu, 19 Jun 2025 19:02:43 +0000 Subject: [PATCH 43/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index a634a9cb39..9222a3e1aa 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6956,6 +6956,15 @@ "contributions": [ "doc" ] + }, + { + "login": "bensgilbert", + "name": "Ben Gilbert", + "avatar_url": "https://avatars.githubusercontent.com/u/68397475?v=4", + "profile": "http://bensgilbert.com", + "contributions": [ + "code" + ] } ], "repoType": "github", From ead593e2f7ab32c81120e47bf50fced6c40f0af4 Mon Sep 17 00:00:00 2001 From: Ben Gilbert Date: Thu, 19 Jun 2025 20:26:35 +0100 Subject: [PATCH 44/61] fix contributor --- .all-contributorsrc | 15 +++------------ README.md | 2 +- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index 9222a3e1aa..e73f0a6655 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6088,10 +6088,10 @@ ] }, { - "login": "Evorage0", - "name": "Evorage", + "login": "bensgilbert", + "name": "Ben Gilbert", "avatar_url": "https://avatars.githubusercontent.com/u/68397475?v=4", - "profile": "https://github.com/Evorage0", + "profile": "http://bensgilbert.com", "contributions": [ "bug", "code" @@ -6956,15 +6956,6 @@ "contributions": [ "doc" ] - }, - { - "login": "bensgilbert", - "name": "Ben Gilbert", - "avatar_url": "https://avatars.githubusercontent.com/u/68397475?v=4", - "profile": "http://bensgilbert.com", - "contributions": [ - "code" - ] } ], "repoType": "github", diff --git a/README.md b/README.md index e22855af94..7e16d565e0 100644 --- a/README.md +++ b/README.md @@ -1035,7 +1035,7 @@ We recognize all types of contributions. This project follows the [all-contribut Abhinav kumar
Abhinav kumar

πŸ“– chaski
chaski

πŸ”¬ πŸ’» πŸ’‘ - Evorage
Evorage

πŸ› πŸ’» + Ben Gilbert
Ben Gilbert

πŸ› πŸ’» Daniel Marino
Daniel Marino

πŸ“– Shahma Ansari
Shahma Ansari

πŸ› Manan Arora
Manan Arora

πŸ“– From e72839c247fde65e437b005199cd2599f53b7e04 Mon Sep 17 00:00:00 2001 From: ksen0 Date: Thu, 19 Jun 2025 19:47:19 +0000 Subject: [PATCH 45/61] Update README table from stewards.yml --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index e22855af94..c2ee200185 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,7 @@ Lead/Mentor Alumni | Documentation | [@VANSH3104](https://github.com/VANSH3104), [@limzykenneth](https://github.com/limzykenneth), [@perminder-17](https://github.com/perminder-17) | | Friendly Errors | [@IIITM-Jay](https://github.com/IIITM-Jay) | | Graphics (p5.strands) | [@lukeplowden](https://github.com/lukeplowden) | -| Graphics (WebGL) | [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) | +| Graphics (WebGL) | [@RandomGamingDev](https://github.com/RandomGamingDev), [@aferriss](https://github.com/aferriss), [@davepagurek](https://github.com/davepagurek), [@lukeplowden](https://github.com/lukeplowden), [@perminder-17](https://github.com/perminder-17) | | i18n (hi) | [@Divyansh013](https://github.com/Divyansh013), [@takshittt](https://github.com/takshittt) | | i18n (zh) | [@limzykenneth](https://github.com/limzykenneth), [@lirenjie95](https://github.com/lirenjie95) | | Math | [@GregStanton](https://github.com/GregStanton), [@holomorfo](https://github.com/holomorfo) | @@ -108,7 +108,6 @@ Lead/Mentor Alumni | p5.sound.js | [@ogbabydiesal](https://github.com/ogbabydiesal) | | Shapes | [@GregStanton](https://github.com/GregStanton) | | Typography | [@dhowe](https://github.com/dhowe) | -| WebGL | [@RandomGamingDev](https://github.com/RandomGamingDev) | ## Contributors From f9091fb1e2e5b3d5a790562423e78966ae8fe264 Mon Sep 17 00:00:00 2001 From: Ben Gilbert Date: Thu, 19 Jun 2025 21:20:50 +0100 Subject: [PATCH 46/61] remove duplicate contributor from README.md --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 7e16d565e0..b6f5f0abe4 100644 --- a/README.md +++ b/README.md @@ -1157,7 +1157,6 @@ We recognize all types of contributions. This project follows the [all-contribut SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– fuder.eth
fuder.eth

πŸ“– FerrinThreatt
FerrinThreatt

πŸ“– - Ben Gilbert
Ben Gilbert

πŸ’» From 22bc8413d46761d7686beab48964f3a692cda90c Mon Sep 17 00:00:00 2001 From: leopardracer <136604165+leopardracer@users.noreply.github.com> Date: Fri, 20 Jun 2025 00:54:30 +0300 Subject: [PATCH 47/61] Update loading_displaying.js --- src/image/loading_displaying.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/image/loading_displaying.js b/src/image/loading_displaying.js index c0ce679117..f257b2a0d3 100644 --- a/src/image/loading_displaying.js +++ b/src/image/loading_displaying.js @@ -924,7 +924,7 @@ function _sAssign(sVal, iVal) { * destination rectangle. This may have the effect of zooming into the * subsection. * - * The tenth and eleventh paremeters, `xAlign` and `yAlign`, are also + * The tenth and eleventh parameters, `xAlign` and `yAlign`, are also * optional. They determine how to align the fitted subsection. `xAlign` can * be set to either `LEFT`, `RIGHT`, or `CENTER`. `yAlign` can be set to * either `TOP`, `BOTTOM`, or `CENTER`. By default, both `xAlign` and `yAlign` From 11df112005dff1252fb74dcd47bff94a5715027c Mon Sep 17 00:00:00 2001 From: leopardracer <136604165+leopardracer@users.noreply.github.com> Date: Fri, 20 Jun 2025 00:54:51 +0300 Subject: [PATCH 48/61] Update trigonometry.js --- src/math/trigonometry.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/math/trigonometry.js b/src/math/trigonometry.js index 788dbfb1ff..69d8b7f366 100644 --- a/src/math/trigonometry.js +++ b/src/math/trigonometry.js @@ -540,7 +540,7 @@ p5.prototype.degrees = angle => angle * constants.RAD_TO_DEG; * * background(200); * - * // Caclulate the angle conversion. + * // Calculate the angle conversion. * let deg = 45; * let rad = radians(deg); * From 18ac6e3538fc7dd8cd3effd0be8e034973c67f7f Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 10:39:03 +0000 Subject: [PATCH 49/61] docs: update README.md [skip ci] --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b7c4ec5bd6..8075410248 100644 --- a/README.md +++ b/README.md @@ -1034,7 +1034,7 @@ We recognize all types of contributions. This project follows the [all-contribut Abhinav kumar
Abhinav kumar

πŸ“– chaski
chaski

πŸ”¬ πŸ’» πŸ’‘ - Ben Gilbert
Ben Gilbert

πŸ› πŸ’» + Ben Gilbert
Ben Gilbert

πŸ› πŸ’» Daniel Marino
Daniel Marino

πŸ“– Shahma Ansari
Shahma Ansari

πŸ› Manan Arora
Manan Arora

πŸ“– @@ -1156,6 +1156,7 @@ We recognize all types of contributions. This project follows the [all-contribut SonyaCode
SonyaCode

️️️️♿️ πŸ“ πŸ› πŸ’» 🎨 πŸ“– fuder.eth
fuder.eth

πŸ“– FerrinThreatt
FerrinThreatt

πŸ“– + leopardracer
leopardracer

πŸ“– From ae3012187d58dd86ef1c9d89d5a5c4d78fbf59f2 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 10:39:04 +0000 Subject: [PATCH 50/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index e73f0a6655..c043ba5b5d 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6956,6 +6956,15 @@ "contributions": [ "doc" ] + }, + { + "login": "leopardracer", + "name": "leopardracer", + "avatar_url": "https://avatars.githubusercontent.com/u/136604165?v=4", + "profile": "https://github.com/leopardracer", + "contributions": [ + "doc" + ] } ], "repoType": "github", From aafe8c7dd56caa4f4bf734cf480f7fb60ced7a68 Mon Sep 17 00:00:00 2001 From: kilavvy <140459108+kilavvy@users.noreply.github.com> Date: Sun, 22 Jun 2025 15:17:39 +0200 Subject: [PATCH 51/61] Update documentation_style_guide.md --- contributor_docs/documentation_style_guide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributor_docs/documentation_style_guide.md b/contributor_docs/documentation_style_guide.md index be6a48ddda..c238180172 100644 --- a/contributor_docs/documentation_style_guide.md +++ b/contributor_docs/documentation_style_guide.md @@ -4,7 +4,7 @@ Hello! Welcome to the guidelines for writing p5.js documentation. This document is a remix of the following resources: -- Ruby on Rails [API Documentation Guidlines](https://guides.rubyonrails.org/api_documentation_guidelines.html) (CC BY-SA 4.0) +- Ruby on Rails [API Documentation Guidelines](https://guides.rubyonrails.org/api_documentation_guidelines.html) (CC BY-SA 4.0) - WordPress documentation guidelines for [accessibility](https://make.wordpress.org/docs/style-guide/general-guidelines/accessibility/) and [inclusivity](https://make.wordpress.org/docs/style-guide/general-guidelines/inclusivity/) (CC0) - Airbnb [JavaScript Style Guide](https://airbnb.io/javascript/) (MIT) From 6d0dce6acaf966284f20232c91f0fd5f1b4b7d96 Mon Sep 17 00:00:00 2001 From: kilavvy <140459108+kilavvy@users.noreply.github.com> Date: Sun, 22 Jun 2025 15:18:45 +0200 Subject: [PATCH 52/61] Update elginmclaren_gsoc_2018.md --- contributor_docs/project_wrapups/elginmclaren_gsoc_2018.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contributor_docs/project_wrapups/elginmclaren_gsoc_2018.md b/contributor_docs/project_wrapups/elginmclaren_gsoc_2018.md index 8b97c19e77..8207c5404f 100644 --- a/contributor_docs/project_wrapups/elginmclaren_gsoc_2018.md +++ b/contributor_docs/project_wrapups/elginmclaren_gsoc_2018.md @@ -30,7 +30,7 @@ hello.p5js.org is likely to be many users’ first introduction to p5.js (and po ## Challenges -* Crowdsourcing the video content was fun and filled with delightful suprises; however, it was challenging to coordinate video-making tasks with community members over the summer (e.g. tight GSOC time constraints, people's summer vacations). +* Crowdsourcing the video content was fun and filled with delightful surprises; however, it was challenging to coordinate video-making tasks with community members over the summer (e.g. tight GSOC time constraints, people's summer vacations). * Creating a dynamic, post-production greenscreen effect was more difficult than I imagined. Using seriously.js for the canvas background removal worked well; however, setting videos to a neutral background color in After Effects was difficult without a neutral background. * When incorporating browserify to pre-process my javascript, I missed one crucial line of code. This required tremendous digging to figure out why it wouldn't compile. It set me back several days, but I learned a lot! From 50dff769c464a199231ee479ecb2eb2866804009 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sun, 22 Jun 2025 14:00:59 +0000 Subject: [PATCH 53/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8075410248..e4840ab423 100644 --- a/README.md +++ b/README.md @@ -1157,6 +1157,7 @@ We recognize all types of contributions. This project follows the [all-contribut fuder.eth
fuder.eth

πŸ“– FerrinThreatt
FerrinThreatt

πŸ“– leopardracer
leopardracer

πŸ“– + kilavvy
kilavvy

πŸ“– From 08fed9012036ad8e63c3ee763b62ad71ea165903 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sun, 22 Jun 2025 14:01:00 +0000 Subject: [PATCH 54/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index c043ba5b5d..ee573b3a21 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6965,6 +6965,15 @@ "contributions": [ "doc" ] + }, + { + "login": "kilavvy", + "name": "kilavvy", + "avatar_url": "https://avatars.githubusercontent.com/u/140459108?v=4", + "profile": "https://github.com/kilavvy", + "contributions": [ + "doc" + ] } ], "repoType": "github", From 0c4e6cd793a97e384a5811ea5a37ac31d26de820 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 27 Jun 2025 16:38:08 +0000 Subject: [PATCH 55/61] docs: update README.md [skip ci] --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index e4840ab423..8da9c0ab68 100644 --- a/README.md +++ b/README.md @@ -1159,6 +1159,9 @@ We recognize all types of contributions. This project follows the [all-contribut leopardracer
leopardracer

πŸ“– kilavvy
kilavvy

πŸ“– + + Shiva
Shiva

πŸ“– + From e0863cb8e678e4eb5e729de696d561d195a4d6eb Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Fri, 27 Jun 2025 16:38:09 +0000 Subject: [PATCH 56/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index ee573b3a21..c845c4788a 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6974,6 +6974,15 @@ "contributions": [ "doc" ] + }, + { + "login": "shivasankaran18", + "name": "Shiva", + "avatar_url": "https://avatars.githubusercontent.com/u/148421597?v=4", + "profile": "https://github.com/shivasankaran18", + "contributions": [ + "doc" + ] } ], "repoType": "github", From c767ed86c7583c9701c37940a85b741154fff053 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sun, 29 Jun 2025 16:43:23 +0000 Subject: [PATCH 57/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8da9c0ab68..ac3e8115a5 100644 --- a/README.md +++ b/README.md @@ -1161,6 +1161,7 @@ We recognize all types of contributions. This project follows the [all-contribut Shiva
Shiva

πŸ“– + Madhav Majumdar
Madhav Majumdar

πŸ’» From 5038ff998afe5dc19c4ee0900576126aba718200 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Sun, 29 Jun 2025 16:43:24 +0000 Subject: [PATCH 58/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index c845c4788a..314f5d381d 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6983,6 +6983,15 @@ "contributions": [ "doc" ] + }, + { + "login": "madhav2348", + "name": "Madhav Majumdar", + "avatar_url": "https://avatars.githubusercontent.com/u/161720210?v=4", + "profile": "https://github.com/madhav2348", + "contributions": [ + "code" + ] } ], "repoType": "github", From e1641aa64918473560340d5dbad53ae57b4f0bc7 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 9 Jul 2025 16:43:32 +0000 Subject: [PATCH 59/61] docs: update README.md [skip ci] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ac3e8115a5..2b72e8293c 100644 --- a/README.md +++ b/README.md @@ -1162,6 +1162,7 @@ We recognize all types of contributions. This project follows the [all-contribut Shiva
Shiva

πŸ“– Madhav Majumdar
Madhav Majumdar

πŸ’» + Nikita Korol
Nikita Korol

πŸ’» From 14397371568651dc5a4ef8f6eb0faca1ca0238c8 Mon Sep 17 00:00:00 2001 From: "allcontributors[bot]" <46447321+allcontributors[bot]@users.noreply.github.com> Date: Wed, 9 Jul 2025 16:43:33 +0000 Subject: [PATCH 60/61] docs: update .all-contributorsrc [skip ci] --- .all-contributorsrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.all-contributorsrc b/.all-contributorsrc index 314f5d381d..ad91e83d5f 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -6992,6 +6992,15 @@ "contributions": [ "code" ] + }, + { + "login": "nking07049925", + "name": "Nikita Korol", + "avatar_url": "https://avatars.githubusercontent.com/u/11886663?v=4", + "profile": "https://github.com/nking07049925", + "contributions": [ + "code" + ] } ], "repoType": "github", From b9cdbd79987f333ccdeb1f4609657eed69d7131d Mon Sep 17 00:00:00 2001 From: ksen0 Date: Thu, 17 Jul 2025 23:39:25 +0200 Subject: [PATCH 61/61] 1.11.9 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c4b5c08bcb..54ce12aba4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "p5", - "version": "1.11.8", + "version": "1.11.9", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "p5", - "version": "1.11.8", + "version": "1.11.9", "license": "LGPL-2.1", "devDependencies": { "@babel/core": "^7.7.7", diff --git a/package.json b/package.json index 24646e81a8..1345b0798c 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "node --require @babel/register ./utils/sample-linter.js" ] }, - "version": "1.11.8", + "version": "1.11.9", "devDependencies": { "@babel/core": "^7.7.7", "@babel/preset-env": "^7.10.2",