-
Notifications
You must be signed in to change notification settings - Fork 105
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
Refactor and reorganize code structure #2455
Conversation
… imports from tools module Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
…l setup Signed-off-by: worksofliam <[email protected]>
…etup Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
… add a readme for configuration clarification Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
…n validation Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
…thods Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commented some initial findings in my testing and review of the code. Will comment more as I continue testing
Noticed there are some APIs (specifically used by PE which have been moved out). Not a major issue since I can just copy over the functions to PE. Just wanted to make sure this was intentional.
IBMiContent
ifsFileToToolTip
objectToToolTip
memberToToolTip
sourcePhysicalFileToToolTip
Tools
:getGitAPI
@SanjulaGanepola yes. Perhaps we could still expose these APIs, since they have only moved. I can take a look at this. |
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
@SanjulaGanepola The I also solved the other problems like normalising the Windows path in the API instead of letting the extensions do it and also added the channel logic back. Please review again. Cheers! |
Signed-off-by: worksofliam <[email protected]>
…er refactor Signed-off-by: worksofliam <[email protected]>
@worksofliam The |
Signed-off-by: worksofliam <[email protected]>
@SanjulaGanepola For later: I have fixed the types issue. We'll check it out together. |
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
… as a parameter Signed-off-by: worksofliam <[email protected]>
Signed-off-by: worksofliam <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome work. Love this!
A large PR to separate our IBM i API from the VS Code namespace (
vscode
) entirely../src/api
no longer importsvscode
or anything in directories above it (other than npm modules of course). In theory this means the API directory is completely cut off from the extension, and is imported like a unique module.typings.ts
file has been split up due to the fact thattypings.ts
importedvscode
. Instead, the types file has been split up, but thetypings.ts
correctly exports all types as it did before.IBMi
class has had a lot of parameter changes. We now make use of callbacks where we previously had shown messages to the user. This did make theIBMi#connect
code smaller since we moved most of the UI logic to another file.src/api/Tools.ts
file had to be split up since it includedvscode
too.ui
directory, which contains theviews
directory, as well as a bunch of other code specific to VS Code. For example, diagnostics are handles here, as well as Actions. Actions, both the UI and execution, used to be handled insrc/api/CompileTools.ts
, but had to be split up due to the mix of UI and backend execution code.vscode
API - whoops! I had to virtualize all the config classes and then extend them to new classes which uses the VS Code API.IBMi#connect
function actually calls into the connection config to load in config for a connection. This logic stayed the same, though I am not the biggest fan. It'd be nice if this happened outside of this class.How to test
Todo