* add: prevent script install to be spawned if bun install is invoked
* add: test for infinite install loop
* add: error message
* fix: error message, exit code, test
---------
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com>
* node:child_process: allow passing stdin,stdout,stderr to spawn
* this doesnt actually need to be limited to 0,1,2
* Apply formatting changes
* fix stream guards
* undo process internals change
* wrap check in function for better clarity
* lazy load node:fs more
---------
Co-authored-by: nektro <nektro@users.noreply.github.com>
* think about the future
* waaaaaaaaaaa
* a
* testing
* make it faster
* fire
* macos and linux
* stuff
* a
* a
* CI
* buh
* disable in debug
* Apply formatting changes
* a
* a
* Apply formatting changes
* more review comment resolution
* a
* a
* oh no i started writing macos code from within windows i should stop and switch devices again
* rookie mistake
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
Co-authored-by: paperdave <paperdave@users.noreply.github.com>
* some work
* linux things
* linux things
* feat: tracestrings on Windows
* bwaa
* more work on the crash handler
* okay
* adgadsgbcxcv
* ya
* dsafds
* a
* wuh
* a
* bru h
* ok
* yay
* window
* alright
* oops
* yeah
* a
* a
* OOM handling
* fix on window
* Skeleton code for `bun run --workspace`
* Update run_command.zig
* implement directory traversal to find workspace root
* finish --workspace implementation
* clean up changes in run_command.zig
* add workspace tests, update harness to handle nested dirs
* [autofix.ci] apply automated fixes
* basic filtering
* [autofix.ci] apply automated fixes
* working filter without patterns
* update tests, filter mostly working
* simplify package name parsing, commit tests
* support filter even without workspace setup
* move filter arg handling to separate source file
* use bun.sys.chdir, match root package for scripts
* fix exit code handling
* ignore node_modules and directories starting with . in --filter
* progress converting --filter to use iterators
* convert filtering to use iterators
* cleanup
* implement DirEntry access method for glob (currently crashing)
* cleanup and fixes
* run js files in subprocess when filter flag passed
* clean up dead code
* fix fd leak in run_command.zig
* [autofix.ci] apply automated fixes
* fix issues after merge
* use posix-spawn in runBinary, fix resource PATH variable resource leak
* move filter argument to runtime category
* fix test harness
* add js and binary tests to filter-workspace
* [autofix.ci] apply automated fixes
* fix compile after merge
* [autofix.ci] apply automated fixes
* clean up filter-workspace test
* [autofix.ci] apply automated fixes
* fixes to running binaries
* fix actually setting cwd_override
* windows fixes
* address some review comments
* handle malformed JSON
* add various tests
* [autofix.ci] apply automated fixes
* update docs for filter
* [autofix.ci] apply automated fixes
* reset tinycc commit
* filtered run prototype
* make pretty
* implement abort handler (not working)
* make prettier
* prep for windows
* windows path and printing fixes
* implement log-style output (not tui)
* fix issues when logging to file
* revert a bunch of unecessary changes
* cleanup
* implement dependency order execution
* detect circular dependencies, fix cancel hang
* Fix `$PATH`
* ignore dep order on loop, stream on linux, sort pkgs
* support pre and post scripts
* add more filter tests, print elapsed time
* enable 'bun --filter' without run
* fix harness after merge
* [autofix.ci] apply automated fixes
* print number of scripts we're waiting for
* update docs, fix windows build
* fix tests on windows
* [autofix.ci] apply automated fixes
* fix uninitialized memory
* use terminal synchronized update sequences
* Add skip list
* Preallocate
* Use current bun in tests
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
* [bundows] Make bun install 60% faster
* [autofix.ci] apply automated fixes
* Do not keep node_modules folder open between async tasks. Make sure we call runTasks on every event loop wakeup.
* Update install.zig
* Fix deadlock
* Make that deadlock impossible
* a little less repetitive
* Fix test failure with local tarball
* Get those tests to pass
* Normalize absolutely
* lets see how many times we call GetFinalPathNameByHandle
* Workaround https://github.com/ziglang/zig/issues/19586https://github.com/ziglang/zig/issues/19586
* Is the dev-server-100 test failure a hash table collision?
* Give it its own cache dir
* We cannot change the git task ids
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* If any failed to install, always exit with non-zero
* [autofix.ci] apply automated fixes
* This test should fail
* Update bun-link.test.ts
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* these comments were redundant
* better windows support here
* slightly better error message
* didnt realize this variable already existed
* fix node-gyp shim script
* move 'windows bin linking shim should work' to its own file
* run all lifecycle scripts on windows with bun shell
* tidy
* clean imports
* this seemed missing
* remove these comments
* fix the shim again
* fix posix release ensureTempNodeGypScript
* revert this change, it was correct before
* make the shell throw by default
* make shell default to throws(true)
* ok
* mv tests
* a
* a
* [autofix.ci] apply automated fixes
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* root scripts in foreground
* ignore if silent
* test for breaking changes
* move back to installPackages
* [autofix.ci] apply automated fixes
* boolean variable, comptime, 1_1_0
* flip the 1.1 flag
* add for the next batch of breakings
* make it buidl
* enable breaking changes tests
* fix version fmt
* silent node-gyp
* comment change
---------
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Dylan Conway <35280289+dylan-conway@users.noreply.github.com>
* bun:test: implement test.todoIf and describe.todoIf
* fix bun-install-registry.test.ts and mark some as todo
* add even more tests
* remove todoIf from this file
* [autofix.ci] apply automated fixes
* fix regression
* this extra expect was incorrect
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
* remove comment
* fix prompt test
* more time like leaky case
* remove comments
* fixed
---------
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
* fix napi tests
* only windows, update passing tests
* remove closing remainder
* fix child_process-node.test.js
* might fail in ci
* oops
* fix dns tests
* remove comment
* sometimes it is slow
* update test
* maybe fix timeout error
* one more try
* off by one, valid npm package name
* update test
* fix hot tests
* revert
* remove close
* Fix regression with console.log in --watch on linux
* Unset CLOEXEC
* more
* Enable inheritance on windows
* Don't forget to close the handles...
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
* run-eval.test.ts
* transpiler-cache.test.ts
* node net
* some open things
* a
* a
* yikes
* incredible
* run it back
* a
* this code is what i like to call, incorrect
* ok its all worng
* remove an assertion that is wrong again
* update test things and rebase
* performance test
* mark filesink with mkfifo as todo. see #8166
* hehe
* not done
* awa
* fs test pass
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
* Replace some of std.ChildProcess with bun.spawnSync
* Update process.zig
* Fix some build errors
* Fix linux build
* Keep error
* Don't print a mesasge in this case
* Update spawn.test.ts
* Make `bun install` faster on Linux
* Comments + edgecases
* Fix the tests
* Add bun install launch.json
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Co-authored-by: Zack Radisic <zack@theradisic.com>
* more tests
* update migration.zig
* fix up paths
* update tests
* update tests
* test
* test
* update registry tests
* comments
* early exit if stream is invalid
* dont pass invalid_fd to openFileAtWindows
* fix merge
* misc crash fix
* make this use optional pointers instead of 0xaa
* ensure absolute paths are propagated properly
* package.json expects forward slash
* this assert was invalid
* add panic checks
* pass bun-remove
* more panic checks
* test: pass bun-add
* querying these hangs outside bun too
* fix compile error from merge conflict resolution
* use compileError instead of comptime unreachable
* tidy
* bunx: check for the .exe bin extension
* bunx: another route to make cache path if it doesnt exist
* install: another case of FolderResolution.getOrPut expecting absolute path
* fix a bun install crash
* dont print zig stack trace if bun install fails
* test: pass bun-link
* test: bunx: add more expects
* test: bun-install-registry: pass
* test: bun-install: pass
* test: bun-pm: pass
* fix merge main error
* fix posix tests
* fix last failing test in bun-install.test.ts
symlink difference between platforms
* bun-install-registry.test.ts fix
* bun-run.test.ts: remove stray console log
---------
Co-authored-by: Meghan Denny <meghan@bun.sh>
Co-authored-by: Meghan Denny <hello@nektro.net>
Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>