-
Notifications
You must be signed in to change notification settings - Fork 2
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
CPP-2161 proof of concept parallel tasks #679
Draft
apaleslimghost
wants to merge
363
commits into
main
Choose a base branch
from
parallel
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
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
Co-authored-by: Ivo Murrell <[email protected]>
…compatible Slightly more backwards compatible
…options split task/plugin options
…ions Backwards compatible .toolkitrc options field
…atible-well-sort-of Even more backwards compatible (well sort of)
fix: remove check for undefined commands
how did that get there
chore: remove duplicate runInit call in runTasks
Following on from similar changes to the PackageJson hook, the CircleCI hook is now configured via Tool Kit options in .toolkitrc.yml files instead of modifying shared state in JavaScript functions. This creates a declarative approach instead of the old functional approach, which should make configuration much easier to reason with and less abstract, as well as more flexible, allowing for different kinds of workflows. With this initial commit I've focused on getting the configuration generated for next-static to be functionally equivalent to what was generated previously. Subsequent work will be done to make the config generated better than what was previously generated, and to support a more diverse range of project types.
This will be useful if, for example, a project doesn't want the tool-kit workflow, or the Tool Kit orb. It also allows our tests to be simpler as we only have to account for the options we've explicitly specified.
This creates much simpler config for the majority of projects (i.e., projects that don't need to test against multiple versions of Node.)
Don't generate matrices in CircleCI config if only one Node version is being tested
Manually bump updated prerelease packages
This partially reverts d1374d1, which I think was a mistake as we already remove the EOL character normally added by winston, and we skip appending a newline character to messages if it has a `process` attribute. So it meant that the only newlines that would be preserved were ones that happened to not be at the end (or start) of a stream flush.
Because we were declaring a regex within a template literal we needed to escape the backslash in the `\s` whitespace meta group. I we don't, the backslash is parsed as an escape character for the template literal, not the regex, and is replaced with a literal `s` as `\s` is not a valid escape sequence. This means the regex would search for an `s` instead of whitespace. This doesn't affect the unescaped `\n` as the escaped `\n` and the literal `0x0A` ASCII character are (roughly) equivalent in a regex. Instead of fixing the incorrect `\s`, let's remove it entirely and not trim whitespace characters, just newlines, as I'm not sure we actually want to strip indentation from hooked console logging.
Fix lack of newlines in subprocess logging
Use correct name for jobs in a matrix
Manually bump updated prerelease packages
build: update and simplify create-plugin script
fix: allow multiple instances of task with different options
apaleslimghost
force-pushed
the
split-config-loading
branch
from
October 1, 2024 13:15
a9b88bd
to
5355541
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
implements parallel task running in userland using a task with options, which looks like:
also includes some refactoring to the core that was necessary to get this working, and some refactoring that turned out not to be necessary
still to do