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

fix: exit with non-zero exit code if there are compilation errors #442

Merged
merged 1 commit into from
Apr 8, 2019

Conversation

eladb
Copy link
Contributor

@eladb eladb commented Apr 8, 2019

In #383 we modified the compiler to continue jsii validation despite
compilation errors but did not propagate the fact that there were
compilation errors.

This resulted in "jsii" exiting with a 0 exit code even in case
of errors.

Fixes #441

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

In #383 we modified the compiler to continue jsii validation despite
compilation errors but did not propagate the fact that there were
compilation errors.

This resulted in "jsii" exiting with a 0 exit code even in case
of errors.

Fixes #441
@eladb eladb requested a review from a team as a code owner April 8, 2019 22:01
Copy link
Contributor

@skinny85 skinny85 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine given my (very) limited JSII knowledge.

eladb pushed a commit to aws/aws-cdk that referenced this pull request Apr 8, 2019
Until aws/jsii#442 is released
we must fail builds on compilation errors. This is a temporary
workaround for this issue (if there is something in stdout
we consider that a compilation error).
@eladb eladb merged commit 6265bf6 into master Apr 8, 2019
@eladb eladb deleted the benisrae/jsii-fail-on-error branch April 8, 2019 22:12
eladb pushed a commit to aws/aws-cdk that referenced this pull request Apr 8, 2019
Until aws/jsii#442 is released
we must fail builds on compilation errors. This is a temporary
workaround for this issue (if there is something in stdout
we consider that a compilation error).
eladb pushed a commit to aws/aws-cdk that referenced this pull request Apr 8, 2019
Until aws/jsii#442 is released
we must fail builds on compilation errors. This is a temporary
workaround for this issue (if there is something in stdout
we consider that a compilation error).
mergify bot pushed a commit that referenced this pull request Oct 28, 2024
….13.3,<4.5.0 in /packages/@jsii/python-runtime (#4683)

Updates the requirements on [typeguard](https://github.com/agronholm/typeguard) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/agronholm/typeguard/releases">typeguard's releases</a>.</em></p>
<blockquote>
<h2>4.4.0</h2>
<ul>
<li>Added proper checking for method signatures in protocol checks (<a href="https://redirect.github.com/agronholm/typeguard/pull/465">#465</a>)</li>
<li>Fixed basic support for intersection protocols (<a href="https://redirect.github.com/agronholm/typeguard/pull/490">#490</a>; PR by <a href="https://github.com/antonagestam"><code>@​antonagestam</code></a>)</li>
<li>Fixed protocol checks running against the class of an instance and not the instance itself (this produced wrong results for non-method member checks)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/agronholm/typeguard/blob/master/docs/versionhistory.rst">typeguard's changelog</a>.</em></p>
<blockquote>
<h1>Version history</h1>
<p>This library adheres to
<code>Semantic Versioning 2.0 &lt;https://semver.org/#semantic-versioning-200&gt;</code>_.</p>
<p><strong>4.4.0</strong> (2024-10-27)</p>
<ul>
<li>Added proper checking for method signatures in protocol checks
(<code>[#465](agronholm/typeguard#465) &lt;https://github.com/agronholm/typeguard/pull/465&gt;</code>_)</li>
<li>Fixed basic support for intersection protocols
(<code>[#490](agronholm/typeguard#490) &lt;https://github.com/agronholm/typeguard/pull/490&gt;</code>_; PR by <a href="https://github.com/antonagestam"><code>@​antonagestam</code></a>)</li>
<li>Fixed protocol checks running against the class of an instance and not the instance
itself (this produced wrong results for non-method member checks)</li>
</ul>
<p><strong>4.3.0</strong> (2024-05-27)</p>
<ul>
<li>Added support for checking against static protocols</li>
<li>Fixed some compatibility problems when running on Python 3.13
(<code>[#460](agronholm/typeguard#460) &lt;https://github.com/agronholm/typeguard/issues/460&gt;</code>_; PR by <a href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
<li>Fixed test suite incompatibility with pytest 8.2
(<code>[#461](agronholm/typeguard#461) &lt;https://github.com/agronholm/typeguard/issues/461&gt;</code>_)</li>
<li>Fixed pytest plugin crashing on pytest version older than v7.0.0 (even if it's just
present) (<code>[#343](agronholm/typeguard#343) &lt;https://github.com/agronholm/typeguard/issues/343&gt;</code>_)</li>
</ul>
<p><strong>4.2.1</strong> (2023-03-24)</p>
<ul>
<li>Fixed missing <code>typing_extensions</code> dependency for Python 3.12
(<code>[#444](agronholm/typeguard#444) &lt;https://github.com/agronholm/typeguard/issues/444&gt;</code>_)</li>
<li>Fixed deprecation warning in the test suite on Python 3.13
(<code>[#444](agronholm/typeguard#444) &lt;https://github.com/agronholm/typeguard/issues/444&gt;</code>_)</li>
</ul>
<p><strong>4.2.0</strong> (2023-03-23)</p>
<ul>
<li>Added support for specifying options for the pytest plugin via pytest config files
(<code>[#440](agronholm/typeguard#440) &lt;https://github.com/agronholm/typeguard/issues/440&gt;</code>_)</li>
<li>Avoid creating reference cycles when type checking unions (PR by Shantanu)</li>
<li>Fixed <code>Optional[...]</code> being removed from the AST if it was located within a
subscript (<code>[#442](agronholm/typeguard#442) &lt;https://github.com/agronholm/typeguard/issues/442&gt;</code>_)</li>
<li>Fixed <code>TypedDict</code> from <code>typing_extensions</code> not being recognized as one
(<code>[#443](agronholm/typeguard#443) &lt;https://github.com/agronholm/typeguard/issues/443&gt;</code>_)</li>
<li>Fixed <code>typing</code> types (<code>dict[str, int]</code>, <code>List[str]</code>, etc.) not passing checks
against <code>type</code> or <code>Type</code>
(<code>[#432](agronholm/typeguard#432) &lt;https://github.com/agronholm/typeguard/issues/432&gt;</code>_, PR by Yongxin Wang)</li>
<li>Fixed detection of optional fields (<code>NotRequired[...]</code>) in <code>TypedDict</code> when using
forward references (<code>[#424](agronholm/typeguard#424) &lt;https://github.com/agronholm/typeguard/issues/424&gt;</code>_)</li>
<li>Fixed mapping checks against Django's <code>MultiValueDict</code>
(<code>[#419](agronholm/typeguard#419) &lt;https://github.com/agronholm/typeguard/issues/419&gt;</code>_)</li>
</ul>
<p><strong>4.1.5</strong> (2023-09-11)</p>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/agronholm/typeguard/commit/efa1166c85be9a1280090fea9c287b5e4e9f3830"><code>efa1166</code></a> Added release date</li>
<li><a href="https://github.com/agronholm/typeguard/commit/b72794dffe403254881ac0c327155357c43ccebf"><code>b72794d</code></a> Added proper Protocol method signature checking (<a href="https://redirect.github.com/agronholm/typeguard/issues/496">#496</a>)</li>
<li><a href="https://github.com/agronholm/typeguard/commit/afad2c7b6be830900776922bb39f9346c2e77f6f"><code>afad2c7</code></a> Sorted the Ruff rules alphabetically</li>
<li><a href="https://github.com/agronholm/typeguard/commit/d812f2eba9f5e898544eb4b3e597f8c38b0952e8"><code>d812f2e</code></a> Migrated to native tox TOML configuration</li>
<li><a href="https://github.com/agronholm/typeguard/commit/0c50de6144d99eedb402a8e85eb8187098f8c26f"><code>0c50de6</code></a> Declared Python 3.13 support</li>
<li><a href="https://github.com/agronholm/typeguard/commit/cf25d56dc0dbf6bb2f51ea29da8436b368ed4857"><code>cf25d56</code></a> Fixed annotation for typeguard_ignore() to match one for typing.no_type_check...</li>
<li><a href="https://github.com/agronholm/typeguard/commit/604b08d5ba7c1b6e3d2f2ddd50dcf020f7e2794a"><code>604b08d</code></a> Use get_protocol_members in protocol checking (<a href="https://redirect.github.com/agronholm/typeguard/issues/490">#490</a>)</li>
<li><a href="https://github.com/agronholm/typeguard/commit/c72b6752b7069d695898ea29abb2a31983c1bf80"><code>c72b675</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/typeguard/issues/471">#471</a>)</li>
<li><a href="https://github.com/agronholm/typeguard/commit/ac7ac342a61db284872430c95d5e6ed7a035b7c0"><code>ac7ac34</code></a> Fixed the documentation build</li>
<li><a href="https://github.com/agronholm/typeguard/commit/2c035b306996f742705da66ef64a052e715a94e2"><code>2c035b3</code></a> Assume that typing_extensions is always installed (<a href="https://redirect.github.com/agronholm/typeguard/issues/487">#487</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/agronholm/typeguard/compare/2.13.3...4.4.0">compare view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>
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.

2 participants