Skip to content

WeakRef usage (not always supported and not recommended) #33407

Closed
@wolfbeast

Description

@wolfbeast

Description

JavaScript promise rejection: WeakRef is not defined. Open browser console to see more details.

I noticed Gitea's web interface started using WeakRef (noticed when posting a reply to a PR review conversation).
Please note that UXP doesn't implement WeakRef and its usage is not recommended unless you explicitly want to give hints to the JS GC for the release of (overly large) memory. Even so there is no guarantee that a JS engine will honour those hints, as they have often very complex internal machinery to deal with garbage collection. Letting content interfere with this process is not desirable; UXP doesn't intend to implement this as a result (potential can of worms also for security considerations as it might open UAFs and the like).

Please consider removing WeakRef usage from Gitea's web interface. There should not be a reason for using it to begin with. Let the engine do its own housekeeping. There is currently the risk of JS scripting breaking if it runs into WeakRef being undefined errors.

Screenshots

I didn't think of capturing the error box

Gitea Version

1.23.1

Can you reproduce the bug on the Gitea demo site?

Yes

Operating System

Windows 10 22H2

Browser Version

Pale Moon 33.5.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    issue/needs-feedbackFor bugs, we need more details. For features, the feature must be described in more detailtopic/uiChange the appearance of the Gitea UItype/bugtype/upstreamThis is an issue in one of Gitea's dependencies and should be reported there

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions