Skip to content

Commit ad8ceab

Browse files
authored
Merge pull request #109 from fsprojects/Dev
Version 0.1.82
2 parents 1eaf35e + 1ac5cde commit ad8ceab

14 files changed

Lines changed: 1232 additions & 2911 deletions

File tree

‎.github/workflows/publish.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
with:
4646
node-version: '14'
4747

48-
- run: npm install
48+
- run: yarn install
4949
- uses: actions/download-artifact@master
5050
with:
5151
name: CompiledProject

‎.vscode/launch.json‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
"outFiles": [
4646
"${workspaceFolder}/out/**/*.js"
4747
],
48-
"preLaunchTask": "npm: compile"
48+
"preLaunchTask": "yarn: compile"
4949
},
5050
{
5151
"name": "Extension Tests",
@@ -59,7 +59,7 @@
5959
"outFiles": [
6060
"${workspaceFolder}/out/test/**/*.js"
6161
],
62-
"preLaunchTask": "npm: watch"
62+
"preLaunchTask": "yarn: watch"
6363
}
6464
]
6565
}

‎.vscodeignore‎

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,14 @@
1-
sample/**
2-
tests/**
3-
scripts/**
4-
spacemacs/**
5-
videos/**
6-
client/**
7-
**/obj/**
8-
**.vsix
9-
.vs
10-
.vscode
11-
.paket
12-
.ionide
13-
.devcontainer
14-
tests
151

16-
src/**
17-
packages
18-
#!src/FSharpLanguageServer/bin/Release/net6.0/osx.10.11-x64/publish/**
19-
#!src/FSharpLanguageServer/bin/Release/net6.0/win10-x64/publish/**
20-
#!src/FSharpLanguageServer/bin/Release/net6.0/linux-x64/publish/**
21-
!src/FSharpLanguageServer/bin/Release/net6.0/assembly/README.md
22-
!src/FSharpLanguageServer/bin/Release/net6.0//publish/**
2+
*
3+
**
4+
5+
!.vsixmanifest
6+
!node_modules
7+
!out
8+
!Icon512.png
9+
!LICENSE.md
10+
!package.json
11+
!changeog.md
12+
!syntaxes/**
13+
!src/FSharpLanguageServer/bin/Release/net6.0/publish/**
14+
!src/FSharpLanguageServer/bin/Release/net6.0/assembly/README.md

‎README.md‎

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ The language server protocol (LSP) is very similar to the API defined by the F#
8888
Clone this repo to your system and build it:
8989

9090
```
91-
npm install
91+
yarn install
9292
dotnet build -c Release
9393
```
9494

@@ -120,15 +120,15 @@ Neovim with Deoplete completion:\
120120
Clone this repo to your system and build it:
121121

122122
```
123-
npm install
123+
yarn install
124124
125125
# Pick the appropriate target based upon your OS
126-
dotnet publish -c Release -r linux-x64 src/FSharpLanguageServer
127-
dotnet publish -c Release -r osx.10.11-x64 src/FSharpLanguageServer
128-
dotnet publish -c Release -r win10-x64 src/FSharpLanguageServer
126+
dotnet publish -c Release
127+
dotnet publish -c Release
128+
dotnet publish -c Release
129129
```
130130

131-
Make sure that the FSharpLanguageServer (in `src/FSharpLanguageServer/bin/Release/netcoreapp3.0/PLATFORM/publish`) is in your PATH. Alternatively, you can set the path to the server executable manually within your .spacemacs user-config:
131+
Make sure that the FSharpLanguageServer (in `src/FSharpLanguageServer/bin/Release/net6.0/publish`) is in your PATH. Alternatively, you can set the path to the server executable manually within your .spacemacs user-config:
132132

133133
```
134134
(setq fsharp2-lsp-executable "/path/to/FSharpLanguageServer")
@@ -166,7 +166,7 @@ Any help is very much appreciated, issues, PR's, even just asking a question abo
166166

167167
Run :
168168

169-
- ``npm install`` to setup node deps (not needed unless you plan to build the vsix extension package)
169+
- ``yarn install`` to setup node deps (not needed unless you plan to build the vsix extension package)
170170

171171
- ``dotnet tool restore`` to install paket
172172

@@ -178,4 +178,19 @@ Essentially you just publish the language server with ``dotnet publish -c Releas
178178

179179
If you want to try your newly created extension run ``code --install-extension build.vsix``
180180

181-
You can also change the Fsharp.debug setting in vscode which will cause the installed extension to try to build fslsp when it launches. Very handy for testing many smaller changes without republishing the extension.
181+
## Debugging
182+
Set the Fsharp.debug and fsharp.CustomDll path settings in vscode.
183+
fsharp.debug: Stops execution of the langserver until you attach the vscode debugger to the dotnet instance.
184+
fsharp.customDllPath: allows you to specify a dll to run instead of the packaged version of fslsp.
185+
#### Live project:
186+
- Open two instances of vscode one in a testing project, one in the fsharp-language-server project
187+
- Make changes to the test project and then run ``dotnet publish`` in src\FSharpLanguageServer.
188+
- use the workspace settings in the test project to set fsharp.debug to true and fsharp.customDllPath to the path of the dll you just published
189+
- Reload the other instance of vscode and attach the debugger to monitor the changes.
190+
191+
#### Tests:
192+
- Write a test for your problem
193+
- Change "test" to "ftest"
194+
- In the vscode debugger dropdown select ".net expecto tests"
195+
- Debug your test
196+

‎changelog.md‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,21 @@
1+
## 0.1.82
2+
3+
### Issues fixed
4+
- Hovering not working in various scenarios
5+
- All but the last char of class members
6+
- Keywords
7+
- DU's where the name doesn't have a space between it and the pipe. eg: '|MyDu of string'
8+
- Renaming and goto definition not working when the cursor is next to the end of the word.
9+
- Renaming not working for DU's when the name touches the pipe
10+
- Not rebuilding the cache when fsproj has changed but assets.json has not
11+
### Internal
12+
- Switched to yarn
13+
114
## 0.1.81
215
- Added keywords to autocomplete
316
- fixed a few bugs in the path normalization and caching
17+
- Added keywords to autocomplete
18+
- fixed a few bugs in the path normalization and caching
419
## 0.1.80
520
- Using Ionide.projInfo for project cracking which should fix all unessicary rechecks due to building the project
621
- Added a project cracking caching feature so that projects now load way faster after being opened ap least once.

0 commit comments

Comments
 (0)