* adding a video
* updating docs
* wip: getting tailwind working better with postcss-loader
* finally got tailwind working
* WIP: site fix up
* Cleaning up tailwind!
* updating docs
* moved things around drastically
* revamped docs
* data from commander cli options
* examples for cache
* adding shiki twoslash and the config.md updated to use it
* some more config updates
* fixing broken links
* Update jest monorepo to v29
* remove unused jest setup in docs-beta
* update configs
* update snapshots and fix typescript errors
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Elizabeth Craig <elcraig@microsoft.com>
* WIP: adding worker runner
* WIP: starting to measure how to put WorkerRunner in CLI
* fixed run action command to use the workerRunner
* adding cleanup
* WIP: trying to figure out stdout/stdin
* worker pool + process working!
* WIP: using lage-run's own worker-threads-pool
* format and refactoring
* adding support for the bundle
* Change files
* fixing up the lint script to actually fail
* allowing for setup / teardown of a worker thread - useful for setting up streams
* get rid of unused event emits
* formatting
* some basic test to pass
* get rid of unneeded storing of logs
* get rid unneeded imports
* Change files
* lint fix
* fixing eslint issues
* restorable outputs from last cached runs
* WIP: swapping to using streams as input rather than having runners be aware of how to create a "transform" stream
* WIP: beautification
* New reporter (npmlog -> console), update snapshots
* more updates to the beautifying project
* beautify!
* beauty!
* Change files
* better colors yo
* fix formatting
* adding commander to replace yargs
* logging and verbosity
* make sure the error case exits with an exit code of 1
* fixed README.md
* pass the internalCacheFolder into the config
* Change files
* fixing formating
* updates the snapshots
* most e2e passed, except for transitiveDepsTests
* fixed up the transitive task deps - by adding back the default behavior of v1.x --include-dependencies
* formatting
* move e2e tests to a new package
* fixing up mocking after moving e2e tests
* Change files
* adding an entry for lage test
* scheduler init checkin
* simple scheduler is functionality complete
* polish on types
* adding a simple test
* simple scheduler test
* WIP
* wip: working on abortsignals
* Figured out the abort controller pattern
* abort signal handled!
* added a way for targets to specify a node option
* learn how to launch npm
* only run npm script when there IS a script in the package.json
* adding formatduration test
* clearing up responsibility
* made sure the abort signal works in a unit test
* wip on testing npmscriptrunner
* abort signal test work!
* testing the environment variables
* wrapped target tests started
* test that wrapped target can cache
* tests written about aborting earlier vs not
* Change files
* comments
* less exposed functions, and added more comments
* adding a cmd file for the fakeNpm
* adding fixes for windows to be able to test this
* use a matrix to make sure builds and tests are okay with all os's
* fixing formatting according to prettier
* updating test to exhibit correct behavior
* fixed tests to be able to run very quickly and in parallel
* Don't publish monorepo-scripts!
* make sure to ignore the generated and node_modules with prettier
* forget about enforcing the endofline
* init check in of reporters
* fixing up adoreporter
* beginnings of an interactive reporter
* WIP
* WIP
* WIP 2
* converted npmlogreporter
* updating npmlogreporter with test
* npmlog testing
* adding some tests for reporters
* adding jsonreporter test
* better formatting for the snapshots
* ado reporter tests
* adding tests for adoreporter
* updated format
* fix format
* updated the summary that is emitted by scheduler
* restore
* Change files
* cache implementation, salt fn tested
* updated for remote cache provider
* polishing the branch a bit
* Polishing PR
* adding monorepo-fixture
* fixing up and polishing
* polishing with lint
* refactored to have remoteFallbackCacheProvider take in providers to assist in testing and better separation of concerns
* some documentation for when we implement the consumer of this library!
* Change files
* fixing up prettier formatting
* cleaning up linting issues
* adding some nice comments
* fixing the tests
* using lage itself to build itself!
* get all the jest config in one spot
* added some imports in examples
* added index.ts exports to make it easier to use this library
* initial check in of target-graph - a refactored Pipeline and Target from lage v1
* adding yarn.lock change
* Change files
* fixes import for a Target type
* update to the runner
* getting rid of runner code
* getting rid of runner code
* updated the algorithm to exclude startnodes for all targets in subgraph calculations
* get rid of extra fields
* export types
* adding jsdocs for the target config
* adds some comments to clarify the complex functions in this class
* make more imports as "type" to help transpilers
* prettier
* new icons for just and p-chart
* example of react flow
* addition of grapher, styling corrections
* changing js extensions to tsx
* netlify
* restructuring
* fixing the build!
* merged yarn.lock
Co-authored-by: Ken <kchau@microsoft.com>
* builds are now working
* adding a few changes to make the preview site work
* try to get rid of variance of baseUrl
* adds a redirect to the /lage path (matching github.io)
* moving netlify to bottom
* https
* http -> https
* Added testimonials, tweets, tools, and a table to the landing page.
* Delete package-lock.json
deleting since this file is automatically generated.
* Delete yarn.lock
* Update Features.js
getting rid of an unnecessary import statement
* Update Footer.js
getting rid of an unnecessary import statement
* Update Footer.js
* Update Header.js
getting rid of an unnecessary import statement
* Update SideBySide.js
getting rid of an unnecessary import statement
* Update Table.js
getting rid of an unnecessary import statement
* Update Testimonials.js
getting rid of an unnecessary import statement
* Update Tools.js
getting rid of an unnecessary import statement
* Update Tweet.js
getting rid of an unnecessary import statement
* Update TwoColumns.js
getting rid of an unnecessary import statement
* Update TwoColumns.js
* Delete package-lock.json
* Update package.json
* style, custom CSS color, restructuring data
* new data structure for table, writing a unit test
* getting rid of yarn.lock file
* changing the script for running docs-beta
* adding yarn.lock file back
* tests doesn't pass, but it runs!
* moving to ts
* deleting unnecessary dependencies
* deleting unnecessary dependencies within docs
* yarn file matches original docs
Co-authored-by: Bilge Kocak <t-bilgekocak@microsoft.com>
Co-authored-by: Ken Chau <kchau@microsoft.com>
* Turning lage into monorepo to prepare subdividing into pieces
* getting rid of renovate for now
* updated the root scripts to work
* fixing up pipelines
* moving many files around requires adjustments to beachball config
* upgrade node version to allow docusaurus to consume newer node version
* Change files
* get rid of the extra docs: prefix
* adding verbose logging
* beginning of distributed mode
* hacky hack hack redis bee-queue, mumbo mumbo
* retrieving & saving cache
* beachball
* added a way to create unique queues
* Change files
* configurable bee-queue options
* concurrency
* closing queues
* reuse workerQueue
* queue
* worker queue reuse
* adding exit condition
* hacky hack to close off bee-queue workers
* different exit condition
* more logging
* more dist
* merged distributed work with latest master
* fixed type errors
* fixing more distributed mode
* update yarn
* updated backfill to make global caching more aceptable speeds
* back to 0.32.0
* merging with master
* renamed dist task
* using the bee-queue job result mechanism to pass some data back to distributed task to "fan-in" the cache results
* working on args
* simplifying worker
* restores remote cache to the master node
* delete unnecessary disconnect awaits
* refactored workerqueue to be a class
* added remote cache with fallback
* Change files
* using the remote cache fallback custom provider
* clarification
* WIP: beginnings of a e2e test for this
* fallback
* configuring git user
* adding a fix for cache key
* get rid of os / node version specifics in hash for now
* get rid of os / process specifics - these can be added via customKey
* getting local cache fill right
* adding migration guide
* revamping the configuration
* const
* update lockfile
* splitting out task id things
* properly adding ^ deps
* caching with wrapped tasks
* cache + npm task refactor
* caching working for globaltasks
* adds the unknown command feature
* info is back!
* sort order
* fixing tests
* Change files
* Change files
* pretteri
* fix up logger
* refactor to be cleaner with the run command
* global dep from a package task also works (all global stuff would go first as a group)
* adding some info niceties
* delete bad console.log
* get rid of a file
* bump deps and add types as output
* bump beachball
* Change files
* add more ignored stuff
* adding more to ignore
* lage main should expose types, but bin to use the cli.js instead
* let yarn figure out where to find lage
* okay use cli instead of index
* increase max buffer to 500MB and fail-fast on other git issues in workspace-tools
* Change files
* on the safe side, we make sure we "over" build if git diff fails
* getting more info
* Use getWorkspaceRoot to determine where the root of the Lage project is.
Before Lage assumed it was rooted at the root of a git repo. This excluded
projects outside of git repo's or projects in git that had multiple code bases
at various levels.
This change updates Lage to use `getWorkspaceRoot` from [workspace-tools](https://github.com/microsoft/workspace-tools#readme)
instead of `findGitRoot`. It now finds the closest package manager root,
i.e. find the package.json that declares the `workspace` for Yarn, PNpm, Rush...
Closes#80
* Change files