Skip to content

Conversation

quirogas
Copy link
Contributor

@quirogas quirogas commented Jul 2, 2025

Here is the revised description:

Bug

When running api-linter with the -I flag for an import path that is a parent of the proto files, the linter would fail with a "symbol already defined" error. This was caused by a two-stage file resolution process that resolved the same file twice with different paths. Additionally, the linter would fail when using absolute file paths without also passing . as an import path.

For example, the following commands would fail:

api-linter -I grandparent grandparent/parent/a.proto grandparent/parent/b.proto
api-linter /Users/user/home/project/grandparent/parent/a.proto

Fix

Fixes #1465

The file path resolution logic in cmd/api-linter/cli.go has been refactored to use a single, consistent resolution step. We now resolve imports before passing them to the proto parser. This ensures that all proto files are resolved with the same set of import paths that the parser uses, preventing duplicate parsing and fixing the bugs described above.

@quirogas quirogas requested a review from noahdietz July 2, 2025 00:42
@quirogas quirogas self-assigned this Jul 2, 2025
@quirogas quirogas requested a review from a team as a code owner July 2, 2025 00:42
@quirogas quirogas changed the title Fix unexpected lint warning when providing mutiple files fix (cli): unexpected lint warning when providing multiple files Jul 2, 2025
@quirogas quirogas changed the title fix (cli): unexpected lint warning when providing multiple files fix(cli): unexpected lint warning when providing multiple files Jul 2, 2025
@quirogas quirogas requested a review from noahdietz July 9, 2025 00:59
@quirogas quirogas requested a review from noahdietz July 9, 2025 23:30
@quirogas quirogas requested a review from noahdietz July 11, 2025 00:39
@quirogas quirogas merged commit 7ecaa42 into main Jul 11, 2025
8 checks passed
@quirogas quirogas deleted the fix-unexpected_lint_warning_when_providing_mutiple_files branch July 11, 2025 15:41
gcf-merge-on-green bot pushed a commit that referenced this pull request Jul 16, 2025
🤖 I have created a release *beep* *boop*
---


## [1.70.0](https://togithub.com/googleapis/api-linter/compare/v1.69.2...v1.70.0) (2025-07-16)


### Features

* **AIP-142:** add relative time segments comment rule ([5fab299](https://togithub.com/googleapis/api-linter/commit/5fab2997d1f81bf60b55c6ae6e3e3605212c9870))
* **AIP-142:** add time_offset type rule ([#1506](https://togithub.com/googleapis/api-linter/issues/1506)) ([945cff3](https://togithub.com/googleapis/api-linter/commit/945cff325fe38d4f8e3a7a620059a1e6b04c5107))
* **integration-tests:** add test harness for cli invocation ([#1493](https://togithub.com/googleapis/api-linter/issues/1493)) ([35be28f](https://togithub.com/googleapis/api-linter/commit/35be28f922581bff1f8ad6d2bb9289f6c57e2657))


### Bug Fixes

* **AIP-136:** support response msg lint with resource singular aligned field name ([#1499](https://togithub.com/googleapis/api-linter/issues/1499)) ([8dec010](https://togithub.com/googleapis/api-linter/commit/8dec01076c4bbeb0506c39610e325fc25bbda6ca))
* **AIP-158:** clarify pluralized response field finding ([#1498](https://togithub.com/googleapis/api-linter/issues/1498)) ([f0b7895](https://togithub.com/googleapis/api-linter/commit/f0b7895da8cd4b437ac0c3a9be2ac442560eeda8))
* **AIP-203:** field-behavior-required ignore imported request types ([#1504](https://togithub.com/googleapis/api-linter/issues/1504)) ([bb82f00](https://togithub.com/googleapis/api-linter/commit/bb82f006b37c85cf255ba8bddb1bf34a07993596)), refs [#1503](https://togithub.com/googleapis/api-linter/issues/1503)
* **cli:** unexpected lint warning when providing multiple files ([#1496](https://togithub.com/googleapis/api-linter/issues/1496)) ([7ecaa42](https://togithub.com/googleapis/api-linter/commit/7ecaa4200da7b5cbcbf1c273fc77d524f346ae1c)), refs [#1465](https://togithub.com/googleapis/api-linter/issues/1465)


### Documentation

* add comments to lint.Config and configuration page ([#1505](https://togithub.com/googleapis/api-linter/issues/1505)) ([39d0376](https://togithub.com/googleapis/api-linter/commit/39d0376281fb03f57b24efe0d82cb842e7316615))

---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
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.

unexpected lint warning when providing mutiple files
2 participants