-
Notifications
You must be signed in to change notification settings - Fork 203
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
Rewrite of HTML tables with React #477
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This hopefully avoids the need to commit a 700 KB file everytime we change our own Javascript code.
These licenses typically require that you attach the license if you redistribute the code (which we do in the vendors.min.js file).
We do not use it, and there is nothing to cache for which we could use it.
This option is removed, and the previous kind of table can be generated with "table-generator --static-table".
These tests compare created tables against expected files, and for the dynamically-rendered new tables this does not make as much sense. We need to find a better way to test these.
There shouldn't be any actual change, just rebuilt with latest node Docker image.
On my machine the build seems to be deterministic and only changes if some input files change, but on CI the result is different. Not sure why.
Awesome! Thanks a lot @PhilippWendler and @laurabschor ! Can't wait using this for the competitions! |
Refactoring and tests for react table
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This provides a complete rewrite of the HTML tables that
table-generator
produces. Instead of statically creating a HTML<table>
, we now insert the data as JSON and use React to render a table dynamically. Furthermore, all the spaghetti code for interactive features like plots is now completely replaced by a proper architecture using React components, and there exists infrastructure to test this.Some new features like better row filters and improvements have also been added based on a user study. But the main advantage is that it is now possible to open large tables in browsers without long waiting periods.
The studies and the rewrite were done by @bschor and a report about this is available as her Bachelor's thesis.
Users who whish to continue using the old tables can pass
--static-table
totable-generator
, but we expect this to be removed in BenchExec 3.0.Fixes #130 (sorting added)
Fixes #423 (summary tab with only header and footer of table added)
Closes #123 (all Javascript is now bundled in the HTML file)
Closes #195 (all Javascript is now bundled in the HTML file)
Closes #214 (filtering is now longer in an overlay, and much faster anyway)
Closes #237 (react-table is used)
Closes #296 (main table has only small header, full header is shown on summary tab)
Closes #297 (main table has only small header, full header is shown on summary tab)
Closes #375 (no longer applicable)