Skip to content

Conversation

@seldridge
Copy link
Member

@seldridge seldridge commented Nov 28, 2025

Deprecate all the external module utility traits used to add methods for
including the source of the blackbox via annotations. There's no point in
having these traits and not just putting the methods on ExtModule
directly. Do this and deprecate the traits.

This is stacked on #5101.

Release Notes

Deprecate external module "has" traits used to annotate an external module with
the Verilog source. Instead, these methods are moved onto the external module
directly, so there is no need to mix in the traits.

@seldridge seldridge added the Deprecation Deprecates an API, will be included in release notes label Nov 28, 2025
@seldridge seldridge requested a review from jackkoenig November 28, 2025 00:38
@seldridge seldridge marked this pull request as draft November 28, 2025 00:38
Deprecate all `Param`s and `ExtModule` inside experimental as this is
moving into chisel3 proper in Chisel 8.  This is insanely difficult to do
with `case class`es, but I think we can just deprecate these as so and the
result is that all `case class` methods are deprecated and we can just
make all these `case class`es normal `class`es in Chisel 8.

Signed-off-by: Schuyler Eldridge <[email protected]>
Deprecate all the external module utility traits used to add methods for
including the source of the blackbox via annotations.  There's no point in
having these traits and not just putting the methods on `ExtModule`
directly.  Do this and deprecate the traits.

Signed-off-by: Schuyler Eldridge <[email protected]>
@seldridge seldridge force-pushed the dev/seldridge/deprecate-extmodule-traits branch from 78706e1 to a371189 Compare November 28, 2025 22:00
@seldridge seldridge force-pushed the dev/seldridge/deprecate-extmodule-traits-2 branch from e783564 to 969a052 Compare November 28, 2025 22:00
@jackkoenig
Copy link
Contributor

LGTM, I think it needs a docs update though.

@jackkoenig
Copy link
Contributor

Ah I see you did that in #5103

Base automatically changed from dev/seldridge/deprecate-extmodule-traits to main November 29, 2025 00:54
@seldridge seldridge mentioned this pull request Nov 29, 2025
22 tasks
@seldridge seldridge marked this pull request as ready for review November 29, 2025 01:17
Copy link
Contributor

@jackkoenig jackkoenig left a comment

Choose a reason for hiding this comment

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

LGTM!

@seldridge seldridge added Deprecation Deprecates an API, will be included in release notes and removed Deprecation Deprecates an API, will be included in release notes labels Dec 2, 2025
@seldridge seldridge merged commit bf4fa93 into main Dec 2, 2025
30 checks passed
@seldridge seldridge deleted the dev/seldridge/deprecate-extmodule-traits-2 branch December 2, 2025 02:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Deprecation Deprecates an API, will be included in release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants