Skip to content

ISA Explorer backend missing extension_version functions now #597

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

Closed
james-ball-qualcomm opened this issue Apr 5, 2025 · 1 comment · Fixed by #723
Closed

ISA Explorer backend missing extension_version functions now #597

james-ball-qualcomm opened this issue Apr 5, 2025 · 1 comment · Fixed by #723
Assignees
Labels
bug Something isn't working

Comments

@james-ball-qualcomm
Copy link
Collaborator

james-ball-qualcomm commented Apr 5, 2025

The ExtensionVersion object used to have a transitive_implications and transitive_conflicts methods that are now gone (after the cpp_hart merge into main). What should I use instead? I found implied_by (which I'm not sure is the right thing) and nothing for conflicts.

Here's the relevant code:

ext_table = {
    # Array of hashes
    "columns" => [
      {name: "Extension Name", formatter: "link", sorter: "alphanum", headerFilter: true, frozen: true, formatterParams:
        {
        labelField:"Extension Name",
        urlPrefix: "https://risc-v-certification-steering-committee.github.io/riscv-unified-db/manual/html/isa/isa_20240411/exts/"
        }
      },
      {name: "Description", formatter: "textarea", sorter: "alphanum", headerFilter: true},
      {name: "IC", formatter: "textarea", sorter: "alphanum", headerFilter: true},
      {name: "Extensions\nIncluded\n(subsets)", formatter: "textarea", sorter: "alphanum"},
      {name: "Implies\n(and\ntransitives)", formatter: "textarea", sorter: "alphanum"},
      {name: "Incompatible\n(and\ntransitives)", formatter: "textarea", sorter: "alphanum"},
      {name: "Ratified", formatter: "textarea", sorter: "boolean", headerFilter: true},
      {name: "Ratification\nDate", formatter: "textarea", sorter: "alphanum", headerFilter: true},
      sorted_profile_releases.map do |pr|
        {name: "#{pr.name}", formatter: "textarea", sorter: "alphanum", headerFilter: true}
      end
    ].flatten,

    # Will eventually be an array containing arrays.
    "rows" => []
    }

  arch.extensions.sort_by!(&:name).each do |ext|
    row = [
      ext.name,
      ext.long_name,
      ext.compact_priv_type,
      "UDB Missing",
      ext.max_version.transitive_implications.map(&:name),
      ext.max_version.transitive_conflicts.map(&:name),
      ext.ratified,
      if ext.ratified
        if ext.min_ratified_version.ratification_date.nil? || ext.min_ratified_version.ratification_date.empty?
          "UDB MISSING"
        else
          ext.min_ratified_version.ratification_date
        end
      else
        ""
      end
    ]
@james-ball-qualcomm james-ball-qualcomm added the bug Something isn't working label Apr 5, 2025
@dhower-qc
Copy link
Collaborator

I think this is fixed in #584?

github-merge-queue bot pushed a commit that referenced this issue May 14, 2025
…plorer (#723)

Fixes #597 and #731 (and a few more bugs found in the process).

This is a work in progress. Issue #730 tracks what needs to happen next
to fully fix #597.

Note that I accidentally merged in commits from branch "731 still have
404 errors on artifacts" with PR #739 into this branch. So, you'll
commits for both issues #597 and #731 in this PR.

---------

Signed-off-by: james-ball-qualcomm <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment