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

v18.20.0 proposal #52165

Merged
merged 77 commits into from
Mar 26, 2024
Merged

v18.20.0 proposal #52165

merged 77 commits into from
Mar 26, 2024

Commits on Feb 28, 2024

  1. build: fix incorrect g++ warning message

    The warning message was inadvertently changed to a newer version of
    g++ than the one being checked for when a refactor PR was merged to
    v18.x-staging.
    
    Refs: #47667
    PR-URL: #51695
    Reviewed-By: Ruy Adorno <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    richardlau committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    4b960c3 View commit details
    Browse the repository at this point in the history
  2. test: increase platform timeout zlib-brotli-16gb

    PR-URL: #51792
    Reviewed-By: Matteo Collina <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Moshe Atlow <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Joyee Cheung <[email protected]>
    RafaelGSS authored and richardlau committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    1c1a7ec View commit details
    Browse the repository at this point in the history
  3. doc,crypto: add changelog and note about disabled RSA_PKCS1_PADDING

    PR-URL: #51782
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    panva authored and richardlau committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    c7baf7b View commit details
    Browse the repository at this point in the history
  4. doc,crypto: further clarify RSA_PKCS1_PADDING support

    PR-URL: #51799
    Reviewed-By: Filip Skokan <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    tniessen authored and richardlau committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    8bfb8f5 View commit details
    Browse the repository at this point in the history

Commits on Mar 1, 2024

  1. test: test surrogate pair filenames on windows

    PR-URL: #51800
    Fixes: #51789
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    mertcanaltin authored and richardlau committed Mar 1, 2024
    Configuration menu
    Copy the full SHA
    1743d2b View commit details
    Browse the repository at this point in the history

Commits on Mar 8, 2024

  1. test: fix flaky http-chunk-extensions-limit test

    Replace the setInterval with a queueMicrotask to make test less flaky.
    
    Fixes: #51883
    PR-URL: #51943
    Reviewed-By: Joyee Cheung <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Paolo Insogna <[email protected]>
    Ethan-Arrowood authored and richardlau committed Mar 8, 2024
    Configuration menu
    Copy the full SHA
    902d8b3 View commit details
    Browse the repository at this point in the history

Commits on Mar 15, 2024

  1. deps: V8: cherry-pick c400af48b5ef

    Original commit message:
    
        [symbol-as-weakmap-key] Implement Symbol as WeakMap Keys
    
        Allow non-registered symbols as keys in weakmap and weakset.
        Allow non-registered symbols as target and unregisterToken in
        WeakRef and FinalizationRegistry.
    
        Bug: v8:12947
        Change-Id: Ieb63bda66e3cc378879ac651e23300b71caed627
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3865056
        Reviewed-by: Dominik Inführ <[email protected]>
        Commit-Queue: Marja Hölttä <[email protected]>
        Reviewed-by: Jakob Linke <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83313}
    
    Refs: v8/v8@c400af4
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    1ce901b View commit details
    Browse the repository at this point in the history
  2. deps: V8: cherry-pick 7f5daed62d47

    Original commit message:
    
        [symbol-as-weakmap-key] Add tests to check weak collection size
    
        ... after gc.
    
        This CL also adds a runtime test function GetWeakCollectionSize
        to get the weak collection size.
    
        Bug: v8:12947
        Change-Id: I4aff39165a54b63b3d690bfea71c2a439da01d00
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3905071
        Reviewed-by: Marja Hölttä <[email protected]>
        Commit-Queue: 王澳 <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83464}
    
    Refs: v8/v8@7f5daed
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    d4a530e View commit details
    Browse the repository at this point in the history
  3. deps: V8: cherry-pick 9a98f96b6d68

    Original commit message:
    
        [symbol-as-weakmap-key] Stage the feature
    
        Bug: v8:12947
        Change-Id: I0a151a6b301ee93675cc9f87a4fa24cb1be76462
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3928061
        Auto-Submit: Shu-yu Guo <[email protected]>
        Commit-Queue: Marja Hölttä <[email protected]>
        Reviewed-by: Marja Hölttä <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83483}
    
    Refs: v8/v8@9a98f96
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    fafbacd View commit details
    Browse the repository at this point in the history
  4. deps: V8: cherry-pick 94e8282325a1

    Original commit message:
    
        [symbol-as-weakmap-key] Fix DCHECKs and add CanBeHeldWeakly
    
        There are a few DCHECKs that weren't updated to allow for Symbols as
        weak collection keys. This CL updates those DCHECKs and also does the
        following refactors for clarity:
    
        - Add Object::CanBeHeldWeakly
        - Rename GotoIfCannotBeWeakKey -> GotoIfCannotBeHeldWeakly to align with
          spec AO name
    
        Bug: chromium:1370400, chromium:1370402, v8:12947
        Change-Id: I380840c8377497feae97e3fca37555dae0dcc255
        Fixed: chromium:1370400, chromium:1370402
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3928150
        Auto-Submit: Shu-yu Guo <[email protected]>
        Reviewed-by: Marja Hölttä <[email protected]>
        Commit-Queue: Marja Hölttä <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83507}
    
    Refs: v8/v8@94e8282
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    6d50966 View commit details
    Browse the repository at this point in the history
  5. deps: V8: cherry-pick 3dd9576ce336

    Original commit message:
    
        [inspector] Support Symbols in EntryPreview
    
        The Symbols-as-WeakMap-keys proposal allows non-Symbol.for Symbol values
        in weak collections, which means it can show in EntryPreviews.
    
        Also apparently Symbols in regular Maps and Sets were also unsupported.
    
        Bug: v8:13350, v8:12947
        Change-Id: Ib10476fa2f3c7f59af67933f0bf61640be1bbd97
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3930037
        Reviewed-by: Benedikt Meurer <[email protected]>
        Reviewed-by: Simon Zünd <[email protected]>
        Commit-Queue: Shu-yu Guo <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83518}
    
    Refs: v8/v8@3dd9576
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    d87a810 View commit details
    Browse the repository at this point in the history
  6. deps: V8: cherry-pick 1fada6b36f8d

    Original commit message:
    
        [symbol-as-weakmap-key] Fix DCHECKs when clearing JS weakrefs
    
        Bug: chromium:1372500, v8:12947
        Fixed: chromium:1372500
        Change-Id: Id6330de5886e4ea72544b307c358e2190ea47d9c
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3942586
        Reviewed-by: Anton Bikineev <[email protected]>
        Commit-Queue: Shu-yu Guo <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#83632}
    
    Refs: v8/v8@1fada6b
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    b0e8889 View commit details
    Browse the repository at this point in the history
  7. deps: V8: cherry-pick 705e374124ae

    Original commit message:
    
        [symbol-as-weakmap-key] Ship the proposal
    
        I2S with 3 LGTMs:
        https://groups.google.com/a/chromium.org/g/blink-dev/c/E6pDZP_TiBA/m/ZcXLwiz8AAAJ
    
        Bug: v8:12947
        Change-Id: Ibce4abc8b0610afb2041d44cc9ed136db8b62c0d
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4004610
        Commit-Queue: Shu-yu Guo <[email protected]>
        Reviewed-by: Camillo Bruni <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#84128}
    
    Refs: v8/v8@705e374
    PR-URL: #51004
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    58c7034 View commit details
    Browse the repository at this point in the history
  8. lib: fix compileFunction throws range error for negative numbers

    PR-URL: #49855
    Backport-PR-URL: #51004
    Fixes: #49848
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    MrJithil authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    5b5e519 View commit details
    Browse the repository at this point in the history
  9. src: cast v8::Object::GetInternalField() return value to v8::Value

    In preparation of https://chromium-review.googlesource.com/c/v8/v8/+/4707972
    which changes the return value to v8::Data.
    
    PR-URL: #48943
    Backport-PR-URL: #51004
    Reviewed-By: Juan José Arboleda <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Tobias Nießen <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    Reviewed-By: Jiawen Geng <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    ff334cb View commit details
    Browse the repository at this point in the history
  10. deps: add v8::Object::SetInternalFieldForNodeCore()

    This is a non-ABI breaking solution for
    v8/v8@b60a03d
    and
    v8/v8@0aa622e
    which are necessary for backporting vm-related memory fixes to v18.x.
    
    PR-URL: #49874
    Backport-PR-URL: #51004
    Reviewed-By: Matteo Collina <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Jiawen Geng <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    425e011 View commit details
    Browse the repository at this point in the history
  11. src: set ModuleWrap internal fields only once

    There is no need to initialize the internal fields to undefined
    and then initialize them to something else in the caller. Simply
    pass the internal fields into the constructor to initialize
    them just once.
    
    PR-URL: #49391
    Backport-PR-URL: #51004
    Reviewed-By: Darshan Sen <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    2c2892b View commit details
    Browse the repository at this point in the history
  12. module: use symbol in WeakMap to manage host defined options

    Previously when managing the importModuleDynamically callback of
    vm.compileFunction(), we use an ID number as the host defined option
    and maintain a per-Environment ID -> CompiledFnEntry map to retain
    the top-level referrer function returned by vm.compileFunction() in
    order to pass it back to the callback, but it would leak because with
    how we used v8::Persistent to maintain this reference, V8 would not
    be able to understand the cycle and would just think that the
    CompiledFnEntry was supposed to live forever. We made an attempt
    to make that reference known to V8 by making the CompiledFnEntry weak
    and using a private symbol to make CompiledFnEntry strongly
    references the top-level referrer function in
    #46785, but that turned out to be
    unsound, because the there's no guarantee that the top-level function
    must be alive while import() can still be initiated from that
    function, since V8 could discard the top-level function and only keep
    inner functions alive, so relying on the top-level function to keep
    the CompiledFnEntry alive could result in use-after-free which caused
    a revert of that fix.
    
    With this patch we use a symbol in the host defined options instead of
    a number, because with the stage-3 symbol-as-weakmap-keys proposal
    we could directly use that symbol to keep the referrer alive using a
    WeakMap. As a bonus this also keeps the other kinds of referrers
    alive as long as import() can still be initiated from that
    Script/Module, so this also fixes the long-standing crash caused by
    vm.Script being GC'ed too early when its importModuleDynamically
    callback still needs it.
    
    PR-URL: #48510
    Backport-PR-URL: #51004
    Refs: #44211
    Refs: #42080
    Refs: #47096
    Refs: #43205
    Refs: #38695
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    a86a2e1 View commit details
    Browse the repository at this point in the history
  13. module: fix leak of vm.SyntheticModule

    Previously we maintain a strong persistent reference to the
    ModuleWrap to retrieve the ID-to-ModuleWrap mapping from
    the HostImportModuleDynamicallyCallback using the number ID
    stored in the host-defined options. As a result the ModuleWrap
    would be kept alive until the Environment is shut down, which
    would be a leak for user code. With the new symbol-based
    host-defined option we can just get the ModuleWrap from the
    JS-land WeakMap so there's now no need to maintain this
    strong reference. This would at least fix the leak for
    vm.SyntheticModule. vm.SourceTextModule is still leaking
    due to the strong persistent reference to the v8::Module.
    
    PR-URL: #48510
    Backport-PR-URL: #51004
    Refs: #44211
    Refs: #42080
    Refs: #47096
    Refs: #43205
    Refs: #38695
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    2e05cf1 View commit details
    Browse the repository at this point in the history
  14. module: fix the leak in SourceTextModule and ContextifySript

    Replace the persistent handles to v8::Module and
    v8::UnboundScript with an internal reference that V8's GC is
    aware of to fix the leaks.
    
    PR-URL: #48510
    Backport-PR-URL: #51004
    Refs: #44211
    Refs: #42080
    Refs: #47096
    Refs: #43205
    Refs: #38695
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    7552de6 View commit details
    Browse the repository at this point in the history
  15. test: add checkIfCollectable to test/common/gc.js

    PR-URL: #49671
    Backport-PR-URL: #51004
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    1586c11 View commit details
    Browse the repository at this point in the history
  16. test: use checkIfCollectable in vm leak tests

    Previously we simply create a lot of the target objects and check
    if the process crash due to OOM. Due to how we use emphemeron GC
    to handle memory management, which is inefficient but necessary
    for correctness, the tests can produce false positives as
    the GC isn't efficient enough to catch up with a very fast
    heap growth.
    
    This patch uses a new checkIfCollectable() utility to terminate the
    test early once we detect that any of the target object can actually
    be garbage collected. This should lower the chance of false positives.
    As a drive-by this also allows us to use setImmediate() to grow the
    heap even faster to make the tests run faster.
    
    PR-URL: #49671
    Backport-PR-URL: #51004
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    0b156c6 View commit details
    Browse the repository at this point in the history
  17. test: deflake test-vm-contextified-script-leak

    Similar to the test-vm-source-text-module-leak fix, use a snapshot
    to force a thorough GC in order to prevent false positives.
    
    PR-URL: #49710
    Backport-PR-URL: #51004
    Refs: nodejs/reliability#669
    Reviewed-By: Franziska Hinkelmann <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Rich Trott <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    5e42651 View commit details
    Browse the repository at this point in the history
  18. vm: use default HDO when importModuleDynamically is not set

    This makes it possile to hit the in-isolate compilation cache when
    host-defined options are not necessary.
    
    PR-URL: #49950
    Backport-PR-URL: #51004
    Refs: #35375
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    6291c10 View commit details
    Browse the repository at this point in the history
  19. vm: unify host-defined option generation in vm.compileFunction

    Set a default host-defined option for vm.compileFunction so that
    it's consistent with vm.Script.
    
    PR-URL: #50137
    Backport-PR-URL: #51004
    Refs: #35375
    Reviewed-By: Geoffrey Booth <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Antoine du Hamel <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    9f7899e View commit details
    Browse the repository at this point in the history
  20. vm: use internal versions of compileFunction and Script

    Instead of using the public versions of the vm APIs internally,
    use the internal versions so that we can skip unnecessary
    argument validation.
    
    The public versions would need special care to the generation
    of host-defined options to hit the isolate compilation cache
    when imporModuleDynamically isn't used, while internally it's
    almost always used, so this allows us to handle the host-defined
    options separately.
    
    PR-URL: #50137
    Backport-PR-URL: #51004
    Refs: #35375
    Reviewed-By: Geoffrey Booth <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Antoine du Hamel <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    052e095 View commit details
    Browse the repository at this point in the history
  21. vm: reject in importModuleDynamically without --experimental-vm-modules

    Users cannot access any API that can be used to return a module or
    module namespace in this callback without --experimental-vm-modules
    anyway, so this would eventually lead to a rejection. This patch
    rejects in this case with our own error message and use a constant
    host-defined option for the rejection, so that scripts with the
    same source can still be compiled using the compilation cache
    if no `import()` is actually called in the script.
    
    PR-URL: #50137
    Backport-PR-URL: #51004
    Refs: #35375
    Reviewed-By: Geoffrey Booth <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Antoine du Hamel <[email protected]>
    joyeecheung authored and richardlau committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    fe66e9d View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2024

  1. deps: update icu to 74.1

    PR-URL: #50515
    Backport-PR-URL: #51973
    Reviewed-By: Steven R Loomis <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Refs: #51933
    nodejs-github-bot authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    2a2bf57 View commit details
    Browse the repository at this point in the history
  2. deps: update timezone to 2023d

    PR-URL: #51461
    Backport-PR-URL: #51973
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Refs: #51933
    nodejs-github-bot authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    90c73d2 View commit details
    Browse the repository at this point in the history
  3. tools: fix update-icu.sh

    The name of the sources MD5 file has changed.
    
    Refs: https://github.com/unicode-org/icu/releases/tag/release-74-2
    PR-URL: #51723
    Backport-PR-URL: #51973
    Refs: #51721
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Steven R Loomis <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Refs: #51933
    targos authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    3184bef View commit details
    Browse the repository at this point in the history
  4. deps: update icu to 74.2

    Refs: https://github.com/unicode-org/icu/releases/tag/release-74-2
    PR-URL: #51723
    Backport-PR-URL: #51973
    Refs: #51721
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Steven R Loomis <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Refs: #51933
    targos authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    f9b229e View commit details
    Browse the repository at this point in the history
  5. deps: update timezone to 2024a

    PR-URL: #51723
    Backport-PR-URL: #51973
    Refs: https://github.com/unicode-org/icu/releases/tag/release-74-2
    Refs: #51721
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Steven R Loomis <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Refs: #51933
    targos authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    68fd751 View commit details
    Browse the repository at this point in the history
  6. deps: V8: cherry-pick a0fd3209dda8

    Original commit message:
        Reland "[import-attributes] Implement import attributes, with `assert` fallback"
    
        This is a reland of commit 159c82c5e6392e78b9bba7161b1bed6e23758984, to set the correct author.
    
        Original change's description:
        > [import-attributes] Implement import attributes, with `assert` fallback
        >
        > In the past six months, the old import assertions proposal has been
        > renamed to "import attributes" with the follwing major changes:
        > 1. the keyword is now `with` instead of `assert`
        > 2. unknown assertions cause an error rather than being ignored
        >
        > To preserve backward compatibility with existing applications that use
        > `assert`, implementations _can_ keep it around as a fallback for both
        > the static and dynamic forms.
        >
        > Additionally, the proposal has some minor changes that came up during
        > the stage 3 reviews:
        > 3. dynamic import first reads all the attributes, and then verifies
        >    that they are all strings
        > 4. there is no need for a `[no LineTerminator here]` restriction before
        >    the `with` keyword
        > 5. static import syntax allows any `LiteralPropertyName` as attribute
        >    keys, to align with every other syntax using key-value pairs
        >
        > The new syntax is enabled by a new `--harmony-import-attributes` flag,
        > disabled by default. However, the new behavioral changes also apply to
        > the old syntax that is under the `--harmony-import-assertions` flag.
        >
        > This patch does implements (1), (3), (4) and (5). Handling of unknown
        > import assertions was not implemented directly in V8, but delegated
        > to embedders. As such, it will be implemented separately in d8 and
        > Chromium.
        >
        > To simplify the review, this patch doesn't migrate usage of the term
        > "assertions" to "attributes". There are many variables and internal
        > functions that could be easily renamed as soon as this patch landes.
        > There is one usage in the public API
        > (`ModuleRequest::GetImportAssertions`) that will probably need to be
        > aliased and then removed following the same process as for other API
        > breaking changes.
        >
        > Bug: v8:13856
        > Change-Id: I78b167348d898887332c5ca7468bc5d58cd9b1ca
        > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4632799
        > Commit-Queue: Shu-yu Guo <[email protected]>
        > Reviewed-by: Adam Klein <[email protected]>
        > Cr-Commit-Position: refs/heads/main@{#89110}
    
        Bug: v8:13856
        Change-Id: Ic59aa3bd9101618e47ddf6cf6d6416a3a438ebec
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4705558
        Commit-Queue: Shu-yu Guo <[email protected]>
        Reviewed-by: Shu-yu Guo <[email protected]>
        Reviewed-by: Adam Klein <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#89115}
    
    Refs: v8/v8@a0fd320
    PR-URL: #51136
    Reviewed-By: Yagiz Nizipli <[email protected]>
    nicolo-ribaudo authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    6fbf0ba View commit details
    Browse the repository at this point in the history
  7. deps: V8: cherry-pick ea996ad04a68

    Original commit message:
        [import-attributes] Remove support for numeric keys
    
        During the 2023-09 TC39 meeting the proposal has been updated to remove support
        for bigint and float literals as import attribute keys, due to implementation
        difficulties in other engines and minimal added value for JS developers.
    
        GH issue: tc39/proposal-import-attributes#145
    
        Bug: v8:13856
        Change-Id: I0ede2bb10d6ca338a4b0870a1261ccbcd088c16f
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4899760
        Reviewed-by: Shu-yu Guo <[email protected]>
        Commit-Queue: Joyee Cheung <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#90318}
    
    Refs: v8/v8@ea996ad
    PR-URL: #51136
    Reviewed-By: Yagiz Nizipli <[email protected]>
    nicolo-ribaudo authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    c13969e View commit details
    Browse the repository at this point in the history
  8. esm: use import attributes instead of import assertions

    The old import assertions proposal has been
    renamed to "import attributes" with the follwing major changes:
    
    1. The keyword is now `with` instead of `assert`.
    2. Unknown assertions cause an error rather than being ignored,
    
    This commit updates the documentation to encourage folks to use the new
    syntax, and add aliases for module customization hooks.
    
    PR-URL: #50140
    Backport-PR-URL: #51136
    Fixes: #50134
    Refs: v8/v8@159c82c
    Reviewed-By: Geoffrey Booth <[email protected]>
    Reviewed-By: Jacob Smith <[email protected]>
    Reviewed-By: Benjamin Gruenbaum <[email protected]>
    aduh95 authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    a193be3 View commit details
    Browse the repository at this point in the history
  9. vm: use import attributes instead of import assertions

    The old import assertions proposal has been
    renamed to "import attributes" with the following major changes:
    
    1. The keyword is now `with` instead of `assert`.
    2. Unknown assertions cause an error rather than being ignored.
    
    This PR updates the documentation to encourage folks to use the new
    syntax, and add aliases to preserve backward compatibility.
    
    PR-URL: #50141
    Backport-PR-URL: #51136
    Reviewed-By: Geoffrey Booth <[email protected]>
    Reviewed-By: Vinícius Lourenço Claro Cardoso <[email protected]>
    aduh95 authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    06646e1 View commit details
    Browse the repository at this point in the history
  10. src: iterate on import attributes array correctly

    The array's length is supposed to be a multiple of two for dynamic
    import callbacks.
    
    Fixes: #50700
    PR-URL: #50703
    Backport-PR-URL: #51136
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Shelley Vohr <[email protected]>
    Reviewed-By: Joyee Cheung <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    targos authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    96514a8 View commit details
    Browse the repository at this point in the history
  11. fs: introduce dirent.parentPath

    The goal is to replace `dirent.path` using a name that's less likely to
    create confusion.
    `dirent.path` value has not been stable, moving it to a different
    property name should avoid breaking some upgrading user expectations.
    
    PR-URL: #50976
    Backport-PR-URL: #51021
    Reviewed-By: Ethan Arrowood <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    aduh95 authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    26e8f77 View commit details
    Browse the repository at this point in the history
  12. doc: deprecate dirent.path

    PR-URL: #51020
    Backport-PR-URL: #51021
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Moshe Atlow <[email protected]>
    PR-URL: #50976
    aduh95 authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    0f09267 View commit details
    Browse the repository at this point in the history
  13. doc: add deprecation notice to dirent.path

    Refs: #51020
    PR-URL: #51059
    Backport-PR-URL: #51021
    Reviewed-By: Debadree Chatterjee <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Moshe Atlow <[email protected]>
    PR-URL: #50976
    aduh95 authored and richardlau committed Mar 18, 2024
    Configuration menu
    Copy the full SHA
    194ff6a View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2024

  1. tls: fix order of setting cipher before setting cert and key

    Set the cipher list and cipher suite before anything else
    because @SECLEVEL=<n> changes the security level and
    that affects subsequent operations.
    
    Fixes: #36655
    Fixes: #49549
    Refs: https://github.com/orgs/nodejs/discussions/49634
    Refs: https://github.com/orgs/nodejs/discussions/46545
    Refs: https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html
    PR-URL: #50186
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Paolo Insogna <[email protected]>
    kumarrishav authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    d9ea6c1 View commit details
    Browse the repository at this point in the history
  2. doc: fix historical experimental fetch flag

    PR-URL: #51506
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    kenrick95 authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    f232064 View commit details
    Browse the repository at this point in the history
  3. deps: escape Python strings correctly

    Fixes: #50671
    PR-URL: #50695
    Reviewed-By: Christian Clauss <[email protected]>
    Reviewed-By: Jithil P Ponnan <[email protected]>
    Reviewed-By: Jiawen Geng <[email protected]>
    Reviewed-By: Tobias Nießen <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Moshe Atlow <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    targos authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    4a6f83e View commit details
    Browse the repository at this point in the history
  4. deps: update corepack to 0.23.0

    PR-URL: #50563
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    adac0c7 View commit details
    Browse the repository at this point in the history
  5. deps: update corepack to 0.24.0

    PR-URL: #51318
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    d1a9237 View commit details
    Browse the repository at this point in the history
  6. deps: update corepack to 0.24.1

    PR-URL: #51459
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    a593985 View commit details
    Browse the repository at this point in the history
  7. deps: update corepack to 0.25.2

    PR-URL: #51810
    Reviewed-By: Antoine du Hamel <[email protected]>
    Reviewed-By: Matteo Collina <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    5aec3af View commit details
    Browse the repository at this point in the history
  8. test: fix internet/test-inspector-help-page

    The webpage at the URL referenced by `node --inspect` was retitled when
    it was recently moved.
    
    Update the test to match the new title "Debugging Node.js" (formerly
    "Debugging Guide").
    
    Refs: nodejs/nodejs.org#6265
    PR-URL: #51693
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    40f10ea View commit details
    Browse the repository at this point in the history
  9. crypto: update root certificates to NSS 3.98

    This is the certdata.txt[0] from NSS 3.98, released on 2024-02-15.
    
    This is the version of NSS that will ship in Firefox 124 on
    2024-03-19.
    
    Certificates added:
    - Telekom Security TLS ECC Root 2020
    - Telekom Security TLS RSA Root 2023
    
    Certificates removed:
    - Security Communication Root CA
    
    [0] https://hg.mozilla.org/projects/nss/raw-file/NSS_3_98_RTM/lib/ckfw/builtins/certdata.txt
    
    PR-URL: #51794
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Moshe Atlow <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    8fdea67 View commit details
    Browse the repository at this point in the history
  10. deps: upgrade npm to 10.3.0

    PR-URL: #51431
    Reviewed-By: Luke Karrys <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    npm-cli-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    c8876d7 View commit details
    Browse the repository at this point in the history
  11. deps: upgrade npm to 10.5.0

    PR-URL: #51913
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    npm-cli-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    3a3808a View commit details
    Browse the repository at this point in the history
  12. deps: update ada to 2.7.4

    PR-URL: #50815
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    cc434c1 View commit details
    Browse the repository at this point in the history
  13. deps: update ada to 2.7.5

    PR-URL: #51542
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    Reviewed-By: Daniel Lemire <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    73a946d View commit details
    Browse the repository at this point in the history
  14. deps: update ada to 2.7.6

    PR-URL: #51542
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: LiviaMedeiros <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    Reviewed-By: Daniel Lemire <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    11ba859 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2024

  1. deps: update simdutf to 4.0.4

    PR-URL: #50772
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    183cf8a View commit details
    Browse the repository at this point in the history
  2. deps: update simdutf to 4.0.8

    PR-URL: #51000
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    b4502d3 View commit details
    Browse the repository at this point in the history
  3. deps: update base64 to 0.5.1

    PR-URL: #50629
    Fixes: #50561
    Fixes: #45091
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    13a9e81 View commit details
    Browse the repository at this point in the history
  4. deps: update base64 to 0.5.2

    PR-URL: #51455
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    16d28a8 View commit details
    Browse the repository at this point in the history
  5. deps: update zlib to 1.2.13.1-motley-dfc48fc

    PR-URL: #50456
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    f0da591 View commit details
    Browse the repository at this point in the history
  6. deps: update zlib to 1.2.13.1-motley-5daffc7

    PR-URL: #50803
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    4b43823 View commit details
    Browse the repository at this point in the history
  7. deps: update zlib to 1.3-22124f5

    PR-URL: #50910
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    b0ca084 View commit details
    Browse the repository at this point in the history
  8. deps: update zlib to 1.3.0.1-motley-dd5fc13

    PR-URL: #51105
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    57a38c8 View commit details
    Browse the repository at this point in the history
  9. deps: update zlib to 1.3.0.1-motley-40e35a7

    PR-URL: #51274
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    7bea2d7 View commit details
    Browse the repository at this point in the history
  10. test: handle relative https redirect

    Fix `internet/test-inspector-help-page` to handle the relative
    redirect of `https://nodejs.org/en/docs/inspector` to
    `/en/docs/guides/debugging-getting-started`. Previously this
    URL redirected to an absolute URL.
    
    PR-URL: #51121
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    cd613e5 View commit details
    Browse the repository at this point in the history
  11. test: fix dns test case failures after c-ares update to 1.21.0+

    c-ares has made intentional changes to the behavior of TXT records
    to comply with RFC 7208, which concatenates multiple strings for
    the same TXT record into a single string.  Multiple TXT records
    are not concatenated.
    
    Also, response handling has changed, such that a response which is
    completely invalid in formatting is thrown away as a malicious
    forged/spoofed packet rather than returning EBADRESP.  This is one
    step toward RFC 9018 (EDNS COOKIES) which will require the message
    to at least be structurally valid to validate against spoofed
    records.
    
    Fix By: Brad House (@bradh352)
    
    PR-URL: #50743
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Fixes: #50741
    Refs: #50444
    bradh352 authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    95d7a75 View commit details
    Browse the repository at this point in the history
  12. deps: update c-ares to 1.25.0

    PR-URL: #51385
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    8fb7436 View commit details
    Browse the repository at this point in the history
  13. deps: compile c-ares with C11 support

    This should get rid of the following GCC warning:
    ISO C90 does not support ‘long long’ [-Wlong-long]
    
    PR-URL: #51410
    Reviewed-By: Jiawen Geng <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    targos authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    9498ac8 View commit details
    Browse the repository at this point in the history
  14. deps: update c-ares to 1.26.0

    PR-URL: #51582
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    c688680 View commit details
    Browse the repository at this point in the history
  15. deps: update c-ares to 1.27.0

    PR-URL: #51846
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    nodejs-github-bot authored and richardlau committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    9ab8c3d View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2024

  1. deps: V8: cherry-pick d90d4533b053

    Original commit message:
    
        Fix reading integer-indexed import assertions in dynamic import
    
        Use GetPropertyOrElement instead of GetProperty to read import assertion
        values from the import assertions object, to support cases in which the
        key is an integer index such as `"0"`.
    
        The added test case, when using GetProperty, triggers the following DCHECK in
        debug builds:
        https://source.chromium.org/chromium/chromium/src/+/main:v8/src/objects/lookup-inl.h;l=108;drc=515f187ba067ee4a99fdf5198cca2c97abd342fd
        In release builds it silently fails to read the property, and thus throws about
        it not being a valid string.
    
        Bug: v8:14069
        Change-Id: Ifd4645b7bd9bfd07f06fa33727441d27eabc4d32
        Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4614489
        Reviewed-by: Victor Gomes <[email protected]>
        Commit-Queue: Marja Hölttä <[email protected]>
        Reviewed-by: Marja Hölttä <[email protected]>
        Cr-Commit-Position: refs/heads/main@{#88267}
    
    Refs: v8/v8@d90d453
    PR-URL: #50077
    Reviewed-By: Ben Noordhuis <[email protected]>
    Reviewed-By: Tobias Nießen <[email protected]>
    Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
    Reviewed-By: Rafael Gonzaga <[email protected]>
    Reviewed-By: Yagiz Nizipli <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    targos authored and richardlau committed Mar 21, 2024
    Configuration menu
    Copy the full SHA
    812b126 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2024

  1. test, v8: fix wrong import attributes test

    PR-URL: #52184
    Refs: #51136
    Refs: #52165 (comment)
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Marco Ippolito <[email protected]>
    Reviewed-By: Geoffrey Booth <[email protected]>
    nicolo-ribaudo authored and richardlau committed Mar 22, 2024
    Configuration menu
    Copy the full SHA
    931d02f View commit details
    Browse the repository at this point in the history
  2. node-api: introduce experimental feature flags

    Add a flag for each experimental feature to indicate its presence.
    That way, if we compile with `NAPI_EXPERIMENTAL` turned on, we'll be
    able to distinguish between what `NAPI_EXPERIMENTAL` used to mean on an
    old version of the headers when compiling against such an old version,
    and what it means on a new version of Node.js.
    
    PR-URL: #50991
    Reviewed-By: Michael Dawson <[email protected]>
    Reviewed-By: Vladimir Morozov <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Backport-PR-URL: #51804
    (cherry picked from commit 727dd28)
    gabrielschulhof authored and richardlau committed Mar 22, 2024
    Configuration menu
    Copy the full SHA
    3d0b233 View commit details
    Browse the repository at this point in the history
  3. node-api: factor out common code into macros

        * Create macro for checking new string arguments.
        * Create macro for combining env check and inside-gc check.
    
    PR-URL: #50664
    Reviewed-By: Vladimir Morozov <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Chengzhong Wu <[email protected]>
    Backport-PR-URL: #51804
    (cherry picked from commit 5e250bd)
    gabrielschulhof authored and richardlau committed Mar 22, 2024
    Configuration menu
    Copy the full SHA
    1aa71c2 View commit details
    Browse the repository at this point in the history
  4. node-api: segregate nogc APIs from rest via type system

    We define a new type called `node_api_nogc_env` as the `const` version
    of `napi_env` and `node_api_nogc_finalize` as a variant of
    `napi_finalize` that accepts a `node_api_nogc_env` as its first
    argument.
    
    We then modify those APIs which do not affect GC state as accepting a
    `node_api_nogc_env`. APIs accepting finalizer callbacks are modified to
    accept `node_api_nogc_finalize` callbacks. Thus, the only way to attach
    a `napi_finalize` callback, wherein Node-APIs affecting GC state may be
    called is to call `node_api_post_finalizer` from a
    `node_api_nogc_finalize` callback.
    
    In keeping with the process of introducing new Node-APIs, this feature
    is guarded by `NAPI_EXPERIMENTAL`. Since this feature modifies APIs
    already marked as stable, it is additionally guared by
    `NODE_API_EXPERIMENTAL_NOGC_ENV`, so as to provide a further buffer to
    adoption. Nevertheless, both guards must be removed upon releasing a
    new version of Node-API.
    
    PR-URL: #50060
    Reviewed-By: Chengzhong Wu <[email protected]>
    Reviewed-By: Vladimir Morozov <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    Backport-PR-URL: #51804
    (cherry picked from commit 7a216d5)
    gabrielschulhof authored and richardlau committed Mar 22, 2024
    Configuration menu
    Copy the full SHA
    32906dd View commit details
    Browse the repository at this point in the history

Commits on Mar 23, 2024

  1. build: support Python 3.12

    PR-URL: #50209
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: Christian Clauss <[email protected]>
    Reviewed-By: Luigi Pinca <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    shipujin authored and richardlau committed Mar 23, 2024
    Configuration menu
    Copy the full SHA
    c70383b View commit details
    Browse the repository at this point in the history
  2. stream: do not defer construction by one microtick

    Fixes: #51993
    PR-URL: #52005
    Reviewed-By: Robert Nagy <[email protected]>
    Reviewed-By: Michaël Zasso <[email protected]>
    mcollina authored and richardlau committed Mar 23, 2024
    Configuration menu
    Copy the full SHA
    270b519 View commit details
    Browse the repository at this point in the history
  3. 2024-03-26, Version 18.20.0 'Hydrogen' (LTS)

    Notable changes:
    
    Added support for import attributes:
    
    Support has been added for import attributes, to replace the old import
    assertions syntax. This will aid migration by making the new syntax
    available across all currently supported Node.js release lines.
    
    For more details, see
    
    * [#50134](#50134)
    * [#51622](#51622)
    
    Doc deprecation for `dirent.path`:
    
    Please use newly added `dirent.parentPath` instead.
    
    Experimental node-api feature flags
    
    Introduces an experimental feature to segregate finalizers that affect GC state.
    A new type called `node_api_nogc_env` has been introduced as the const version
    of `napi_env` and `node_api_nogc_finalize` as a variant of `napi_finalize` that
    accepts a `node_api_nogc_env` as its first argument.
    
    This feature can be turned off by defining
    `NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT`.
    
    Root certificates updated to NSS 3.98:
    
    Certificates added:
    
    * Telekom Security TLS ECC Root 2020
    * Telekom Security TLS RSA Root 2023
    
    Certificates removed:
    
    * Security Communication Root CA
    
    Updated dependencies:
    
    * ada updated to 2.7.6.
    * base64 updated to 0.5.2.
    * c-ares updated to 1.27.0.
    * corepack updated to 0.25.2.
    * ICU updated to 74.2. Includes CLDR 44.1 and Unicode 15.1.
    * npm updated to 10.5.0. Fixes a regression in signals not being passed onto child processes.
    * simdutf8 updated to 4.0.8.
    * Timezone updated to 2024a.
    * zlib updated to 1.3.0.1-motley-40e35a7.
    
    vm: fix V8 compilation cache support for vm.Script:
    
    Previously repeated compilation of the same source code using `vm.Script`
    stopped hitting the V8 compilation cache after v16.x when support for
    `importModuleDynamically` was added to `vm.Script`, resulting in a performance
    regression that blocked users (in particular Jest users) from upgrading from
    v16.x.
    
    The recent fixes allow the compilation cache to be hit again
    for `vm.Script` when `--experimental-vm-modules` is not used even in the
    presence of the `importModuleDynamically` option, so that users affected by the
    performance regression can now upgrade. Ongoing work is also being done to
    enable compilation cache support for `vm.CompileFunction`.
    
    PR-URL: #52165
    richardlau committed Mar 23, 2024
    Configuration menu
    Copy the full SHA
    f75dc41 View commit details
    Browse the repository at this point in the history