-
Notifications
You must be signed in to change notification settings - Fork 57
Initial steps for rules_js
support
#2576
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
Merged
Merged
Conversation
This file contains hidden or 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 allows e.g. the CLI repository to directly fetch the dev-infra repository and leverage it for e.g. the RBE toolchains, browser toolchain, or git toolchain. More to follow.
a7ec367
to
aa36167
Compare
98b97b1
to
81d69eb
Compare
This allows for the dev-infra repository to be conveniently used in e.g. the angular-cli repository, allowing for rules to be consumed like we are testing and building them inside this workspace. This greatly simplfies developer productivity for dev-infra and also allows us to avoid complexity around shipping, or bundling. Consider examples like API extractor which cannot be bundled due to reliance on assets inside the `node_modules` directory.
josephperrott
approved these changes
Feb 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
bdbcf1c
to
ba318f8
Compare
Simplifies the api-golden rule by removing the single file mode, and using synthethic npm packages here. In addition, this commit makes the rule compatible with `rules_js`, by providing another `_rjs.bzl` file, that will eventually take over the legacy exports that currently call into the `rjs` variant! (so in practice this rule is alrady using rjs and can work with `rules_nodejs` as an interop layer)
467ca01
to
d9133eb
Compare
NOTE: This does not mean we are no longer supporting contributing to Angular on a Windows machine. Instead, we are working towards having a more stable and guaranteed developer experience on Windows! We will still ensure and verify that the Angular CLI (`ng`) works on Windows! --- Many contributors and team members are using Linux or MacOS for development of Angular. Our tooling regularly faces challenges with infrastructure needing extra work and tricks just to function to some extent on Windows. E.g. shell scripts or Bazel actions that need extra layers for batch files that spawn a Bash shell etc, or inconsistent escaping across shells. This is putting extra stress on our infrastructure team, results in in unnecessary complexity and slows down overall development that way. There is a simple and well-proven solution for supporting Windows development. Using WSL2, developes have access to a Bash shell that is equivalent to Linux; which we use on a day to day basis and can guarantee that development works smoothly! This means, we'd be able to offer far better stability and guarantees to our Windows contributors. Historically, we also haven't seen a lot of Angular contributors use Windows; and if they did; they already used WSL for development. At this point we don't have any non-WSL contributors anymore (in the team or known), so we don't know anything about how well development works via e.g. Git Bash on Windows. Testing on CI via Windows WSL is not necessary as the WSL shell is expected to be the same as the Linux bash environment. We'll be able to revisit this if we have new learnings. There are ways to execute builds etc. via WSL on CI.
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
See individual commits