Skip to content
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

chore(copybara): sync commits from Aspect-internal silo #515

Closed
wants to merge 18 commits into from

Conversation

gregmagolan and others added 18 commits September 22, 2023 09:03
This change brings the VideoAmp Delivery Manifest from 11m45sdown to
just 26s (27X improvement!).

Multiple CI runs on VideoAmp show consistent hashes on 3 random samples:

1.
https://app.circleci.com/pipelines/github/VideoAmp/central/71808/workflows/8257c9e3-d7e8-4e35-8980-fe11ea8da06d/jobs/231901

```
//coreapi/stationmap/services/proto/v1/stationid:submit_openapi_spec_to_postman ::: m3:Z27oQNk7aw0IqmCl+Ofi8w==
//platformweb/ui/dashboard:image_push ::: m3:cmZc3T/mK+B8jbe4yX5/1g==
/coreapi/examples/cmd/worker:image_push ::: m3:EPEkMytxNbYYXtYz2krihg==
```

2.
https://app.circleci.com/pipelines/github/VideoAmp/central/71811/workflows/97cab749-481a-436c-8607-91da0504840a/jobs/231913

```
//coreapi/stationmap/services/proto/v1/stationid:submit_openapi_spec_to_postman ::: m3:Z27oQNk7aw0IqmCl+Ofi8w==
//platformweb/ui/dashboard:image_push ::: m3:cmZc3T/mK+B8jbe4yX5/1g==
//coreapi/examples/cmd/worker:image_push ::: m3:EPEkMytxNbYYXtYz2krihg==
```
---

### Type of change

- Bug fix (change which fixes an issue)

**For changes visible to end-users**

- Suggested release notes are provided below:

Aspect CLI `outputs` command now uses murmur3 hashing algorithm, which
is faster than sha256, and employs caching and concurrency to calculate
hashes faster.

### Test plan

- New test cases added
- Manual testing; please provide instructions so we can reproduce:

Tested live on
[silo](https://github.com/aspect-build/silo/actions/runs/6061978406/job/16447735897?pr=3354)
and at VideoAmp.

GitOrigin-RevId: 9884bf7f7c1f7611d431b6b1fc2ed049ec64dd03
This came out of working on the build event stream forwarding proxy when
the user specifies a `--bes_backend` and we have plugins enabled.

We've gone in circles with cobra bazel flag parsing so many times. This
looks correct with all bazel flags being registered and undocumented
ones marked as hidden. Flags interceptor parses all flags before `--`
(if it exists) and forwards all non-aspect flags onto the bazel command.

This fixes an issue where aspect global flags were _not_ parsed on bazel
commands. It also fixes an issue that undocumented bazel flags were
_not_ added to commands and not parsed which made getting the values of
user supplied bazel flags such as `--bes_backend` and `--remote_header`
was non-trivial.

---

### Type of change

- Refactor (a code change that neither fixes a bug or adds a new
feature)

### Test plan

- Covered by existing test cases

GitOrigin-RevId: d170ab747d44c15c25be4c50af6aaf22f78734f5
GitOrigin-RevId: d14b37706cec8f70b6576cf8d078fb62cfc231ea
Moving the gazelle logging util methods to a common util for all of the
cli (cli/core/pkg/logger/logger.go). For now this util is the basic go
`log` package, if we continue using this util for logging then we can
replace the underlying log library with anything in the future.

For now there are 2 undocumented env vars to configure logging level +
output file.
The log file + level is auto configured when used within `bazel test`
which has been used by the gazelle tests for quite some time.

Ref:
#428
#480
#290
#26
GitOrigin-RevId: dd5b7949117ec4298671945d7d0df1ba288b9d8b
Support import/export within `declare module`.

---

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- Covered by existing test cases
- New test cases added

GitOrigin-RevId: 2635bf37a3d4a5f20e9c312570b522351e97f231
Fix #477

---

This change generates `js_library` instead of `ts_project` when no `.ts`
files are found and only `.js` or `.d.ts`.

### Type of change

- Bug fix (change which fixes an issue)
- New feature or functionality (change which adds functionality)

### Test plan

- Covered by existing test cases
- New test cases added

GitOrigin-RevId: f3c5eba50046b199cdb3385612773eb06b679b64
A workaround for the gazelle bug and a bit of cleanup+tests.

---

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- New test cases added

GitOrigin-RevId: 441c03dc26be0880a3e5d72fef44fb212eabee51
GitOrigin-RevId: 8a8bee1a088f50e0179f83fcab24a6f516320b48
Fix #473

---

<!-- Delete this comment! Follow our PR template instructions:
https://github.com/aspect-build/.github/blob/main/pull_requests.md -->

### Type of change

- New feature or functionality (change which adds functionality)

**For changes visible to end-users**

`ts_config` rules are now generated for each `tsconfig.json` file

### Test plan

- New test cases added
* tested at sourcegraph where the diff from the current manually created
`ts_config` looks correct, adding some missing types and removing
unnecessary ones

GitOrigin-RevId: b418da30887d4e11ff6b7cd8bfc616b211e2ce92
Follow-up will add parsing of `.bazelrc` and add unit tests.

---

### Type of change

- Bug fix (change which fixes an issue)

**For changes visible to end-users**

- Suggested release notes are provided below:

--bes_backend bazel cli arguments are now handled correct by Aspect CLI

### Test plan

- Covered by existing test cases
- Manual testing; please provide instructions so we can reproduce:

Lots of manual testing against BuildBuddy bes_backend

GitOrigin-RevId: 37284be6f7c4f62571f2819ef45cd0b347444c92
…#3473)

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- Covered by existing test cases

GitOrigin-RevId: 4ea2071283b00fbe36bce836c2c7425bc2dbdb73
…o Bazel (#3491)

Fixes alternate bazel flag parsing regression in #3368.

---

### Type of change

- Bug fix (change which fixes an issue)

**For changes visible to end-users**

- Breaking change (this change will force users to change their own code
or config)
- Relevant documentation has been updated
- Suggested release notes are provided below:

Aspect CLI will now forward flags not reported by `flags-as-proto` to
bazel instead of erroring out. This fixes a regression where alternate
flag names which are not reported by `flags-as-proto` from bazel were
error out in the Aspect CLI when they would have been handled by bazel.

### Test plan

- Covered by existing test cases
- Manual testing; please provide instructions so we can reproduce:

Tested that unknown bazel flags passed to Aspect CLI command that call
bazel now result in a bazel error instead failing in the Aspect CLI
before calling bazel.

GitOrigin-RevId: 28ce1b5449db5c17f155b2fcc9a84797ba793098
GitOrigin-RevId: 96dc7904648587e19030ba48015de58008bdc78a
Since AbleAI is now going to be make `bazel` calls outside of our usual
Workflows task.

---

### Type of change

- New feature or functionality (change which adds functionality)

**For changes visible to end-users**

- Suggested release notes are provided below:

Aspect CLI now has a flag named `--aspect:disable_plugins` that disables
the plugins system so that plugins are not started even if configured in
the Aspect CLI config.yaml.

### Test plan

- Manual testing; please provide instructions so we can reproduce:

Manually tested this. We need to add a plugins system bats test soon as
it is missing but no time atm since this change is blocking the AbleAI
trial.

GitOrigin-RevId: 42067a1ca1b7ccdc224b380e13ec132c29133bdf
…sts (#3510)

This regressed in #3369

---

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- Covered by existing test cases
- New test cases added

GitOrigin-RevId: 72dbf9062793889df17ee1b5585a3541c6778e3a
…additional declare-module definitions (#3499)

Previously `@types/x` was only added when an import was resolved to the
`x` package. Now if `@types/x` is available but `x` is not it will no
longer throw.

In the recently added `declare module` support those modules were
considered as potential package resolutions, now they have been switched
to be like `@types` where they are *additional* dependencies on top of
the real one.

---

<!-- Delete this comment! Follow our PR template instructions:
https://github.com/aspect-build/.github/blob/main/pull_requests.md -->

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- Covered by existing test cases
- New test cases added

GitOrigin-RevId: 5fbb4d3638383c836881dfa0941e7c0cb3698327
The tsconfig `paths` were not being treated relative to the `tsconfig`
`baseUrl`. The tests should be the exact cases described at
https://www.typescriptlang.org/docs/handbook/module-resolution.html#path-mapping

---

### Type of change

- Bug fix (change which fixes an issue)

### Test plan

- New test cases added

GitOrigin-RevId: bfcad695000fef0ae219016d4dc3738b867012f3
Fix #512

GitOrigin-RevId: c8c4e09756496133ebab08d80c14b35b0d28cb39
@jbedard
Copy link
Member

jbedard commented Oct 10, 2023

This was done in another PR

@jbedard jbedard closed this Oct 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants