Skip to content
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

Master task list #213

Open
26 of 68 tasks
TheQwertiest opened this issue May 15, 2023 · 3 comments
Open
26 of 68 tasks

Master task list #213

TheQwertiest opened this issue May 15, 2023 · 3 comments

Comments

@TheQwertiest
Copy link
Owner

TheQwertiest commented May 15, 2023

  • DOM event handling model:
    • (implemented in v1 series) Decouple message processing and event processing and make event processing asynchronous.
    • Make native JS objects extendable.
    • EventTarget and Event
  • Basic module support
    • Backend support
    • Basic built-in module support
    • PoC modules:
      • fb:playback
      • fb:selection
  • Core API
  • Update fb2k SDK
  • Update mozjs
  • Implement JS job queue
  • Implement object caching
  • Reimplement fb2k API FB2K API reimplementation #219
  • Rewrite natively created promises, so that they would save their allocation site
  • menu manager module
  • console module
  • JSON config
    • Research Web API alternatives
    • Backend: implement localStorage
    • API
    • UI
  • Reimplement utils API
    • fs module (only parts for feature parity with v1)
    • path module (only parts for feature parity with v1)
    • detect-char-encoding module add shims that require iconv-lite + jschardet packages
    • add support for binary input in fs.writefile
    • Buffer (only text conversion for feature parity) see above for text conversion shims
    • smp(?) module
    • ???
  • Implement Canvas API state management
  • v1 shim
  • CustomEvent
  • Implement AbortController for async processes
  • Broadcast Channel API: simple scripts
  • Drag-n-drop (only parts for feature parity with v1)
  • Move ActiveXObject to module
  • Clipboard API (module or part of window?)(only parts for feature parity with v1)
  • Basic external module support
  • Broadcast Channel API: external modules
  • Local file storage (no usable WebAPI counterpart available): https://github.com/users/TheQwertiest/projects/1/views/1?pane=issue&itemId=29885092
  • node/os module
  • module with stuff like component detection (fb/component? fb/component-manager?)
  • Replace custom heap size tracking with built-in
  • 64bit version #209
  • Dark mode support
  • Top-level await: https://gitlab.gnome.org/GNOME/gjs/-/commit/f39ceac2c5dee2e59924bda229bc256ff24a0418
  • Implement text antialiasing (and rendering mode?)
  • Add font check and font register to Canvas module
  • Reorganize all utils files
  • Image cache binary deduplication
  • TODO cleanup
  • Rename/reorganize module (e.g. dom/ -> web/? root-space everything? split into gui/fb/system?)
  • Update to latest mozjs ESR
  • test with GC zeal enabled
  • TS bindings
  • Backport any v1 fixes if any
  • Docs
    • API
    • Site
@TheQwertiest TheQwertiest converted this from a draft issue May 15, 2023
@TT-ReBORN
Copy link

@TheQwertiest <3, it's nice and refreshing to see you back =)

@TheQwertiest
Copy link
Owner Author

Thanks :)
I'm not back yet though, but it's mostly the only hobby that's available for me right now...

@TheQwertiest TheQwertiest moved this from To do: features to To do: current release in Spider Monkey Panel May 15, 2023
@dream7180
Copy link

Happy to see your update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: To do: current release
Development

No branches or pull requests

3 participants