Skip to content

Conversation

Copy link

Copilot AI commented Oct 21, 2025

This PR adds support for SystemVerilog and Verilog file extensions to the TagImporter, enabling OpenFastTrace to extract requirement tags from these hardware description language files.

Changes Made

  • Added SystemVerilog extensions: .sv, .v, and .inc to the SUPPORTED_DEFAULT_EXTENSIONS list in TagImporterFactory
  • Updated test coverage: Added corresponding test cases for the new file extensions in TestTagImporterFactory

Verification

The implementation has been thoroughly tested:

  • ✅ All existing tests pass (85 tests, 0 failures)
  • ✅ Manual verification confirms all new extensions are properly recognized by the CLI
  • ✅ Security scan (CodeQL) found 0 vulnerabilities
  • ✅ Build successful across all modules

Example Usage

After this change, OpenFastTrace will now recognize requirement tags in SystemVerilog files:

// example.sv
// [impl->dsn~uart-transmitter~1]
module uart_tx(
    input clk,
    input [7:0] data,
    output tx
);
    // implementation
endmodule
// example.v  
// [impl->dsn~memory-controller~1]
module mem_ctrl(
    input clk,
    input enable,
    output ready
);
    // implementation
endmodule
// common.inc
// [impl->dsn~shared-definitions~1]
`define DATA_WIDTH 32
`define ADDR_WIDTH 16

Note on YAML Support

YAML file extensions (.yaml and .yml) were already supported in the existing codebase, so no changes were needed for those formats.

This is a minimal, backward-compatible change that extends OpenFastTrace's coverage to include hardware description languages commonly used in digital design and verification workflows.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • ossindex.sonatype.org
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --enable-native-access=ALL-UNNAMED -classpath /usr/share/apache-maven-3.9.11/boot/plexus-classworlds-2.9.0.jar -Dclassworlds.conf=/usr/share/apache-maven-3.9.11/bin/m2.conf -Dmaven.home=/usr/share/apache-maven-3.9.11 -Dlibrary.jansi.path=/usr/share/apache-maven-3.9.11/lib/jansi-native -Dmaven.multiModuleProjectDirectory=/home/REDACTED/work/openfasttrace/openfasttrace org.codehaus.plexus.classworlds.launcher.Launcher install -DskipTests (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Support yaml and various SystemVerilog files</issue_title>
<issue_description>Similar to itsallcode#441, we need support for

  1. YAML files with extension .yaml and .yml
  2. SystemVerilog files with extensions .sv, .v and .inc</issue_description>

Comments on the Issue (you are @copilot in this section)

Fixes #1


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI changed the title [WIP] Add support for YAML and SystemVerilog files Add support for SystemVerilog file extensions (.sv, .v, .inc) Oct 21, 2025
Copilot AI requested a review from eanorige October 21, 2025 17:50
@eanorige eanorige marked this pull request as ready for review October 21, 2025 18:16
@eanorige eanorige merged commit 1e7e0c4 into main Oct 21, 2025
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.

Support yaml and various SystemVerilog files

2 participants