forked from oven-sh/bun
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(install): automatically migrate package-lock.json to bun.lockb (o…
…ven-sh#6352) * work so far * stuff * a * basics work * stuff * yoo * build lockfile * correct * f * a * install fixture havent tested * i made it worse * lol * be more reasonable * make the test easier to pass because bun install doesn't handle obscure lockfile edge cases :/ * a * works now * ok * a * a * cool * nah * fix stuff * l * a * idfk * LAME * prettier errors * does this fix tests? * Add more safety checks to Integrity * Add another check * More careful lifetime handling * Fix linux debugger issue * a * tmp dir and snapshot test --------- Co-authored-by: Jarred SUmner <jarred@jarredsumner.com>
- Loading branch information
1 parent
6a17ebe
commit 1bf28e0
Showing
53 changed files
with
41,621 additions
and
251 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,30 @@ | ||
#include "root.h" | ||
#include "JavaScriptCore/VM.h" | ||
|
||
// On Linux, signals are used to suspend/resume threads in JavaScriptCore | ||
// When `.acquireAccess` is called, the signal might be raised. | ||
// This causes issues with LLDB which might catch the signal. | ||
// So we want to avoid that, we really only want this code to be executed when the debugger is attached | ||
// But it's pretty hard to tell if LLDB is attached or not, so we just disable this code on Linux when in debug mode | ||
#ifndef ACQUIRE_RELEASE_HEAP_ACCESS | ||
#if OS(DARWIN) | ||
#define ACQUIRE_RELEASE_HEAP_ACCESS 1 | ||
#else | ||
#ifndef BUN_DEBUG | ||
#define ACQUIRE_RELEASE_HEAP_ACCESS 1 | ||
#endif | ||
#endif | ||
#endif | ||
|
||
extern "C" void bun_on_tick_before(JSC::VM* vm) | ||
{ | ||
// Let the GC do some work while we are idle | ||
#if ACQUIRE_RELEASE_HEAP_ACCESS | ||
vm->heap.releaseAccess(); | ||
#endif | ||
} | ||
extern "C" void bun_on_tick_after(JSC::VM* vm) | ||
{ | ||
#if ACQUIRE_RELEASE_HEAP_ACCESS | ||
vm->heap.acquireAccess(); | ||
#endif | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.