Skip to content

Commit

Permalink
Merge branch 'release/1.0.0' into master
Browse files Browse the repository at this point in the history
* release/1.0.0: (81 commits)
  (build) Oops, my bad
  (build) Update GRM config
  (maint) Update enum string values
  (GH-409) "Run Task" now always installs .NET Tool
  (GH-470) Add check for which debugger to install
  (maint) Remove unnecessary whitespace
  Bump @types/node from 14.14.9 to 14.14.10
  (GH-460) "do not ask again" for Cake.Tool updates
  (GH-460) implemented updating of the Cake.Tool
  (GH-432) Only download requested bootstrappers
  (maint) Remove unnecessary code
  (GH-308) Fix usage of undefined Tools
  (GH-354) using codeLens now always installs .NET Tool
  (GH-461) `launchCommand` now defaults to .NET Tool
  (GH-463) switch from the old `<>` casting
  (GH-463) removed dependencies: make-dir, npm and expect
  (GH-376) Add .NET Tool debugger configuration
  removed auto-installing CoreCLR on debug
  removed the windows-property on the DebugTask settings
  This is a running version.
  ...
  • Loading branch information
gep13 committed Nov 30, 2020
2 parents 8fbc32e + 2da55a8 commit 935d6aa
Show file tree
Hide file tree
Showing 51 changed files with 3,081 additions and 5,781 deletions.
12 changes: 12 additions & 0 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"version": 1,
"isRoot": true,
"tools": {
"cake.tool": {
"version": "0.38.5",
"commands": [
"dotnet-cake"
]
}
}
}
3 changes: 3 additions & 0 deletions .depcheckrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"ignores": [ "vscode" ]
}
5 changes: 0 additions & 5 deletions .mergify.yml

This file was deleted.

43 changes: 22 additions & 21 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -1,35 +1,36 @@
// A launch configuration that compiles the extension and then opens it inside a new window
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
{
"version": "0.1.0",
"version": "0.2.0",
"configurations": [
{
"name": "Launch Extension",
"name": "Run Extension",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": ["--extensionDevelopmentPath=${workspaceRoot}" ],
"stopOnEntry": false,
"sourceMaps": true,
"outFiles": [ "${workspaceRoot}/out/src/**/*.js" ],
"preLaunchTask": "npm"
"args": [
"--extensionDevelopmentPath=${workspaceFolder}"
],
"outFiles": [
"${workspaceFolder}/out/**/*.js"
],
"preLaunchTask": "npm: watch"
},
{
"name": "Launch Tests",
"name": "Extension Tests",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": ["--extensionDevelopmentPath=${workspaceRoot}", "--extensionTestsPath=${workspaceRoot}/out/test" ],
"stopOnEntry": false,
"sourceMaps": true,
"outFiles": [ "${workspaceRoot}/out/test/**/*.js" ],
"preLaunchTask": "npm"
},
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${workspaceRoot}"
}
"args": [
"--extensionDevelopmentPath=${workspaceFolder}",
"--extensionTestsPath=${workspaceFolder}/out/test/index"
],
"outFiles": [
"${workspaceFolder}/out/test/**/*.js"
],
"preLaunchTask": "npm: compile"
}
]
}
20 changes: 20 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
{
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "watch",
"problemMatcher": "$tsc-watch",
"isBackground": true,
"presentation": {
"reveal": "never"
},
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
15 changes: 15 additions & 0 deletions GitReleaseManager.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,18 @@ issue-labels-alias:
- name: security
header: Security
plural: Security
create:
include-sha-section: true
sha-section-heading: "SHA256 Hashes of the release artifacts"
sha-section-line-format: "- `{1}\t{0}`"
close:
use-issue-comments: true
issue-comment: |-
:tada: This issue has been resolved in version {milestone} :tada:
The release is available on:
- [GitHub Release](https://github.com/{owner}/{repository}/releases/tag/{milestone})
- [VSCode Marketplace](https://marketplace.visualstudio.com/items?itemName=cake-build.cake-vscode)
Your **[GitReleaseManager](https://github.com/GitTools/GitReleaseManager)** bot :package::rocket:
25 changes: 22 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ In addition to integrated editing features, the extension also provides commands

* `Cake: Install a bootstrapper` to install a Cake bootstrapper for Windows, OS X or Linux in the root folder.
* `Cake: Install to workspace` will run through all of the available commands at once, to save having to run them one by one
* `Cake: Install debug dependencies` to download the Cake.CoreCLR NuGet Package into the tools folder, ready for enabling debugging
* `Cake: Install debug dependencies` to either install the .NET global tool or alternatively download the Cake.CoreCLR NuGet Package into the tools folder.
* `Cake: Install sample build file` to install a sample Cake File that contains Setup and Teardown actions, a sample task, and argument parsing.
* `Cake: Add addin from NuGet` to add or update an Addin from NuGet in the specified Cake file.
* `Cake: Add tool from NuGet` to add or update a Tool from NuGet in the specified Cake file.
Expand Down Expand Up @@ -73,9 +73,14 @@ The extension will also parse all `*.cake` files in the workspace and make them
There are a number of configuration options which allow you to control how the Task Provider works:

* `cake.taskRunner.autoDetect`: a boolean value which toggles auto detection of Tasks on or off. Default value is `true`
* `cake.taskRunner.installNetTool`: a boolean value which configures whether to install the Cake .NET tool before running tasks. Default value is `true`.
* `cake.taskRunner.scriptsIncludePattern`: a glob pattern which specifies how to detect `.cake` files in the current workspace. Default value is `**/*.cake`.
* `cake.taskRunner.scriptsExcludePattan`: a glob pattern which specifies all files and folders that shouldn't be included in search of current workspace. Default value is `""`.
* `cake.taskRunner.taskRegularExpression`: a regular expression pattern which is used to identify Tasks within the `*.cake` files. Default value is `Task\\s*?\\(\\s*?\"(.*?)\"\\s*?\\)`.
* `cake.taskRunner.launchCommand`: the name of the build script to run, when running a task.
This is a complex object, consisting of at least one property `default` and optionally properties corresponding to values of [`os.platform()`](https://nodejs.org/api/os.html#os_os_platform) for non-default values specific to different platforms.
Default value is `null` which is equal to specifying `{"default": "~/.dotnet/tools/dotnet-cake", "win32": "dotnet-cake.exe"}`.
* `cake.taskRunner.verbosity`: allows you to control cake `run task` verbosity (`diagnostic`, `minimal`, `normal`, `quiet` and `verbose`. Default value is `normal`.

### Codelens

Expand All @@ -84,13 +89,15 @@ The extension uses codelens to allow you to run and debug tasks individually on
There are a number of configuration options which allow you to control the Cake output verbosity and what host framework to use for the debug session, etc.

* `cake.codeLens.showCodeLens`: a boolean value which toggles codelens on or off. Default value is `true`.
* `cake.codeLens.installNetTool`: a boolean value which configures codelens to install the Cake .NET tool before running or debugging. Default value is `true`.
* `cake.codeLens.scriptsIncludePattern`: a glob pattern which specifies how to detect `.cake` files in the current workspace. Default value is `**/*.cake`.
* `cake.codeLens.taskRegularExpression`: a regular expression pattern which is used to identify Tasks within the `*.cake` files. Default value is `Task\\s*?\\(\\s*?\"(.*?)\"\\s*?\\)`.
* `cake.codeLens.runTask.verbosity`: allows you to control cake `run task` verbosity (`diagnostic`, `minimal`, `normal`, `quiet` and `verbose`. Default value is `normal`.
* `cake.codeLens.debugTask.verbosity`: allows you to control cake `debug task` verbosity (`diagnostic`, `minimal`, `normal`, `quiet` and `verbose`. Default value is `normal`.
* `cake.codeLens.debugTask.debugType`: framework type of the debug session (`mono`or `coreclr`). Default value is `coreclr`.
* `cake.codeLens.debugTask.request`: request type of the debug session. Default value is `launch`.
* `cake.codeLens.debugTask.program`: executable of the debug session (`tools/Cake/Cake.exe` for `mono` or `tools/Cake.CoreCLR/Cake.dll` for `coreclr`). Default value is `${workspaceRoot}/tools/Cake.CoreCLR/Cake.dll`.
* `cake.codeLens.debugTask.program`: executable of the debug session (e.g. `tools/Cake/Cake.exe` for debugType `mono` or `tools/Cake.CoreCLR/Cake.dll` for debugType `coreclr`).
This is a complex object, consisting of at least one property `default` and optionally properties corresponding to values of [`os.platform()`](https://nodejs.org/api/os.html#os_os_platform) for non-default values specific to different platforms.
Default value is `null` which is equal to specifying `{"default": "~/.dotnet/tools/dotnet-cake", "win32": "dotnet-cake.exe"}`.
* `cake.codeLens.debugTask.cwd`: path to the working directory of the program being debugged. Default value is `${workspaceRoot}`.
* `cake.codeLens.debugTask.stopAtEntry`: if true, the debugger should stop at the entry point of the target. Default value is `true`.
* `cake.codeLens.debugTask.console`: console used by the debugger (`internalConsole`, `integratedTerminal` or `externalTerminal`) . Default value is `internalConsole`.
Expand All @@ -100,6 +107,18 @@ There are a number of configuration options which allow you to control the Cake
* `cake.codeLens.debugTask.logging.engineLogging`: flag to determine whether program output should be logged to the output window when not using an external console. Default value is `false`.
* `cake.codeLens.debugTask.logging.browserStdOut`: flag to determine if stdout text from the launching the web browser should be logged to the output window. Default value is `false`.

**Remark**: While the command to debug a task is configurable using the `cake.codeLens.debugTask.program` setting,
there is no specific setting for configuring the command to run a task. For this case the `cake.taskRunner.launchCommand` setting is used (see above). In addition, the verbosity used with running a task is controlled via the `cake.taskRunner.verbosity` setting.

### CodeSymbols

The extension produces "code symbols", which are in turn used by Visual Studio Code to produce the code outline and breadcrumb navigation.

There are configuration options to allow you to configure the symbol generation:

* `cake.codeSymbols.contextRegularExpression`: a regular expression pattern to get contexts from Cake script. Default value is `(Setup|TaskSetup|Teardown|TaskTeardown|RunTarget)\\s*?`.
* `cake.codeSymbols.taskRegularExpression`: a regular expression pattern to get tasks from Cake script. Default value is `(Task\\s*?\\(\\s*?\"(.*?)\"\\s*?\\)|Setup\\(.*=>|TearDown\\(.*=>|RunTarget\\(.*\\);)`.

## Resource Video

There is a short introduction video to the Visual Studio Code Extension for Cake here:
Expand Down
30 changes: 24 additions & 6 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,31 @@
# Build script
#---------------------------------#
# Build Image #
#---------------------------------#

image: Visual Studio 2019

#---------------------------------#
# Init #
#---------------------------------#

init:
- git config --global core.autocrlf true

# Build script
#---------------------------------#
# Build Script #
#---------------------------------#

build_script:
- ps: Get-ChildItem -Path "C:\Program Files (x86)\Microsoft SDKs\TypeScript\*" -Include tsc.exe,tsc.js -Recurse | Rename-Item -NewName {$_.name -replace "tsc","tsc1"}
- ps: .\build.ps1 -Target "AppVeyor"
- ps: .\build.ps1 --target="AppVeyor"

# Tests
test: off

# Branches to build
#---------------------------------#
# Branches to build #
#---------------------------------#

branches:
# Whitelist
only:
Expand All @@ -20,7 +35,10 @@ branches:
- /release/.*/
- /hotfix/.*/

# Build cache
#---------------------------------#
# Build Cache #
#---------------------------------#

cache:
- tools -> build.cake
- tools -> recipe.cake
- node_modules -> package.json
Loading

0 comments on commit 935d6aa

Please sign in to comment.