Skip to content

Conversation

@JakubAndrysek
Copy link
Contributor

This pull request makes significant improvements to the Wokwi CLI package by refactoring its internal API client usage, introducing a new WebSocket transport layer, and enhancing the test and build infrastructure. The main themes are: decoupling from internal API client code in favor of the shared wokwi-client-js package, adding robust WebSocket connection management, and improving CI workflows and test coverage.

- Introduced a new package, wokwi-client-js, to encapsulate API client functionality and transport mechanisms.
- Updated wokwi-cli to utilize the new wokwi-client-js for API interactions, improving modularity and maintainability.
- Refactored various components in wokwi-cli to support the new client structure, including changes to file uploads and command handling.
- Enhanced error handling and connection management in the WebSocket transport layer.
- Added new bundling script for the CLI and improved project structure for better organization.
- Updated package.json and lock files to reflect new dependencies and scripts.
- Introduced Playwright for end-to-end testing, including new test scripts and configurations.
- Updated .gitignore to exclude Playwright reports and test results.
- Enhanced ESLint configuration to ignore Playwright-related files.
- Added new scripts in package.json for running Playwright tests.
- Created a new Playwright configuration file and integrated it into the TypeScript setup.
- Updated GitHub workflows to include Playwright browser installation and testing steps.
- Refactored wokwi-cli to improve modularity and maintainability with new transport mechanisms.
- Updated the test command in package.json to include separate scripts for vitest and CLI integration tests.
- Added a new script for running CLI integration tests.
- Modified GitHub workflows to run tests in a more structured manner.
- Removed the obsolete CLI integration test workflow file.
- Updated .gitignore to exclude the new test project directory.
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.

1 participant