Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
c83ef6c
added standard blits shaders
jfboeve Feb 17, 2025
2f4022b
merge with master
jfboeve Feb 17, 2025
9775a3a
cleaned up shader functions
jfboeve Feb 18, 2025
53d8bc1
improved shader props transformer
jfboeve Feb 19, 2025
be3f068
added shader docs
jfboeve Feb 28, 2025
b347de0
update renderer version to v3.0.0-beta1
jfboeve Feb 28, 2025
895deb9
Merge branch 'master' into feat/rc-3.0
jfboeve Mar 11, 2025
a0c7441
update package to 3.0-beta3
jfboeve Mar 11, 2025
b589475
revert changes in colors, correct mistake in index.d.ts
jfboeve Mar 11, 2025
41f430b
cleanup shaderLoader.js
jfboeve Mar 11, 2025
f580393
added simple version of shadow/border & cleaned up createElementShade…
jfboeve Mar 11, 2025
c2655c1
gracefully deprecated effects
jfboeve Mar 12, 2025
151fa19
Renamed effect setter to effects to match original attribute name.
michielvandergeest Mar 20, 2025
cb739a7
update links in docs
jfboeve Mar 12, 2025
2a9233c
removed some shaders from default loaded shaders
jfboeve Mar 18, 2025
78132ac
fixed index.d.ts + added shaders to template attributes
jfboeve Mar 20, 2025
9854e73
fix issue where shader type was normalized to color
jfboeve Mar 21, 2025
0984c5b
Added shaders to Blits defaults. added information to docs.
jfboeve Mar 21, 2025
ad4c63c
fix shader type issue.
jfboeve Mar 25, 2025
d65e7b4
upgrade package to latest renderer pre-release
jfboeve Mar 27, 2025
f240f9a
fix targeting wrong shader value when node exists
jfboeve Mar 28, 2025
41d09dc
remove logs
jfboeve Mar 28, 2025
7e6e4d9
Merge pull request #334 from lightning-js/dev
michielvandergeest Mar 28, 2025
7acc3d2
Merge pull request #336 from lightning-js/dev
michielvandergeest Apr 1, 2025
e3d87b7
remove effects in elements. remove shader method
jfboeve Apr 7, 2025
1a62ac5
Merge pull request #340 from lightning-js/dev
michielvandergeest Apr 8, 2025
4734f24
Fixed issue with announcer. Bumped version to 1.26.1 and updated chan…
michielvandergeest Apr 9, 2025
d87695d
Fixed dates on changelog.
michielvandergeest Apr 9, 2025
bc5097f
Fixed issue with announcer. Bumped version to 1.26.2 and updated chan…
michielvandergeest Apr 9, 2025
a981164
added conversion guide, added shaders to docs menus
jfboeve Apr 9, 2025
f0c2c19
Addressed renderer package import issue in blits
suresh-gangumalla Apr 9, 2025
6f9454b
upgraded husky & added pre-push hook for linting check
uguraslan Apr 9, 2025
9d4640d
fixes for linting issues
uguraslan Apr 9, 2025
0122e93
Added stop function on speech utterance to allow developers to stop a…
michielvandergeest Apr 10, 2025
c06d1b3
added github workflow for linting check
uguraslan Apr 10, 2025
10323fa
updated github workflow for tests
uguraslan Apr 10, 2025
6b6065a
Added noop announcement return for when announcer is turned off. Impr…
michielvandergeest Apr 11, 2025
b7ef286
Merge pull request #343 from lightning-js/feature/announcer-stop-mess…
michielvandergeest Apr 11, 2025
951db5c
Merge pull request #344 from lightning-js/feat/linter
michielvandergeest Apr 11, 2025
11afe88
Merge pull request #345 from lightning-js/fix/gh-tests
michielvandergeest Apr 11, 2025
1ca9e5e
Bumped version to 1.27.0 and updated changelog.
michielvandergeest Apr 11, 2025
e8318df
deleting unnecessary backup files for husky
uguraslan Apr 11, 2025
b19b898
Merge pull request #348 from lightning-js/feat/linter
michielvandergeest Apr 11, 2025
0e2469a
Fixed typo in announcer clear type definitions (fixes #347).
michielvandergeest Apr 11, 2025
e10d8b2
Merge pull request #346 from lightning-js/dev
michielvandergeest Apr 11, 2025
6f194b0
Fixed issue where global watchers weren't properly cleared and were k…
michielvandergeest Apr 14, 2025
87c81d1
Addressed renderer version issue review comments
suresh-gangumalla Apr 15, 2025
73e6e02
Merge pull request #341 from suresh-gangumalla/fix/renderer-version-i…
michielvandergeest Apr 15, 2025
008fd95
Merge branch 'dev' into fix/watcher-mem-leak
michielvandergeest Apr 15, 2025
a383ccf
Merge pull request #354 from lightning-js/fix/watcher-mem-leak
michielvandergeest Apr 15, 2025
391d92b
Added trigger to update parent layout in the case of nested layout.
michielvandergeest Apr 15, 2025
bedb586
Merge pull request #355 from lightning-js/fix/nested-layout-update-pa…
michielvandergeest Apr 15, 2025
c29b966
Changed order of update event and triggering layout on parent.
michielvandergeest Apr 15, 2025
fa2ea87
Bumped version to 1.27.1 and updated changelog.
michielvandergeest Apr 15, 2025
3dd9d5b
Merge branch 'master' into dev
michielvandergeest Apr 15, 2025
680b92c
Merge branch 'dev' into feat/rc-3.0
michielvandergeest Apr 16, 2025
91462b1
Fixed failing tests.
michielvandergeest Apr 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ module.exports = {
},
parser: '@babel/eslint-parser',
parserOptions: {
parser: 'babel-eslint',
ecmaVersion: 2018,
sourceType: 'module',
requireConfigFile: false,
Expand Down
151 changes: 151 additions & 0 deletions .github/workflows/comment-lint-results.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
name: Comment ESLint Results

on:
workflow_run:
workflows: ["Run ESLint"]
types:
- completed

jobs:
comment-lint-results:
# Only run this job if the previous workflow failed (indicating lint errors)
if: github.event.workflow_run.conclusion == 'failure'
runs-on: ubuntu-latest
permissions:
pull-requests: write

steps:
- name: Download Lint Results
id: download
uses: actions/github-script@v6
with:
script: |
try {
core.info('Downloading lint results artifact');

const artifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: ${{ github.event.workflow_run.id }}
});

const matchArtifact = artifacts.data.artifacts.find(artifact => artifact.name === "lint-results");
if (!matchArtifact) {
core.setFailed('No lint results artifact found');
return false;
}

core.info(`Found artifact id: ${matchArtifact.id}`);

const download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip'
});

const fs = require('fs');
try {
fs.writeFileSync('lint-results.zip', Buffer.from(download.data));
core.info('Successfully downloaded and saved artifact');
return true;
} catch (error) {
core.setFailed(`Failed to write artifact: ${error.message}`);
return false;
}
} catch (error) {
core.setFailed(`Failed to download artifact: ${error.message}`);
return false;
}
result-encoding: string

- name: Extract Lint Results
if: steps.download.outputs.result == 'true'
id: extract
run: |
mkdir -p lint-results
unzip -o lint-results.zip -d lint-results

if [ -f lint-results/errors.md ]; then
# Use GitHub's EOF syntax for multiline content
echo "LINT_ERRORS<<EOF" >> $GITHUB_ENV
cat lint-results/errors.md >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
echo "HAS_ERRORS=true" >> $GITHUB_OUTPUT
else
echo "HAS_ERRORS=false" >> $GITHUB_OUTPUT
fi

- name: Find PR Number
if: steps.extract.outputs.HAS_ERRORS == 'true'
id: find-pr
uses: actions/github-script@v6
with:
script: |
try {
core.info('Finding associated PR');

const { owner, repo } = context.repo;
const run_id = ${{ github.event.workflow_run.id }};

// Get the triggering workflow run
const run = await github.rest.actions.getWorkflowRun({
owner,
repo,
run_id
});

// Find associated PR - first try the event payload
if (run.data.pull_requests && run.data.pull_requests.length > 0) {
core.info(`Found PR directly from run data: #${run.data.pull_requests[0].number}`);
return run.data.pull_requests[0].number;
}

// Fallback to searching by head SHA
core.info(`Searching for PR using head SHA: ${run.data.head_sha}`);
const pulls = await github.rest.pulls.list({
owner,
repo,
state: 'open',
head: `${owner}:${run.data.head_branch}`
});

if (pulls.data.length > 0) {
core.info(`Found PR by branch: #${pulls.data[0].number}`);
return pulls.data[0].number;
}

core.info('No PR found for this workflow run');
return null;
} catch (error) {
core.setFailed(`Failed to find PR: ${error.message}`);
return null;
}
result-encoding: string

- name: Post Lint Results as PR Comment
if: steps.find-pr.outputs.result != 'null' && steps.find-pr.outputs.result != ''
uses: actions/github-script@v6
with:
script: |
try {
const pr_number = parseInt(${{ steps.find-pr.outputs.result }});

if (isNaN(pr_number)) {
core.warning('Invalid PR number');
return;
}

core.info(`Posting comment to PR #${pr_number}`);

await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr_number,
body: process.env.LINT_ERRORS
});

core.info(`Successfully posted lint errors comment to PR #${pr_number}`);
} catch (error) {
core.setFailed(`Failed to post comment: ${error.message}`);
}
114 changes: 114 additions & 0 deletions .github/workflows/comment-test-results.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
name: Comment Test Results

on:
workflow_run:
workflows: ["Run Blits Tests"]
types:
- completed

jobs:
comment-test-results:
runs-on: ubuntu-latest
permissions:
pull-requests: write

steps:
- name: Download Test Results
uses: actions/github-script@v6
with:
script: |
const artifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: ${{ github.event.workflow_run.id }}
});

const matchArtifact = artifacts.data.artifacts.find(artifact => artifact.name === "test-results");
if (!matchArtifact) {
core.setFailed('No test results artifact found');
return;
}

const download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip'
});

const fs = require('fs');
fs.writeFileSync('test-results.zip', Buffer.from(download.data));

- name: Extract Test Results
run: |
mkdir -p test-results
unzip -o test-results.zip -d test-results

TIMESTAMP=$(cat test-results/timestamp.txt)
SUMMARY=$(cat test-results/summary.txt)
FAILED=$(cat test-results/failed.txt)

echo "TIMESTAMP=$TIMESTAMP" >> $GITHUB_ENV
echo "SUMMARY=$SUMMARY" >> $GITHUB_ENV
echo "FAILED=$FAILED" >> $GITHUB_ENV

# Check if error.txt exists and read it if it does
if [ -f test-results/error.txt ]; then
# Store raw error output in a file for the next step
cat test-results/error.txt > raw_error.txt
fi

- name: Find PR Number
id: find-pr
uses: actions/github-script@v6
with:
script: |
const { owner, repo } = context.repo;
const run_id = ${{ github.event.workflow_run.id }};

// Get the triggering workflow run
const run = await github.rest.actions.getWorkflowRun({
owner,
repo,
run_id
});

// Find associated PR
const pulls = await github.rest.pulls.list({
owner,
repo,
state: 'open',
head: run.data.head_sha
});

if (pulls.data.length > 0) {
return pulls.data[0].number;
}

console.log('No PR found');
return null;
result-encoding: string

- name: Post Test Results as PR Comment
if: steps.find-pr.outputs.result != 'null'
uses: actions/github-script@v6
with:
script: |
const fs = require('fs');
const pr_number = parseInt(${{ steps.find-pr.outputs.result }});
const status = process.env.FAILED === 'true' ? '❌ FAILED' : '✅ PASSED';

let commentBody = `#### Test Results: ${status}\n**Run at:** ${process.env.TIMESTAMP}\n\n**Summary:**\n${process.env.SUMMARY}`;

// Add error output if it exists
if (fs.existsSync('raw_error.txt')) {
const errorOutput = fs.readFileSync('raw_error.txt', 'utf8');
commentBody += '\n\n**Error Output:**\n```\n' + errorOutput + '\n```';
}

github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr_number,
body: commentBody
});
Loading