Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

alien-signals

Package Overview
Dependencies
Maintainers
1
Versions
31
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

alien-signals - npm Package Compare versions

Comparing version 0.3.0-alpha.2 to 0.3.0

2

package.json
{
"name": "alien-signals",
"version": "0.3.0-alpha.2",
"version": "0.3.0",
"license": "MIT",

@@ -5,0 +5,0 @@ "packageManager": "pnpm@9.12.0",

@@ -13,11 +13,10 @@ <p align="center">

The goal of `alien-signals` is to create a Signal library with the lowest overhead.
The goal of `alien-signals` is to create a push-pull model based aignal library with the lowest overhead.
We have set the following scheduling logic constraints:
1. Based on Push-Pull
2. No dynamic objects
3. No use of Array/Set/Map
4. No recursion calls
5. Class properties must be fewer than 10 (https://v8.dev/blog/fast-properties)
1. No dynamic object fields
2. No use of Array/Set/Map
3. No recursion calls
4. Class properties must be fewer than 10 (https://v8.dev/blog/fast-properties)

@@ -82,5 +81,5 @@ Experimental results have shown that with these constraints, it is possible to achieve excellent performance for a Signal library without using sophisticated scheduling strategies. The overall performance of `alien-signals` is approximately 400% that of Vue 3.4's reactivity system.

|---------|-----------------------------------------------------------------------------------------------|
| 0.3 | ~~Correctly schedule child effect scopes~~ |
| 0.3 | Satisfy all 4 constraints |
| 0.2 | Correctly schedule computed side effects |
| 0.1 | Correctly schedule inner effect callbacks |
| 0.0 | Add APIs: `signal()`, `computed()`, `effect()`, `effectScope()`, `startBatch()`, `endBatch()` |

@@ -47,5 +47,5 @@ export interface IEffect extends Subscriber {

export declare function propagate(subs: Link): void;
export declare function checkDirty(link: Link, depth?: number): boolean;
export declare function checkDirty(deps: Link): boolean;
export declare function startTrack(sub: Subscriber): Subscriber | undefined;
export declare function endTrack(sub: Subscriber, prevSub: Subscriber | undefined): void;
export declare function clearTrack(link: Link): void;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc