GSoC’24 CircuitVerse | Week 7 Report
Description
During this week, I focused on implementing version switch for circuits in CircuitVerse. Previously, I developed the hot-swapping functionality. However, to ensure that the correct version of the simulator is used when loading circuits, I will now implement logic to manage this process. This requires storing the `simulator_version` for each circuit. CircuitVerse manages circuit data both online and offline, allowing users to save and load circuits from different sources.
Implementation Details: —
- Database Update: I added a new column in the “project” section of the database to store version information.
- Circuit Data Update: I introduced a new field in the circuit_data as simulatorVersion to track the circuit’s version. It can be set to
v0
orv1
according to their versions. - Version Switching: The updated system allows offline circuits to automatically switch to the correct simulator version upon loading.
What happens if the simulatorVersion
of the circuit_data does not match the actual simulator version ?
- Redirecting: User would be automatically redirected to the version specified in the circuit_data as
simulatorVersion
This enhancement ensures that circuits are correctly associated with their respective simulator versions, improving user experience by automating version management.
Next Week’s Plan:
- Design dropdown for switching the version.
- Adding the UI for the dropdown.
- Start working on the writing tests for Vue simulator.