Commit b2bab54
authored
Feature/incremental update (#64)
* Add model initialization, Implement listening for the file changes
* Add an example of the classes layout for adding the incremental update feature
* Add tests for the incremental update feature
* Implement incremental update feature: Use proxy to track entities by file, Add methods to remove obsolete entities and relations
* Change the ts2famix creating file and class code, leave comments regarding this
* Remove unused files
* Add testPathIgnorePatterns into the Jest configuration
* Fix the failing smoke test
* Refactor code for the Famix Class creation (#8)
* Refactor code for the Famic Class creation
* Connect vscode extension with ts2famix changes
* Add neverthrow library, Throw the error when the tsconfig file is not found
* Add better error handling for commands, Add response type for commands
* Add the test cases list
* Rename 'createOrGetFamixClass' method to 'ensureFamixClass' method
* Inheritance incremental update (#20)
* Add the source anchor deletion implementation
* Refactor inheritance and interface creation
* Add a FullyQualifiedNameEntity interface
* Add catching the error for the extension incremental update
* Update README.md
* Split SourcedEntity class into 2 classes: SourcedEntity and EntityWithSourceAnchor
* Properties incremental update (#59)
* Add tests and incremental update for property
* Import clause incremental update new (#58)
* Add the source anchor deletion implementation
* Refactor inheritance and interface creation
* Add a FullyQualifiedNameEntity interface
* Split SourcedEntity class into 2 classes: SourcedEntity and EntityWithSourceAnchor
* Add tests for import clause
* Implement ImportClause for named imports. Add incremental update for the imported entities (Inheritance and ImportClause).
----------------------------
Still need to resolve the issue with:
- re-export
- the cases when we choose to create the module over a file
- finish file and module Famix elements creation, add tests
- implement ImportClause for other types of imports
* Add reexport tests
* Add namespace import tests
* Add implementation for the Import Clause for
- named import/export;
- namespace import/export;
- reexport.
Encapsulate ImportClause creation logic in a separate file
* Add test with exporting interfaces for the inheritance
* Remove the old ImportClause test
* Fix getFamixEntityByFullyQualifiedName to work with all the entities that have fullyQualifiedName field
* Fix getModuleSpecifierFromDeclaration to work with import without ts. We still need to verify how does it work with node_modules and import aliases
* Add excluding files specified in tsconfig from watching
* Add tests for incremental update of adding types
* Incremental update cleanup (#63)
* Review and fix tests1 parent 76aad70 commit b2bab54
101 files changed
Lines changed: 6331 additions & 1365 deletions
File tree
- src
- analyze_functions
- famix_functions
- helpers
- lib/famix
- model
- famix
- interfaces
- refactorer
- test
- helpersTests
- incremental-update
- associations
- classProperties
- classes
- types
- vscode-extension
- client/src
- test
- suite
- integration
- smoke
- unit
- server/src
- eventHandlers
- model
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
11 | 15 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
8 | 13 | | |
9 | 14 | | |
10 | 15 | | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
11 | 22 | | |
12 | 23 | | |
13 | 24 | | |
| |||
59 | 70 | | |
60 | 71 | | |
61 | 72 | | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
75 | 76 | | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
76 | 83 | | |
77 | 84 | | |
78 | 85 | | |
| |||
103 | 110 | | |
104 | 111 | | |
105 | 112 | | |
| 113 | + | |
106 | 114 | | |
107 | 115 | | |
108 | 116 | | |
109 | 117 | | |
110 | 118 | | |
111 | 119 | | |
112 | 120 | | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
113 | 154 | | |
114 | 155 | | |
115 | 156 | | |
| |||
0 commit comments