Skip to content

Resolving conflicts in order to merge dev to main #279

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 7, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 31 additions & 0 deletions .github/workflows/generate-extension-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Generate Extension Documentation

on: [push]
permissions:
contents: write
pages: write
id-token: write
jobs:
generate:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.17.1]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Initialize
run: npm run init
- name: Generate
run: npm run document:extensions
- name: Commit (without CI)
run: |
git config --local user.email ""
git config --local user.name "GitHub Action"
git add extensions/README.md
git commit -m "[skip ci] re-generate extension documentation"
- name: Push
run: git push
10 changes: 6 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
.DS_Store
./**/.DS_Store

# Logs
logs
*.log
Expand All @@ -6,6 +9,9 @@ yarn-debug.log*
yarn-error.log*
lerna-debug.log*

.DS_Store
**/.DS_Store

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

Expand Down Expand Up @@ -104,7 +110,3 @@ dist
.tern-port

.idea

# Scratch specific
*/package-lock.json
*/package.json
7 changes: 7 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"recommendations": [
"ms-vscode.vscode-typescript-next",
"svelte.svelte-vscode",
"oderwat.indent-rainbow"
]
}
12 changes: 11 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
{
"svelte.plugin.svelte.compilerWarnings": {
"missing-declaration": "ignore"
}
},
"[typescript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[svelte]": {
"editor.defaultFormatter": "svelte.svelte-vscode"
},
"typescript.tsdk": "node_modules/typescript/lib",
}
78 changes: 78 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## 2023-03-25 (pending)

### Changed

- Info about an extension (e.g. its `id`, `name`, and `blockIconURI`) are now loaded via an external `.js` file instead of being 'filled in' at bundle-time (which was error prone)
- [Scratch VM Change](#scratch-vm-change): changes are implemented in _bundle-loader.js_ to load this file in and utilize when retrieving an Extension's constructor

## 2023-03-20

### Added

- **_Video mixin:_** Ability for extensions to enable video feed and set transparency
- Available as `"video"` addon
- **_Drawable mixin:_** Ability for extensions to draw arbitrary images onto the stage
- Available as `"drawable`" addon
- **_Add Costumes mixin:_** Ability for extensions to add and set costumes for sprites
- Available as `"addCostumes"` addon
- [Scratch VM Change](#scratch-vm-change): Added `addCostime` function onto `runtime` to allow for utilizing the `loadCostume` function of `scratch-vm/src/import/load-costume.js`
- Block mixins
- **_Toggle video:_** Ability for extensions to include a toggle video block to set the state of the video feed
- Available as `"toggleVideoBlock"` addon
- **_Video transparency:_** Ability for extensions to include a set transparency block to set how see-through the video feed is
- Available as `"setTransparencyBlock"` addon
- **_Legacy Support mixin:_** Legacy support available as a mixin (in addition / instead of as a class decorator)
- Available as "legacySupport"
- Selfie Segmentation extension:
- Guidance on developing on windows
- Vs Code setting to use this project's typescript version instead of Vs Code's

### Fixed

- Limited the potential for endless bundling loops
- Now bundles are only re-generated when a file with a `.ts`, `.svelte`, `.png`, and/or `.svg` extension is changed
- **_NOTE_**: The above 'watched' file extensions can / should grow overtime
- Corrected Extension Probe runtime errors

### Changed

- Extension's `init` function now supports be implemented as `async`
- [Scratch VM Change](#scratch-vm-change): _extension-manager_ now `await`s the `tryInitExtension` function from the _bundle-loader_
- Tests update to support
- The prescribed workflow for legacy support now uses the Legacy Support mixin (instead of the Legacy Extension class decorator)
- Typescript version set to the `latest`
- New way to express dependencies within mixin architecture

# Tags

## Scratch VM Change

As best as possible, we should keep track of when changes are committed that change the `packages/scratch-vm` source and thus cause our repo to diverge (further) from [LLK's scratch-vm](https://github.com/LLK/scratch-vm)

## Scratch GUI Change

As best as possible, we should keep track of when changes are committed that change the `packages/scratch-gui` source and thus cause our repo to diverge (further) from [LLK's scratch-gui](https://github.com/LLK/scratch-gui)

# Template

## YYYY-MM-DD

### Added

### Fixed

### Changed

### Deprecated

### Removed

### Fixed

### Security
Loading