Skip to content
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

Improve Extension Authoring Experience with new Build Tasks and Launch Configs #4510

Merged
merged 13 commits into from
Apr 12, 2023

Conversation

JustinGrote
Copy link
Collaborator

@JustinGrote JustinGrote commented Apr 11, 2023

PR Summary

Updates the build tasks and launch configs to:

  • Massively shorten inner loop development on typescript features by using incremental watch configs
  • Integrate linting process into vscode so that lint errors are surfaced in the IDE prior to CI commit or manual lint run
  • Enable semicolons for typescript actions like auto-formatting since the current ESLint profile requires them.
  • Provide a launch test task for isolated testing separate from developer's profile
  • Provide extension launchers for interactive debugging of the extension in either the developer's profile, a temp throwaway profile, or an isolated but persistent profile
    image

Testing

  1. Open the workspace file

  2. Run ./build at least once (integrated PSES watch builds and auto-attach debugging is future PR)

  3. Click the Test Extension Launch Task and note the vscode instance that starts does not use your personal settings

  4. Click the Launch Extension Task and note the launched extension has your settings. First run may take a while but future starts should be near-instant. Also note that there are watch tasks now running for both tests files and build files and will auto-update every time you save a change and have a status indicator to the right.
    image

  5. Click the Launch Extension - Isolated Profile task and note the vscode window is isolated. Change your theme and launch again, observe that theme persisted but did not change developer's personal settings.

  6. Repeat with Launch Extension - Temp but note the theme change does not persist.

  7. Insert an intentional error into a .ts file and try to run a launch config. An error will appear saying that errors ocurred and will take you straight to the errors.
    image

PR Checklist

Note: Tick the boxes below that apply to this pull request by putting an x between the square brackets.
Please mark anything not applicable to this PR NA.

  • PR has a meaningful title
  • Summarized changes
  • PR has tests
  • This PR is ready to merge and is not work in progress
    • If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready

@JustinGrote JustinGrote requested review from a team and andyleejordan April 11, 2023 22:16
@JustinGrote JustinGrote marked this pull request as draft April 11, 2023 22:21
@JustinGrote JustinGrote marked this pull request as ready for review April 11, 2023 23:51
@JustinGrote JustinGrote requested a review from a team as a code owner April 11, 2023 23:51
@JustinGrote JustinGrote enabled auto-merge (squash) April 11, 2023 23:52
@JustinGrote JustinGrote self-assigned this Apr 12, 2023
Copy link
Member

@andyleejordan andyleejordan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like it!

extension-dev.code-workspace Outdated Show resolved Hide resolved
extension-dev.code-workspace Outdated Show resolved Hide resolved
extension-dev.code-workspace Show resolved Hide resolved
extension-dev.code-workspace Show resolved Hide resolved
extension-dev.code-workspace Show resolved Hide resolved
extension-dev.code-workspace Show resolved Hide resolved
package.json Show resolved Hide resolved
test/.vscode/settings.json Outdated Show resolved Hide resolved
test/TestEnvironment.code-workspace Outdated Show resolved Hide resolved
vscode-powershell.build.ps1 Show resolved Hide resolved
JustinGrote and others added 3 commits April 12, 2023 11:14
Co-authored-by: Andy Jordan <2226434+andschwa@users.noreply.github.com>
Co-authored-by: Andy Jordan <2226434+andschwa@users.noreply.github.com>
Co-authored-by: Andy Jordan <2226434+andschwa@users.noreply.github.com>
@JustinGrote JustinGrote merged commit 2bed8b1 into main Apr 12, 2023
@JustinGrote JustinGrote deleted the feature/vscode-testing-improvements branch April 12, 2023 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants