Skip to content

Redefine responsibilities of WorkspaceServiceTest #177

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

Closed
2 tasks done
zacanbrcom opened this issue Feb 4, 2020 · 1 comment · Fixed by #232
Closed
2 tasks done

Redefine responsibilities of WorkspaceServiceTest #177

zacanbrcom opened this issue Feb 4, 2020 · 1 comment · Fixed by #232
Assignees
Labels
code smell Issue that is a bad code style, found by static analysis enhancement Improvments of existing code good first issue Good for newcomers released on @development

Comments

@zacanbrcom
Copy link
Contributor

zacanbrcom commented Feb 4, 2020

Description

As a SE, I would like to adjust the unit test of the WorkspaceServiceTest to reflect the updated responsibility it have within the server.
The effort will be focus to remove unit test and activities that deals with the file-system that are now managed by the FileSystemService.
Using Mockito provide a mock version of WorkspaceService for testing purpose and address the related code smells defined below:

The following classes may be affected:

  • WorkspaceServiceTest
  • MockWorkspaceService
  • CobolWorkspaceServiceImpl

Subtasks status:

  • Address code smells and get rid of CobolWorkspaceService
  • Use Mockito to get rid of the Mock classes used during the test (as MockWorkspaceService)

Acceptance Criteria

  • Code coverage is not affected and still met the quality gate
  • no unit test are failing and the result are meaningful
  • no more code smell are showed for the classes defined above

Definition of Done

  • The story is implemented according to the description.
  • Unit testing done (Preferably by TDD approach, coverage should be at least 70%).
  • Code review done by at least one other team member.
  • Manual testing is done.
  • Documentation is added and reviewed (if needed).
  • The pull request is approved.
  • The story is merged into the development branch.
  • Tests are performed on the development branch.

Technical details

This is the place for any implementation-related notes

@zacanbrcom zacanbrcom added the enhancement Improvments of existing code label Feb 4, 2020
@zacanbrcom zacanbrcom self-assigned this Feb 4, 2020
@zacanbrcom zacanbrcom added code smell Issue that is a bad code style, found by static analysis good first issue Good for newcomers labels Feb 26, 2020
zacanbrcom added a commit that referenced this issue Mar 11, 2020
Fix #177: Redefine WorkspaceService responsabilities in unit test and update the changelog
sergiuilie added a commit that referenced this issue Apr 9, 2020
* Apply changes required by code review stage

* Base for copybook tracker. WIP

* Introduce default paths setting. WIP.

* zOSMF profile listing implementation. WIP.

* Implement member list. WIP.

* Fetch content of members. WIP.

* Add copyrights

* Add progress indication. WIP.

* Apply changes required by code review stage + merge conflicts for Position's package move

* Changelog update / 0.10.0 (#140)

Update changelog to reflect all the increments for 0.10.0 releaase

* Update README.md

- reorganised the readme file for better readability
- added all autocomplete functionalities under one header
- included info about bitlang in the stuff about third party syntax coloring plugins.

* Revert "Update README.md" (#143)

* Use zowe imperative for profiles and zOSMF access.

* Support .err files added

* Remove TODOs

* change extension to .dep

* Introduce new event RUN_ANALYSIS covered by unit test

* Generation dummy cobdeps folder with dep file for e2e test purpose

* Definition test class to cover end to end subscribe, unsubscribe and publish

* Provide issue templates (#144)

Provide issue templates in order to simplify bug reporting and feature requests for the users and creating internal issues for tracking project activity. 

Co-authored-by: Zeibura Kathau <[email protected]>
Co-authored-by: Lukas Zima <[email protected]>

* Update package.json

better description for VSIX file

* Set default profile as default selection option.

* Add new event type to track analysis re-run requests GH-137
Add a signal event that shows that the analysis for all the registered documents is requested.

* Add watchers support to track if the workspace copybooks were changed or added GH-137
LanguageServer now supports a capability to dynamically register file system watcher. WorkspaceService is notified when a watcher is triggered. It invalidates cache and sends a notification to re-run the analysis for all the registered documents in order to always have actual semantic contexts of the copybooks for the open documents.
TextDoumentService is listening to re-run notificaions and runs the analysis for the whole list of the documents that were processed using didOpen request.

* Add files via upload

Signed-off-by: Daniel Statham <[email protected]>

* Add files via upload

Signed-off-by: Daniel Statham <[email protected]>

* Make ContinuationLineTransformation stateless to simplify DI #24

* Make CobolLineReader stateless to simplify DI #24

* Make CobolSemanticParser stateless to simplify DI #24

* Rename run analysis event to make it more generic #137

* Delete COBOL Language Support - Error Highlighting.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete CLS Autocomplete Zoomed.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete CLS Error Highlighting - Zoomed.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete COBOL Language Support - Autocorrect.gif

Signed-off-by: Daniel Statham <[email protected]>

* Updated Gifs

Signed-off-by: Daniel Statham <[email protected]>

* Updated Gifs

Signed-off-by: Daniel Statham <[email protected]>

* Update README.md (#145)

reorganised the readme file for better readability - converted bullet points into sections

grouped all autocomplete functionalities under one header

a few points compressed into fewer words or clarified

included info about bitlang being in the stacks+code4z in the stuff about third party syntax coloring plugins. We will be linking to this readme file from the foundation site, brightside doc and from the code4z readme so I think it's a good idea.

* Extract utils from CobolLine to keep SRP #23

* Remove dead code from CobolLine and related conditional branches #23

* Update bug template to make it more convenient for the submitter

* Introduce unit test for dep file management

* Create test for CobolLineUtils #24

* Update CHANGELOG with the watcher changes (#156)

* Change version before the release 0.10.0

* Increase test timeout to prevent false-negative result

* change version to 0.10.0 (#160)

* Update CHANGELOG.md

* Update the changelog (#162)

* Increase test timeout to prevent false-negative result

* Refine implementation for a better error management in folder and dep file creation/update

* Pass a document URI to the engine to have the correct postions GH-141
Syntax errors and semantic elements, such as variables and copybooks, contain a document URI to be shown correctly over the workspace.
Previously a complicated logic used here to determine the correct position in the workspace, now the current URI is passed directly.

* Adjustment after merge with development branch

* Fix search for copybook only in COPYBOOKS folder

* Send the document URi with the copybook request GH-141
The current document URI is required to build the dependecy graph, so it should be sent with a copybook name in the databus request.

* Change the test document URI to make tests more descriptive #141

* Update header and provide E2E integration test for FileSystemService with databus

* Consume documentURI information sent on the databus by the preprocessor in order to generate dependency files with the same name as the cobol file scanned by the preprocessor.

* Make document extension check case-insensitive #154

* Coverage for core parser (#157)

* adding junit test for PreprocessorStringUtils

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit tests to CobolTestSuite

Signed-off-by: Ramy Abdalla <[email protected]>

* adding junit test for CobolLineIndicatorProcessorImpl

Signed-off-by: Ramy Abdalla <[email protected]>

* increased coverage on CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* added coverage for CobolErrorStrategy class

Signed-off-by: Ramy Abdalla <[email protected]>

* corrected copyright and added missing test classes

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed copyright in PreprocessorStringUtilsTest

Signed-off-by: Ramy Abdalla <[email protected]>

* adjusted CobolLineIndicatorProcessorImplTest after refactoring

Signed-off-by: Ramy Abdalla <[email protected]>

* converted fields to local variables and removed commented line and added javadoc

Signed-off-by: Ramy Abdalla <[email protected]>

* corrected formatting for CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* switched methods to camel-case naming in CobolErrorStrategyTest

Signed-off-by: Ramy Abdalla <[email protected]>

* adjusting CobolLineIndicatorProcessorImplTest work in progress

Signed-off-by: Ramy Abdalla <[email protected]>

* removed unused import

Signed-off-by: Ramy Abdalla <[email protected]>

* reworked CobolLineIndicatorProcessorImplTest.java

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadoc format documentation for each test class

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadoc comments for classes CobolErrorStrategyTest and CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* Modify write function to address issues related to the concurrent writing

* Fix failed test after the introduction of DocumentURI and improved write dependency of file checking for not empty values

* Remove unused COBOL dialects support #168

* Improve create and write on dependency file, cover edge cases that can happen due to failed sync with the filesystem

* Remove unused import from MyTextDocumentService

* Remove deprecated multiline comment entry support GH-170
Multiline comment entries is an old feature and is not supported by IBM compilers anymore and should be processed by a syntax analizer.

* Add notification message related to gitfs unsupported filesystem

* Fix duplicates in pom, removed old TODO and unused variables

* Remove deprecated REMARKS support GH-170
This is an old feature that is not supported by IBM anymore. The mentions are removed from the preprocessor and grammar to show an error if there are remarks used.

* Update extension.ts with correct language ID (#176)

Update correct information about language ID when calling LanguageClient constructor in order to have everything aligned "on the same page".

* 141 POC dependency file generation (#172)

This merge introduce as beta version the definition of dependency files that contains copybooks defined in an opened Cobol file. LSP Server delegates to the FileSystemService all the activities file-system related.

* Introduce new event RUN_ANALYSIS covered by unit test

* Generation dummy cobdeps folder with dep file for e2e test purpose

* Definition test class to cover end to end subscribe, unsubscribe and publish

* Introduce unit test for dep file management

* Refine implementation for a better error management in folder and dep file creation/update

* Adjustment after merge with development branch

* Fix search for copybook only in COPYBOOKS folder

* Update header and provide E2E integration test for FileSystemService with databus

* Consume documentURI information sent on the databus by the preprocessor in order to generate dependency files with the same name as the cobol file scanned by the preprocessor.

* Modify write function to address issues related to the concurrent writing

* Fix failed test after the introduction of DocumentURI and improved write dependency of file checking for not empty values

* Improve create and write on dependency file, cover edge cases that can happen due to failed sync with the filesystem

* Add notification message related to gitfs unsupported filesystem

* Fix duplicates in pom, removed old TODO and unused variables

* Address request changes

* Align positive test parameters

Co-authored-by: Sergiu Ilie <[email protected]>

* change copybooks folders name to .copybooks

* change variable access visibility (#179)

Path fix field visibility

* Fix failing positive tests by using a correct mock

* Enable client to server config file synchronization (#185)

* Align server with the client so it may use the information located in settings.json

* Resolve conflicts after merge

* remove unused imports

* apply required changes: update the header and remove problematic call

* apply required changes: remove extra class

* close #184

* Remove unused COBOL format support GH-178
Due to the only supported version is Enterprise COBOL for z/OS ver. 6.2, the only required format for the code lines is FIXED. According to this, passing format as a text parameter is unnecessary and should be deleted to reduce code complexity.
Warning: there was a floating issue with Lombok on this commit caused by some changes in plain java code. The exact reason was not localized, and it may repeat. Partial applying of the changes with intermediate builds helped.

* Remove copybook name from the variable list if copybook is missing GH-186
In the current solution, there are copybook marks that are used to build the variable structure using copybooks. The scenario when the copybook is missing and the structure cannot be built was not covered and the mark was not removed.
Now variable semantic context has the capability to remove these marks on demand.

* Make CobolCommentEntriesMarkerImpl stateless to make Di easier #24

* Create temporary solution in order to inform the user that gitfs is not supported. (#192)

The full implementation will be provided by the issue #173

* Copybooks autocomplete introduction (#189)

* added implementation for copybook autocomplete from cobol document and fixed tests

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit test for CopybookCompletion class

Signed-off-by: Ramy Abdalla <[email protected]>

* adding CopybookCompletionsTest to AllTests

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadocs annotation for both CopybookCompletion and CopybookCompletionTest

Signed-off-by: Ramy Abdalla <[email protected]>

* reverted back packagejson and packagelock fixing naming issue and adding missing entry to testmodule

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed packagelock

Signed-off-by: Ramy Abdalla <[email protected]>

* Update change log (#193)

* Update changelog

Co-authored-by: Zeibura Kathau <[email protected]>

* Remove request library dependency and small refactoring

* WIP. Ask to get copybooks. Get profile name base on filepath

* Clean-up MyLanguageServerImpl to set only supported capabilities #23

* Store profiles for programs in settings.json

* Listen to settings cahnges

* Add redownload all command

* Introduce Code Action to Resolve Copybooks GH-197
Add logic to the text document service to collect a list of applicable code actions.
Add logic to the workspace service to resolve missing copybooks on the Quick Fix.
Add error code to determine the code action command type.
Register those capabilities on the server initialization.

* new look for package.json configuration structure

* update settings prefix in code

* Fix compilation error

* Update messages on configuration change

* Refactor MyTextDocumentService::observerCallback
Unnecessary map collection was removed.

Signed-off-by: Anton Grigorev <[email protected]>

* Remove error listener from CobolVisitor to simpily DI #24

* Add the context shutdown to avoid shared state on tests #199

* Rename some variables

* Make CobolVisitor constructor-configurable to simplify DI GH-24
Replace configuring by setters with one by the constructor to simplify the binding for the DI. Extract keyword suggestions to make it easier to configure in the future.

* Add property to enable TCP connection to LSP server

* Copybook extension check fails #149
Add logic to ignore '*.cpy' files in didChange handler.
Change didOpen logic. Call registerDocument for register only processed documents.

Signed-off-by: Anton Grigorev <[email protected]>

* Don't create dataset folder if copybook isn't in

* Improve error handling

* Update changelog

* Retrieve settings.json at initialize moment #187 (#207)

* Retrieve settings.json at initialize moment #187 

* adjust to the requested changes

* Suggest to edit path if there is a problem with dataset

* Refactoring pom.xml: putting the project version in property.
The current version is specified in the "revision" property.
Project version sets via the "revision" property.

Signed-off-by: Anton Grigorev <[email protected]>

* Add null check for document after analysis to prevent NPE #212

* Update copyright year in all the classes (#214)

* Update copyright year in all the classes

* Modify dependency file creation/update flow (#209)

* Introduce textDocumentSyncType to track the document sync status (opened, changed, closed)

* Introduce document sync type with textDocumentSyncType enum

* Merge remote-tracking branch 'remotes/origin/master' into development

# Conflicts:
#	CHANGELOG.md
#	Jenkinsfile
#	clients/cobol-lsp-vscode-extension/CHANGELOG.md
#	clients/cobol-lsp-vscode-extension/package.json
#	clients/cobol-lsp-vscode-extension/server/note.md
#	clients/cobol-lsp-vscode-extension/src/extension.ts
#	com.ca.lsp.cobol/lsp-core-cobol-parser/pom.xml
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/parser/listener/VerboseListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/CobolPreprocessor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/impl/CobolPreprocessorImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/CobolLine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/CobolDocumentCleaner.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCleanerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCommentingCleanerListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/AnalyseCopybookTask.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookParallelAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/CobolSemanticParser.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserListenerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/CobolLineReader.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CobolLineReaderImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CompilerDirectivesTransformation.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolInlineCommentEntriesNormalizerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtils.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/PreprocessorCleanerService.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/impl/PreprocessorCleanerServiceImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/visitor/CobolVisitor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/AbstractCobolLinePreprocessorTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/CobolTestSuite.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngineTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImplTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtilsTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolCleanExtraLanguageTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolVariableCheckTest.java
#	com.ca.lsp.cobol/lsp-core-domain/pom.xml
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/api/CopybookEventFactory.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/DataEventType.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/RunAnalysisEvent.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/AbsDataBusImplTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusGetFromCacheBadTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusUnSubscribeTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventSubscribersTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventsTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/pom.xml
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/broadcom/lsp/cdi/module/service/ServiceModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceServiceImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyLanguageServerImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyTextDocumentService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/KeywordCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/SnippetCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/references/SemanticElementOccurrences.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/validations/CobolLanguageEngineFacade.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/AllTests.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/TestModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyLanguageServerImplTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyTextDocumentServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/WorkspaceServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/completions/CompletionsChainTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/validations/UseCaseUtils.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/usecases/AnalyzeCopybookCaching.java
#	com.ca.lsp.cobol/pom.xml

* Merge remote-tracking branch 'remotes/origin/master' into development

# Conflicts:
#	CHANGELOG.md
#	Jenkinsfile
#	clients/cobol-lsp-vscode-extension/CHANGELOG.md
#	clients/cobol-lsp-vscode-extension/package.json
#	clients/cobol-lsp-vscode-extension/server/note.md
#	clients/cobol-lsp-vscode-extension/src/extension.ts
#	com.ca.lsp.cobol/lsp-core-cobol-parser/pom.xml
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/parser/listener/VerboseListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/CobolPreprocessor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/impl/CobolPreprocessorImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/CobolLine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/CobolDocumentCleaner.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCleanerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCommentingCleanerListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/AnalyseCopybookTask.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookParallelAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/CobolSemanticParser.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserListenerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/CobolLineReader.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CobolLineReaderImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CompilerDirectivesTransformation.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolInlineCommentEntriesNormalizerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtils.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/PreprocessorCleanerService.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/impl/PreprocessorCleanerServiceImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/visitor/CobolVisitor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/AbstractCobolLinePreprocessorTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/CobolTestSuite.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngineTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImplTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtilsTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolCleanExtraLanguageTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolVariableCheckTest.java
#	com.ca.lsp.cobol/lsp-core-domain/pom.xml
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/api/CopybookEventFactory.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/DataEventType.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/RunAnalysisEvent.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/AbsDataBusImplTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusGetFromCacheBadTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusUnSubscribeTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventSubscribersTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventsTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/pom.xml
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/broadcom/lsp/cdi/module/service/ServiceModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceServiceImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyLanguageServerImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyTextDocumentService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/KeywordCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/SnippetCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/references/SemanticElementOccurrences.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/validations/CobolLanguageEngineFacade.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/AllTests.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/TestModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyLanguageServerImplTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyTextDocumentServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/WorkspaceServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/completions/CompletionsChainTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/validations/UseCaseUtils.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/usecases/AnalyzeCopybookCaching.java
#	com.ca.lsp.cobol/pom.xml

* implement logic to check the document sync type and disable the dep file creation/update if the text document sync type is DID_CHANGE

* update unit test to cover the scenario of different text document sync type DID_OPEN and DID_CHANGE

* Address merge conflict

* Address smelling and header fix

* Update changelog

* Update changelog change request

* Copybook references (#210)

* added implementation for copybook autocomplete from cobol document and fixed tests

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit test for CopybookCompletion class

Signed-off-by: Ramy Abdalla <[email protected]>

* adding CopybookCompletionsTest to AllTests

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadocs annotation for both CopybookCompletion and CopybookCompletionTest

Signed-off-by: Ramy Abdalla <[email protected]>

* reverted back packagejson and packagelock fixing naming issue and adding missing entry to testmodule

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed packagelock

Signed-off-by: Ramy Abdalla <[email protected]>

* added implementation for copybook usage reference

Signed-off-by: Ramy Abdalla <[email protected]>

* adding implementation for copybook references

Signed-off-by: Ramy Abdalla <[email protected]>

* added test for copybook references and adjustted copybooks to show on usages

Signed-off-by: Ramy Abdalla <[email protected]>

* Make copybook processing work with usages, not with definitions #107

Co-authored-by: Andrei Temnikov <[email protected]>

* add queue and tests for it

* Reset resolve field in queue

* Add missing text sync type for quick fix #215

* Add empty string as a default value when the copybook is empty #165

* Incapsulate cleaning service #23

* Cleanup PreprocessorStringUtils with Lombok annotation #23

* WIP download queue. Remove error files.

* Fix lsp start issue

* UX fixes

* Add codeaction to setup dataset paths

* Remove hardcoded version number from code

* Switch to default profile name for cb downloader

* Impreve error handling

* Add guice-assistInject dependency #24

* Add Lombok annotation to remove boilerplate code #23

* Initialize binding for language engine module #24

* Read ZOWE_CLI_HOME to load profiles

* fix tests

* Improve error handling

* Fix ZOWE_CLI_HOME to expect .zowe in it

* Fix error processing

* Setup Jest to collect coverage

* Remove unnecessary integration test GH-24
To be replaced with a proper unit test when the binding is finished

* Get 100% on download queue

* Refactor JavaCheck service

* Provide binding for copybook analysis GH-24
Change binding method to one that does not require custom application context. Change use case tests in order to meet the new binding requirements.

* PathUtils tests

* Small refactoring and tests for Profile service.

* Consume user settings in Copybook Service (#221)

* Define unit test that cover the scenario of search copybooks in a set of paths (defined by the profile and dataset name)

* Simplify logic and reorganize method definitions in the FileSystemServiceImpl

* Introduce ConfigurationSettingsStorable in unit test to retrieve user setting configuration for profile name and dataset list

* add support for observer callback in the SettingsProvider

* consume new settings in FileSystemServiceImpl

* fix issue with cache invalidation after didChange config. and modify copybook content API to search it only in configured folders

* Simplify unit test logic

* Address issue #218 + extract dependency file unit test to a proper unit test class

* Fix issue with initial configuration (no copybook no settings) that shown message to the user

* Update changelog

* Fix issue: dependency folder should be created in any case when the copybook analysis is activated

* Add unit test to verify that in any condition with/without copybooks and settings config the dependency file method is triggered from the copybookService

* Address request changes

* Address observelCallback test fail on MyTextDocumentServiceTest.java introducing timer

* Fix profile service

* Remove file not used (#224)

* Extract Language Client logic to service

* Finalize LRU algorithm #226 (#227)

* Finalize LRU algorithm by adding the time

* update CHANGELOG.md

* Add negative test and address requested changes

* close #227

* 225 No escape chars in filename (#228)

* decode URI to avoid issue with special chars
* Update changelog

* Extrack error handling to CopybookResolver

* Add quickfix for missing copybook on client site.

* Fix tests and some PR remarks.

* Test automation Integration with Eclipse pipeline #95 (#96)

Initial commit of functional tests

Signed-off-by: Aleksandr Sokolov <[email protected]>

Co-authored-by: DStatWriter <[email protected]>

* Small cleanups

* Fix quickfix scope

* Profile selection command

* Truncate copybook names #175

* Remove copybooks Quick Fix on the server side due to it is a client responsibility

* Update Chengelog

* Address Stack Overflow error on pipeline (#231)

* Update maven assembly from 2.2 to 3.2
* Update changelog

* StatusBar copybook downloader profile switcher #239

* Update changelog

* Update changelog

* Fix changelog

* Update server's changelog

* Update server's changelog

* Fix changelog in server folder

* A comma-separated list of datasets editor

* Remove profile selection if there less then two of them.

* Update changelog

* Update changelog

* Fix #177: Redefine WorkspaceService responsabilities in unit test

Fix #177: Redefine WorkspaceService responsabilities in unit test and update the changelog

* Fix wrong call to listPathDatasets (#250)

The method was invoked as this.listPathDatasets but should be this.pathsService.listPathDatasets

* PDS and PDSE 8 character informational message (#244)

* added a warning to user when copybook name is more than 8 characters

Signed-off-by: Ramy Abdalla <[email protected]>

* added copybook truncation to 8 characters when being added to the dependency file

Signed-off-by: Ramy Abdalla <[email protected]>

* fixing nullpointer exception found by sonarcloud

Signed-off-by: Ramy Abdalla <[email protected]>

* setting the 8 character notification as an informational message

Signed-off-by: Ramy Abdalla <[email protected]>

* New updates on Copybooks (#233)

* Update README.md

* copybooks now retrieved automatically

* add procedure for downloading copybooks

* specify > add, as this is the word on the button

* Update integration tests.

Change files panel title.
Change hint message according existing code.

Signed-off-by: Anton Grigorev <[email protected]>

* Update .dep file (#249)

* Delete dependency file at didOpen moment

* update CHANGELOG.md

* Fix listDataset wrong call

* move deletion to didClose

* update .dep file by removing the copybooks present in the .copybooks directory

* clean

* clean

* add unit test

* update CHANGELOG.md

* apply required changes

* add sync and check if copybooks were added

* address required changes

Co-authored-by: zacanbrcom <[email protected]>

* #251 - Fix nested copybook issue (#254)

Fix #251 - Retrieve nested copybooks and write them in dependency file

* Apply patch to PR #251

* Apply request of changes
* Address merge conflict

* Fix multiple error messages while downloading copybooks (#268)

Signed-off-by: Anton Grigorev <[email protected]>

* Calculate and return a full URI containing Zowe profile (#267)

* Dummy inplementation of ConfigurationMiddleware for #247

* Fix tests

* Generate path list on request

* Fix compilation error

* Retrieve and use calculated path

* fix client test for all OS

* fix conflicts and update methods for the new implementation

* update CHANGELOG.md

* address required changes and fix merge conflicts

* address required changes

* add missing CHANGELOG.md

Co-authored-by: Iurii Shchekochikhin <[email protected]>

* TI release preparation (#271)

* client readme update

* add link to zowe CLI zosmf profile config instructions

* add zowe CLI zosmf profile link to main readme

* revert img src change, unintended

* delete "setting profile" step from README.md

Co-authored-by: sergiuilie <[email protected]>

* Tip

* Tips

* add Tip

* format

* delete pointless changes

* Release 0.11 changelog simplification (#276)

* Update CHANGELOG.md

* revert change to 0.10.1 wording

* update CHANGELOG.md

* c/e

* z/OS Requirements added

* minor

* add more prereqs to client readme

* better wording

* Update README.md

* reword

Co-authored-by: sergiuilie <[email protected]>

Co-authored-by: zacanbrcom <[email protected]>
Co-authored-by: Iurii Shchekochikhin <[email protected]>
Co-authored-by: Vaclav Nemecek <[email protected]>
Co-authored-by: Zeibura Kathau <[email protected]>
Co-authored-by: Lukas Zima <[email protected]>
Co-authored-by: Andrei Temnikov <[email protected]>
Co-authored-by: Andrei Temnikov <[email protected]>
Co-authored-by: DStatWriter <[email protected]>
Co-authored-by: abdrabrcom <[email protected]>
Co-authored-by: Anton Grigorev <[email protected]>
Co-authored-by: Aleksandr Sokolov <[email protected]>
Co-authored-by: grianbrcom <[email protected]>
sergiuilie added a commit that referenced this issue Apr 9, 2020
* Base for copybook tracker. WIP

* Introduce default paths setting. WIP.

* zOSMF profile listing implementation. WIP.

* Implement member list. WIP.

* Fetch content of members. WIP.

* Add copyrights

* Add progress indication. WIP.

* Apply changes required by code review stage + merge conflicts for Position's package move

* Changelog update / 0.10.0 (#140)

Update changelog to reflect all the increments for 0.10.0 releaase

* Update README.md

- reorganised the readme file for better readability
- added all autocomplete functionalities under one header
- included info about bitlang in the stuff about third party syntax coloring plugins.

* Revert "Update README.md" (#143)

* Use zowe imperative for profiles and zOSMF access.

* Support .err files added

* Remove TODOs

* change extension to .dep

* Introduce new event RUN_ANALYSIS covered by unit test

* Generation dummy cobdeps folder with dep file for e2e test purpose

* Definition test class to cover end to end subscribe, unsubscribe and publish

* Provide issue templates (#144)

Provide issue templates in order to simplify bug reporting and feature requests for the users and creating internal issues for tracking project activity. 

Co-authored-by: Zeibura Kathau <[email protected]>
Co-authored-by: Lukas Zima <[email protected]>

* Update package.json

better description for VSIX file

* Set default profile as default selection option.

* Add new event type to track analysis re-run requests GH-137
Add a signal event that shows that the analysis for all the registered documents is requested.

* Add watchers support to track if the workspace copybooks were changed or added GH-137
LanguageServer now supports a capability to dynamically register file system watcher. WorkspaceService is notified when a watcher is triggered. It invalidates cache and sends a notification to re-run the analysis for all the registered documents in order to always have actual semantic contexts of the copybooks for the open documents.
TextDoumentService is listening to re-run notificaions and runs the analysis for the whole list of the documents that were processed using didOpen request.

* Add files via upload

Signed-off-by: Daniel Statham <[email protected]>

* Add files via upload

Signed-off-by: Daniel Statham <[email protected]>

* Make ContinuationLineTransformation stateless to simplify DI #24

* Make CobolLineReader stateless to simplify DI #24

* Make CobolSemanticParser stateless to simplify DI #24

* Rename run analysis event to make it more generic #137

* Delete COBOL Language Support - Error Highlighting.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete CLS Autocomplete Zoomed.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete CLS Error Highlighting - Zoomed.gif

Signed-off-by: Daniel Statham <[email protected]>

* Delete COBOL Language Support - Autocorrect.gif

Signed-off-by: Daniel Statham <[email protected]>

* Updated Gifs

Signed-off-by: Daniel Statham <[email protected]>

* Updated Gifs

Signed-off-by: Daniel Statham <[email protected]>

* Update README.md (#145)

reorganised the readme file for better readability - converted bullet points into sections

grouped all autocomplete functionalities under one header

a few points compressed into fewer words or clarified

included info about bitlang being in the stacks+code4z in the stuff about third party syntax coloring plugins. We will be linking to this readme file from the foundation site, brightside doc and from the code4z readme so I think it's a good idea.

* Extract utils from CobolLine to keep SRP #23

* Remove dead code from CobolLine and related conditional branches #23

* Update bug template to make it more convenient for the submitter

* Introduce unit test for dep file management

* Create test for CobolLineUtils #24

* Update CHANGELOG with the watcher changes (#156)

* Change version before the release 0.10.0

* Increase test timeout to prevent false-negative result

* change version to 0.10.0 (#160)

* Update CHANGELOG.md

* Update the changelog (#162)

* Increase test timeout to prevent false-negative result

* Refine implementation for a better error management in folder and dep file creation/update

* Pass a document URI to the engine to have the correct postions GH-141
Syntax errors and semantic elements, such as variables and copybooks, contain a document URI to be shown correctly over the workspace.
Previously a complicated logic used here to determine the correct position in the workspace, now the current URI is passed directly.

* Adjustment after merge with development branch

* Fix search for copybook only in COPYBOOKS folder

* Send the document URi with the copybook request GH-141
The current document URI is required to build the dependecy graph, so it should be sent with a copybook name in the databus request.

* Change the test document URI to make tests more descriptive #141

* Update header and provide E2E integration test for FileSystemService with databus

* Consume documentURI information sent on the databus by the preprocessor in order to generate dependency files with the same name as the cobol file scanned by the preprocessor.

* Make document extension check case-insensitive #154

* Coverage for core parser (#157)

* adding junit test for PreprocessorStringUtils

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit tests to CobolTestSuite

Signed-off-by: Ramy Abdalla <[email protected]>

* adding junit test for CobolLineIndicatorProcessorImpl

Signed-off-by: Ramy Abdalla <[email protected]>

* increased coverage on CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* added coverage for CobolErrorStrategy class

Signed-off-by: Ramy Abdalla <[email protected]>

* corrected copyright and added missing test classes

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed copyright in PreprocessorStringUtilsTest

Signed-off-by: Ramy Abdalla <[email protected]>

* adjusted CobolLineIndicatorProcessorImplTest after refactoring

Signed-off-by: Ramy Abdalla <[email protected]>

* converted fields to local variables and removed commented line and added javadoc

Signed-off-by: Ramy Abdalla <[email protected]>

* corrected formatting for CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* switched methods to camel-case naming in CobolErrorStrategyTest

Signed-off-by: Ramy Abdalla <[email protected]>

* adjusting CobolLineIndicatorProcessorImplTest work in progress

Signed-off-by: Ramy Abdalla <[email protected]>

* removed unused import

Signed-off-by: Ramy Abdalla <[email protected]>

* reworked CobolLineIndicatorProcessorImplTest.java

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadoc format documentation for each test class

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadoc comments for classes CobolErrorStrategyTest and CobolLineIndicatorProcessorImplTest

Signed-off-by: Ramy Abdalla <[email protected]>

* Modify write function to address issues related to the concurrent writing

* Fix failed test after the introduction of DocumentURI and improved write dependency of file checking for not empty values

* Remove unused COBOL dialects support #168

* Improve create and write on dependency file, cover edge cases that can happen due to failed sync with the filesystem

* Remove unused import from MyTextDocumentService

* Remove deprecated multiline comment entry support GH-170
Multiline comment entries is an old feature and is not supported by IBM compilers anymore and should be processed by a syntax analizer.

* Add notification message related to gitfs unsupported filesystem

* Fix duplicates in pom, removed old TODO and unused variables

* Remove deprecated REMARKS support GH-170
This is an old feature that is not supported by IBM anymore. The mentions are removed from the preprocessor and grammar to show an error if there are remarks used.

* Update extension.ts with correct language ID (#176)

Update correct information about language ID when calling LanguageClient constructor in order to have everything aligned "on the same page".

* 141 POC dependency file generation (#172)

This merge introduce as beta version the definition of dependency files that contains copybooks defined in an opened Cobol file. LSP Server delegates to the FileSystemService all the activities file-system related.

* Introduce new event RUN_ANALYSIS covered by unit test

* Generation dummy cobdeps folder with dep file for e2e test purpose

* Definition test class to cover end to end subscribe, unsubscribe and publish

* Introduce unit test for dep file management

* Refine implementation for a better error management in folder and dep file creation/update

* Adjustment after merge with development branch

* Fix search for copybook only in COPYBOOKS folder

* Update header and provide E2E integration test for FileSystemService with databus

* Consume documentURI information sent on the databus by the preprocessor in order to generate dependency files with the same name as the cobol file scanned by the preprocessor.

* Modify write function to address issues related to the concurrent writing

* Fix failed test after the introduction of DocumentURI and improved write dependency of file checking for not empty values

* Improve create and write on dependency file, cover edge cases that can happen due to failed sync with the filesystem

* Add notification message related to gitfs unsupported filesystem

* Fix duplicates in pom, removed old TODO and unused variables

* Address request changes

* Align positive test parameters

Co-authored-by: Sergiu Ilie <[email protected]>

* change copybooks folders name to .copybooks

* change variable access visibility (#179)

Path fix field visibility

* Fix failing positive tests by using a correct mock

* Enable client to server config file synchronization (#185)

* Align server with the client so it may use the information located in settings.json

* Resolve conflicts after merge

* remove unused imports

* apply required changes: update the header and remove problematic call

* apply required changes: remove extra class

* close #184

* Remove unused COBOL format support GH-178
Due to the only supported version is Enterprise COBOL for z/OS ver. 6.2, the only required format for the code lines is FIXED. According to this, passing format as a text parameter is unnecessary and should be deleted to reduce code complexity.
Warning: there was a floating issue with Lombok on this commit caused by some changes in plain java code. The exact reason was not localized, and it may repeat. Partial applying of the changes with intermediate builds helped.

* Remove copybook name from the variable list if copybook is missing GH-186
In the current solution, there are copybook marks that are used to build the variable structure using copybooks. The scenario when the copybook is missing and the structure cannot be built was not covered and the mark was not removed.
Now variable semantic context has the capability to remove these marks on demand.

* Make CobolCommentEntriesMarkerImpl stateless to make Di easier #24

* Create temporary solution in order to inform the user that gitfs is not supported. (#192)

The full implementation will be provided by the issue #173

* Copybooks autocomplete introduction (#189)

* added implementation for copybook autocomplete from cobol document and fixed tests

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit test for CopybookCompletion class

Signed-off-by: Ramy Abdalla <[email protected]>

* adding CopybookCompletionsTest to AllTests

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadocs annotation for both CopybookCompletion and CopybookCompletionTest

Signed-off-by: Ramy Abdalla <[email protected]>

* reverted back packagejson and packagelock fixing naming issue and adding missing entry to testmodule

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed packagelock

Signed-off-by: Ramy Abdalla <[email protected]>

* Update change log (#193)

* Update changelog

Co-authored-by: Zeibura Kathau <[email protected]>

* Remove request library dependency and small refactoring

* WIP. Ask to get copybooks. Get profile name base on filepath

* Clean-up MyLanguageServerImpl to set only supported capabilities #23

* Store profiles for programs in settings.json

* Listen to settings cahnges

* Add redownload all command

* Introduce Code Action to Resolve Copybooks GH-197
Add logic to the text document service to collect a list of applicable code actions.
Add logic to the workspace service to resolve missing copybooks on the Quick Fix.
Add error code to determine the code action command type.
Register those capabilities on the server initialization.

* new look for package.json configuration structure

* update settings prefix in code

* Fix compilation error

* Update messages on configuration change

* Refactor MyTextDocumentService::observerCallback
Unnecessary map collection was removed.

Signed-off-by: Anton Grigorev <[email protected]>

* Remove error listener from CobolVisitor to simpily DI #24

* Add the context shutdown to avoid shared state on tests #199

* Rename some variables

* Make CobolVisitor constructor-configurable to simplify DI GH-24
Replace configuring by setters with one by the constructor to simplify the binding for the DI. Extract keyword suggestions to make it easier to configure in the future.

* Add property to enable TCP connection to LSP server

* Copybook extension check fails #149
Add logic to ignore '*.cpy' files in didChange handler.
Change didOpen logic. Call registerDocument for register only processed documents.

Signed-off-by: Anton Grigorev <[email protected]>

* Don't create dataset folder if copybook isn't in

* Improve error handling

* Update changelog

* Retrieve settings.json at initialize moment #187 (#207)

* Retrieve settings.json at initialize moment #187 

* adjust to the requested changes

* Suggest to edit path if there is a problem with dataset

* Refactoring pom.xml: putting the project version in property.
The current version is specified in the "revision" property.
Project version sets via the "revision" property.

Signed-off-by: Anton Grigorev <[email protected]>

* Add null check for document after analysis to prevent NPE #212

* Update copyright year in all the classes (#214)

* Update copyright year in all the classes

* Modify dependency file creation/update flow (#209)

* Introduce textDocumentSyncType to track the document sync status (opened, changed, closed)

* Introduce document sync type with textDocumentSyncType enum

* Merge remote-tracking branch 'remotes/origin/master' into development

# Conflicts:
#	CHANGELOG.md
#	Jenkinsfile
#	clients/cobol-lsp-vscode-extension/CHANGELOG.md
#	clients/cobol-lsp-vscode-extension/package.json
#	clients/cobol-lsp-vscode-extension/server/note.md
#	clients/cobol-lsp-vscode-extension/src/extension.ts
#	com.ca.lsp.cobol/lsp-core-cobol-parser/pom.xml
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/parser/listener/VerboseListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/CobolPreprocessor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/impl/CobolPreprocessorImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/CobolLine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/CobolDocumentCleaner.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCleanerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCommentingCleanerListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/AnalyseCopybookTask.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookParallelAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/CobolSemanticParser.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserListenerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/CobolLineReader.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CobolLineReaderImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CompilerDirectivesTransformation.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolInlineCommentEntriesNormalizerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtils.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/PreprocessorCleanerService.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/impl/PreprocessorCleanerServiceImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/visitor/CobolVisitor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/AbstractCobolLinePreprocessorTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/CobolTestSuite.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngineTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImplTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtilsTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolCleanExtraLanguageTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolVariableCheckTest.java
#	com.ca.lsp.cobol/lsp-core-domain/pom.xml
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/api/CopybookEventFactory.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/DataEventType.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/RunAnalysisEvent.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/AbsDataBusImplTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusGetFromCacheBadTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusUnSubscribeTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventSubscribersTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventsTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/pom.xml
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/broadcom/lsp/cdi/module/service/ServiceModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceServiceImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyLanguageServerImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyTextDocumentService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/KeywordCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/SnippetCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/references/SemanticElementOccurrences.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/validations/CobolLanguageEngineFacade.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/AllTests.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/TestModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyLanguageServerImplTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyTextDocumentServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/WorkspaceServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/completions/CompletionsChainTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/validations/UseCaseUtils.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/usecases/AnalyzeCopybookCaching.java
#	com.ca.lsp.cobol/pom.xml

* Merge remote-tracking branch 'remotes/origin/master' into development

# Conflicts:
#	CHANGELOG.md
#	Jenkinsfile
#	clients/cobol-lsp-vscode-extension/CHANGELOG.md
#	clients/cobol-lsp-vscode-extension/package.json
#	clients/cobol-lsp-vscode-extension/server/note.md
#	clients/cobol-lsp-vscode-extension/src/extension.ts
#	com.ca.lsp.cobol/lsp-core-cobol-parser/pom.xml
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/parser/listener/VerboseListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/CobolPreprocessor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/impl/CobolPreprocessorImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/CobolLine.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/CobolDocumentCleaner.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCleanerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/cleaner/impl/CobolDocumentCommentingCleanerListener.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/AnalyseCopybookTask.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/copybook/CopybookParallelAnalysis.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/CobolSemanticParser.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/document/impl/CobolSemanticParserListenerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/CobolLineReader.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CobolLineReaderImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/reader/impl/CompilerDirectivesTransformation.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolInlineCommentEntriesNormalizerImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtils.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/PreprocessorCleanerService.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/preprocessor/sub/util/impl/PreprocessorCleanerServiceImpl.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/main/java/com/ca/lsp/core/cobol/visitor/CobolVisitor.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/AbstractCobolLinePreprocessorTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/CobolTestSuite.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/engine/CobolLanguageEngineTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/line/rewriter/impl/CobolCommentEntriesMarkerImplTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/preprocessor/sub/util/CobolLineUtilsTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolCleanExtraLanguageTest.java
#	com.ca.lsp.cobol/lsp-core-cobol-parser/src/test/java/com/ca/lsp/core/cobol/semantics/CobolVariableCheckTest.java
#	com.ca.lsp.cobol/lsp-core-domain/pom.xml
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/api/CopybookEventFactory.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/DataEventType.java
#	com.ca.lsp.cobol/lsp-core-domain/src/main/java/com/broadcom/lsp/domain/cobol/event/model/RunAnalysisEvent.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/AbsDataBusImplTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusGetFromCacheBadTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/databus/impl/DataBusUnSubscribeTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventSubscribersTest.java
#	com.ca.lsp.cobol/lsp-core-domain/src/test/java/com/broadcom/lsp/domain/cobol/event/CopybookEventsTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/pom.xml
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/broadcom/lsp/cdi/module/service/ServiceModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/CobolWorkspaceServiceImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyLanguageServerImpl.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/MyTextDocumentService.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/KeywordCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/completions/SnippetCompletion.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/references/SemanticElementOccurrences.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/main/java/com/ca/lsp/cobol/service/delegates/validations/CobolLanguageEngineFacade.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/AllTests.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/TestModule.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyLanguageServerImplTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/MyTextDocumentServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/WorkspaceServiceTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/completions/CompletionsChainTest.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/service/delegates/validations/UseCaseUtils.java
#	com.ca.lsp.cobol/lsp-service-cobol/src/test/java/com/ca/lsp/cobol/usecases/AnalyzeCopybookCaching.java
#	com.ca.lsp.cobol/pom.xml

* implement logic to check the document sync type and disable the dep file creation/update if the text document sync type is DID_CHANGE

* update unit test to cover the scenario of different text document sync type DID_OPEN and DID_CHANGE

* Address merge conflict

* Address smelling and header fix

* Update changelog

* Update changelog change request

* Copybook references (#210)

* added implementation for copybook autocomplete from cobol document and fixed tests

Signed-off-by: Ramy Abdalla <[email protected]>

* added junit test for CopybookCompletion class

Signed-off-by: Ramy Abdalla <[email protected]>

* adding CopybookCompletionsTest to AllTests

Signed-off-by: Ramy Abdalla <[email protected]>

* added javadocs annotation for both CopybookCompletion and CopybookCompletionTest

Signed-off-by: Ramy Abdalla <[email protected]>

* reverted back packagejson and packagelock fixing naming issue and adding missing entry to testmodule

Signed-off-by: Ramy Abdalla <[email protected]>

* fixed packagelock

Signed-off-by: Ramy Abdalla <[email protected]>

* added implementation for copybook usage reference

Signed-off-by: Ramy Abdalla <[email protected]>

* adding implementation for copybook references

Signed-off-by: Ramy Abdalla <[email protected]>

* added test for copybook references and adjustted copybooks to show on usages

Signed-off-by: Ramy Abdalla <[email protected]>

* Make copybook processing work with usages, not with definitions #107

Co-authored-by: Andrei Temnikov <[email protected]>

* add queue and tests for it

* Reset resolve field in queue

* Add missing text sync type for quick fix #215

* Add empty string as a default value when the copybook is empty #165

* Incapsulate cleaning service #23

* Cleanup PreprocessorStringUtils with Lombok annotation #23

* WIP download queue. Remove error files.

* Fix lsp start issue

* UX fixes

* Add codeaction to setup dataset paths

* Remove hardcoded version number from code

* Switch to default profile name for cb downloader

* Impreve error handling

* Add guice-assistInject dependency #24

* Add Lombok annotation to remove boilerplate code #23

* Initialize binding for language engine module #24

* Read ZOWE_CLI_HOME to load profiles

* fix tests

* Improve error handling

* Fix ZOWE_CLI_HOME to expect .zowe in it

* Fix error processing

* Setup Jest to collect coverage

* Remove unnecessary integration test GH-24
To be replaced with a proper unit test when the binding is finished

* Get 100% on download queue

* Refactor JavaCheck service

* Provide binding for copybook analysis GH-24
Change binding method to one that does not require custom application context. Change use case tests in order to meet the new binding requirements.

* PathUtils tests

* Small refactoring and tests for Profile service.

* Consume user settings in Copybook Service (#221)

* Define unit test that cover the scenario of search copybooks in a set of paths (defined by the profile and dataset name)

* Simplify logic and reorganize method definitions in the FileSystemServiceImpl

* Introduce ConfigurationSettingsStorable in unit test to retrieve user setting configuration for profile name and dataset list

* add support for observer callback in the SettingsProvider

* consume new settings in FileSystemServiceImpl

* fix issue with cache invalidation after didChange config. and modify copybook content API to search it only in configured folders

* Simplify unit test logic

* Address issue #218 + extract dependency file unit test to a proper unit test class

* Fix issue with initial configuration (no copybook no settings) that shown message to the user

* Update changelog

* Fix issue: dependency folder should be created in any case when the copybook analysis is activated

* Add unit test to verify that in any condition with/without copybooks and settings config the dependency file method is triggered from the copybookService

* Address request changes

* Address observelCallback test fail on MyTextDocumentServiceTest.java introducing timer

* Fix profile service

* Remove file not used (#224)

* Extract Language Client logic to service

* Finalize LRU algorithm #226 (#227)

* Finalize LRU algorithm by adding the time

* update CHANGELOG.md

* Add negative test and address requested changes

* close #227

* 225 No escape chars in filename (#228)

* decode URI to avoid issue with special chars
* Update changelog

* Extrack error handling to CopybookResolver

* Add quickfix for missing copybook on client site.

* Fix tests and some PR remarks.

* Test automation Integration with Eclipse pipeline #95 (#96)

Initial commit of functional tests

Signed-off-by: Aleksandr Sokolov <[email protected]>

Co-authored-by: DStatWriter <[email protected]>

* Small cleanups

* Fix quickfix scope

* Profile selection command

* Truncate copybook names #175

* Remove copybooks Quick Fix on the server side due to it is a client responsibility

* Update Chengelog

* Address Stack Overflow error on pipeline (#231)

* Update maven assembly from 2.2 to 3.2
* Update changelog

* StatusBar copybook downloader profile switcher #239

* Update changelog

* Update changelog

* Fix changelog

* Update server's changelog

* Update server's changelog

* Fix changelog in server folder

* A comma-separated list of datasets editor

* Remove profile selection if there less then two of them.

* Update changelog

* Update changelog

* Fix #177: Redefine WorkspaceService responsabilities in unit test

Fix #177: Redefine WorkspaceService responsabilities in unit test and update the changelog

* Fix wrong call to listPathDatasets (#250)

The method was invoked as this.listPathDatasets but should be this.pathsService.listPathDatasets

* PDS and PDSE 8 character informational message (#244)

* added a warning to user when copybook name is more than 8 characters

Signed-off-by: Ramy Abdalla <[email protected]>

* added copybook truncation to 8 characters when being added to the dependency file

Signed-off-by: Ramy Abdalla <[email protected]>

* fixing nullpointer exception found by sonarcloud

Signed-off-by: Ramy Abdalla <[email protected]>

* setting the 8 character notification as an informational message

Signed-off-by: Ramy Abdalla <[email protected]>

* New updates on Copybooks (#233)

* Update README.md

* copybooks now retrieved automatically

* add procedure for downloading copybooks

* specify > add, as this is the word on the button

* Update integration tests.

Change files panel title.
Change hint message according existing code.

Signed-off-by: Anton Grigorev <[email protected]>

* Update .dep file (#249)

* Delete dependency file at didOpen moment

* update CHANGELOG.md

* Fix listDataset wrong call

* move deletion to didClose

* update .dep file by removing the copybooks present in the .copybooks directory

* clean

* clean

* add unit test

* update CHANGELOG.md

* apply required changes

* add sync and check if copybooks were added

* address required changes

Co-authored-by: zacanbrcom <[email protected]>

* #251 - Fix nested copybook issue (#254)

Fix #251 - Retrieve nested copybooks and write them in dependency file

* Apply patch to PR #251

* Apply request of changes
* Address merge conflict

* Fix multiple error messages while downloading copybooks (#268)

Signed-off-by: Anton Grigorev <[email protected]>

* Calculate and return a full URI containing Zowe profile (#267)

* Dummy inplementation of ConfigurationMiddleware for #247

* Fix tests

* Generate path list on request

* Fix compilation error

* Retrieve and use calculated path

* fix client test for all OS

* fix conflicts and update methods for the new implementation

* update CHANGELOG.md

* address required changes and fix merge conflicts

* address required changes

* add missing CHANGELOG.md

Co-authored-by: Iurii Shchekochikhin <[email protected]>

* TI release preparation (#271)

* client readme update

* add link to zowe CLI zosmf profile config instructions

* add zowe CLI zosmf profile link to main readme

* revert img src change, unintended

* delete "setting profile" step from README.md

Co-authored-by: sergiuilie <[email protected]>

* Tip

* Tips

* add Tip

* format

* delete pointless changes

* Release 0.11 changelog simplification (#276)

* Update CHANGELOG.md

* revert change to 0.10.1 wording

* update CHANGELOG.md

* c/e

* z/OS Requirements added

* minor

* add more prereqs to client readme

* better wording

* Update README.md

* reword

Co-authored-by: sergiuilie <[email protected]>

* Release 0.11 changelog (#281)

* Update CHANGELOG.md

* revert change to 0.10.1 wording

* update CHANGELOG.md

* c/e

* z/OS Requirements added

* minor

* add more prereqs to client readme

* better wording

* Update README.md

* reword

* update version

Co-authored-by: Zeibura Kathau <[email protected]>

Co-authored-by: Iurii Shchekochikhin <[email protected]>
Co-authored-by: zacanbrcom <[email protected]>
Co-authored-by: Vaclav Nemecek <[email protected]>
Co-authored-by: Zeibura Kathau <[email protected]>
Co-authored-by: Lukas Zima <[email protected]>
Co-authored-by: Andrei Temnikov <[email protected]>
Co-authored-by: Andrei Temnikov <[email protected]>
Co-authored-by: DStatWriter <[email protected]>
Co-authored-by: abdrabrcom <[email protected]>
Co-authored-by: Anton Grigorev <[email protected]>
Co-authored-by: Aleksandr Sokolov <[email protected]>
Co-authored-by: grianbrcom <[email protected]>
@zacanbrcom
Copy link
Contributor Author

🎉 This issue has been resolved in version 0.11.1-alpha.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code smell Issue that is a bad code style, found by static analysis enhancement Improvments of existing code good first issue Good for newcomers released on @development
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant