Skip to content

Conversation

@colinaaa
Copy link
Collaborator

@colinaaa colinaaa commented Jun 6, 2025

Summary

The Lynx Engine does not pass Function.

          undefined, // WebSocket
          undefined, // webkit
          undefined, // Reporter
          undefined, // print
          undefined, // global
          that.requestAnimationFrame,
          that.cancelAnimationFrame

https://github.com/lynx-family/lynx/blob/43b4c399c74148853679d355dcf9713b13584b4a/js_libraries/lynx-core/src/app/app.ts#L649-L655

This patch remove the extra parameter that make requestAnimationFrame not working.

Checklist

  • Tests updated (or not required).
  • Documentation updated (or not required).

@changeset-bot
Copy link

changeset-bot bot commented Jun 6, 2025

🦋 Changeset detected

Latest commit: 5e9f116

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 3 packages
Name Type
@lynx-js/runtime-wrapper-webpack-plugin Patch
@lynx-js/react-rsbuild-plugin Patch
@lynx-js/react-alias-rsbuild-plugin Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@codspeed-hq
Copy link

codspeed-hq bot commented Jun 6, 2025

CodSpeed Performance Report

Merging #1021 will not alter performance

Comparing colinaaa:colin/0606/raf (5e9f116) with main (8053c6b)

Summary

✅ 8 untouched benchmarks

@relativeci
Copy link

relativeci bot commented Jun 6, 2025

React Example

#1302 Bundle Size — 231.7KiB (~-0.01%).

5e9f116(current) vs 8053c6b main#1298(baseline)

Bundle metrics  Change 1 change
                 Current
#1302
     Baseline
#1298
No change  Initial JS 0B 0B
No change  Initial CSS 0B 0B
Change  Cache Invalidation 37.09% 0%
No change  Chunks 0 0
No change  Assets 4 4
No change  Modules 142 142
No change  Duplicate Modules 56 56
No change  Duplicate Code 46.16% 46.16%
No change  Packages 2 2
No change  Duplicate Packages 0 0
Bundle size by type  Change 1 change Improvement 1 improvement
                 Current
#1302
     Baseline
#1298
No change  IMG 145.76KiB 145.76KiB
Improvement  Other 85.94KiB (~-0.01%) 85.94KiB

Bundle analysis reportBranch colinaaa:colin/0606/rafProject dashboard


Generated by RelativeCIDocumentationReport issue

@relativeci
Copy link

relativeci bot commented Jun 6, 2025

Web Explorer

#1291 Bundle Size — 254.25KiB (0%).

5e9f116(current) vs 8053c6b main#1287(baseline)

Bundle metrics  no changes
                 Current
#1291
     Baseline
#1287
No change  Initial JS 137.91KiB 137.91KiB
No change  Initial CSS 31.79KiB 31.79KiB
No change  Cache Invalidation 0% 0%
No change  Chunks 4 4
No change  Assets 4 4
No change  Modules 200 200
No change  Duplicate Modules 14 14
No change  Duplicate Code 2.87% 2.87%
No change  Packages 4 4
No change  Duplicate Packages 0 0
Bundle size by type  no changes
                 Current
#1291
     Baseline
#1287
No change  JS 222.46KiB 222.46KiB
No change  CSS 31.79KiB 31.79KiB

Bundle analysis reportBranch colinaaa:colin/0606/rafProject dashboard


Generated by RelativeCIDocumentationReport issue

@colinaaa colinaaa requested a review from Yradex June 6, 2025 09:03
@colinaaa colinaaa marked this pull request as ready for review June 6, 2025 09:03
@colinaaa colinaaa added this pull request to the merge queue Jun 6, 2025
Merged via the queue into lynx-family:main with commit acc0d80 Jun 6, 2025
40 checks passed
@colinaaa colinaaa deleted the colin/0606/raf branch June 6, 2025 10:14
colinaaa pushed a commit that referenced this pull request Jun 6, 2025
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## @lynx-js/[email protected]

### Patch Changes

- Support for locating errors in the source code directly on the device
when exceptions occur when using MTS.
([#1019](#1019))

    This requires Lynx engine v3.4 or later.

- Fix the "main-thread.js exception: ReferenceError:
`__webpack_require__` is not defined" error in HMR.
([#985](#985))

This error occurred when setting `output.iife: true`, which is the
default value in `@lynx-js/rspeedy` v0.9.8.

## @lynx-js/[email protected]

### Patch Changes

- Set `optimization.emitOnErrors` when `DEBUG` is enabled.
([#1000](#1000))

    This is useful for debugging PrimJS Syntax error.

## @lynx-js/[email protected]

### Patch Changes

- Better [zustand](https://github.com/pmndrs/zustand) support by
creating an alias for `use-sync-external-store`.
([#980](#980))

See
[#893](#893)
for more details.

- Updated dependencies
\[[`acc0d80`](acc0d80)]:
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- Support Windows.
([#1007](#1007))

## @lynx-js/[email protected]

### Patch Changes

- feat: add sheet.insertRule support
([#1026](#1026))

- refactor: implement mts apis in closure pattern
([#1004](#1004))

## @lynx-js/[email protected]

### Patch Changes

- refactor: move some internal status to dom's attribute
([#945](#945))

    It's essential for SSR

- fix: target.id is undefined
([#1016](#1016))

- feat: add new pageConfig configuration: enableJSDataProcessor
([#886](#886))

- refactor: move component config info to attribute
([#984](#984))

- refactor: save dataset on an attribute
([#981](#981))

On lynx, the `data-*` attributes have different behaviors than the
HTMLElement has.

The dataset will be treated as properties, the key will not be applied
the camel-case <-> hyphenate name transformation.

Before this commit we use it as a runtime data, but after this commit we
will use encodeURI(JSON.stringify(dataset)) to encode it as a string.

- refactor: create elements of `elementToRuntimeInfoMap` on demand
([#986](#986))

- refactor: implement mts apis in closure pattern
([#1004](#1004))

-   Updated dependencies \[]:
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- refactor: move some internal status to dom's attribute
([#945](#945))

    It's essential for SSR

- refactor: avoid to create many style element for cssog
([#1026](#1026))

- refactor: move component config info to attribute
([#984](#984))

- fix: ensure render starts after dom connected
([#1020](#1020))

- refactor: save dataset on an attribute
([#981](#981))

On lynx, the `data-*` attributes have different behaviors than the
HTMLElement has.

The dataset will be treated as properties, the key will not be applied
the camel-case <-> hyphenate name transformation.

Before this commit we use it as a runtime data, but after this commit we
will use encodeURI(JSON.stringify(dataset)) to encode it as a string.

- refactor: implement mts apis in closure pattern
([#1004](#1004))

- Updated dependencies
\[[`70b82d2`](70b82d2),
[`5651e24`](5651e24),
[`9499ea9`](9499ea9),
[`50f0193`](50f0193),
[`57bf0ef`](57bf0ef),
[`5651e24`](5651e24),
[`0525fbf`](0525fbf),
[`b6b87fd`](b6b87fd),
[`c014327`](c014327)]:
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- refactor: move some internal status to dom's attribute
([#945](#945))

    It's essential for SSR

- refactor: move component config info to attribute
([#984](#984))

- refactor: save dataset on an attribute
([#981](#981))

On lynx, the `data-*` attributes have different behaviors than the
HTMLElement has.

The dataset will be treated as properties, the key will not be applied
the camel-case <-> hyphenate name transformation.

Before this commit we use it as a runtime data, but after this commit we
will use encodeURI(JSON.stringify(dataset)) to encode it as a string.

- fix: dump encode data in comment
([#989](#989))

## @lynx-js/[email protected]

### Patch Changes

- feat: x-input && x-textarea add new method: `getValue`, which returns
the value of the input element, selectionStart and selectEnd when
success. ([#982](#982))

- feat: x-input and x-textarea bindinput event return structures add
`selectionStart`, `selectionEnd`, and `textLength`, `textLength` are
marked as @deprecated
([#996](#996))

- feat: x-input and x-textarea support bindselection event, the returned
type structure is `{ selectionStart: number; selectionEnd: number }`.
([#990](#990))

-   Updated dependencies \[]:
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- refactor: move some internal status to dom's attribute
([#945](#945))

    It's essential for SSR

- refactor: avoid to create many style element for cssog
([#1026](#1026))

- fix: target.id is undefined
([#1016](#1016))

- feat: add new pageConfig configuration: enableJSDataProcessor
([#886](#886))

- refactor: move component config info to attribute
([#984](#984))

- refactor: save dataset on an attribute
([#981](#981))

On lynx, the `data-*` attributes have different behaviors than the
HTMLElement has.

The dataset will be treated as properties, the key will not be applied
the camel-case <-> hyphenate name transformation.

Before this commit we use it as a runtime data, but after this commit we
will use encodeURI(JSON.stringify(dataset)) to encode it as a string.

- refactor: create elements of `elementToRuntimeInfoMap` on demand
([#986](#986))

- refactor: implement mts apis in closure pattern
([#1004](#1004))

- Updated dependencies
\[[`70b82d2`](70b82d2),
[`9499ea9`](9499ea9),
[`50f0193`](50f0193),
[`57bf0ef`](57bf0ef),
[`0525fbf`](0525fbf),
[`b6b87fd`](b6b87fd),
[`c014327`](c014327)]:
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- refactor: implement mts apis in closure pattern
([#1004](#1004))

- Updated dependencies
\[[`70b82d2`](70b82d2),
[`5651e24`](5651e24),
[`9499ea9`](9499ea9),
[`50f0193`](50f0193),
[`57bf0ef`](57bf0ef),
[`5651e24`](5651e24),
[`0525fbf`](0525fbf),
[`b6b87fd`](b6b87fd),
[`c014327`](c014327)]:
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]
    -   @lynx-js/[email protected]

## @lynx-js/[email protected]

### Patch Changes

- Fix `requestAnimationFrame` is not working.
([#1021](#1021))

## @lynx-js/[email protected]

### Patch Changes

- Updated dependencies
\[[`ccb4254`](ccb4254)]:
    -   @lynx-js/[email protected]

## [email protected]



## @lynx-js/[email protected]



## [email protected]



## @lynx-js/[email protected]



## @lynx-js/[email protected]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants