Uploaded image for project: 'Realm JavaScript SDK'
  1. Realm JavaScript SDK
  2. RJS-318

N-API (and Node 12) support

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • 2516
    • SDK end 2019-11-26, SDK end 2019-12-03, SDK end 2019-12-10, SDK end 2019-12-17, SDK end 2020-1-8, SDK end 2020-1-20, SDK end 2020-1-28, SDK end 2020-02-25, SDK end 2020-03-10, SDK end 2020-03-24

      This task can be split basically by file. The re-implementation consists of going over every node_xxx file in the src directory and rewriting it to use Napi. Here is a list of all files that should be visited

      • [x] js_adapter.hpp
      • [x] js_global_notifier.hpp
      • [x] node_class.hpp
      • [x] node_context.hpp
      • [x] node_dummy.cpp
      • [x] node_exception.hpp
      • [x] node_function.hpp
      • [x] node_init.cpp
      • [x] node_init.hpp
      • [x] node_napi_convert.hpp
      • [x] node_object.hpp
      • [x] node_protected.hpp
      • [x] node_return_value.hpp
      • [x] node_string.hpp
      • [x] node_types.hpp
      • [x] node_value.hpp
      • [x] platform.cpp
      • [x] sync_logger.cpp
      • [x] sync_logger.hpp
      • [x] Visit implementation and add EscapableHandleScopes where needed (more than one napi value created)
      • [x] Handle and remove all //NAPI: comments
      • [x] Remove all nan.h, v8.h references
      • [x] Tidy up implementation (if needed)
      • [x] Test for node 12 issues
      • [x] Make CI work (jenkins, docker)
      • [x] Minimal Benchmark ( run adapter benchmark)
      • [ ] RN class syntax support changesĀ 

      These tasks can change over the course of the reimplementation.

            Assignee:
            lubo.blagoev@mongodb.com Lubo Blagoev
            Reporter:
            brian.munkholm@mongodb.com Brian Munkholm (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: