Граф коммитов

12 Коммитов

Автор SHA1 Сообщение Дата
Savpek 482878f86f Fix for invalid json at tsconfig.json 2019-12-01 18:38:26 +02:00
Akshita f29b9b18cd Make the extension debugging work 2019-03-18 15:43:33 -07:00
Piotr Puszkiewicz 563a1aa58d
tsconfig.json: noUnusedLocals, noFallThroughCaseInSwitch, tslint.json: promise-function-async (#2162)
Adds noUnusedLocals to tsconfig.json to keep our sources clean
Adds noFallThroughCaseInSwitch in tsconfig.json to prevent unintended switch behavior
Adds promise-function-async to tslint.json to force all async functions to be marked as async. This is a building block towards eliminating promises in favor of async/await.
2018-04-09 09:30:10 -07:00
Piotr Puszkiewicz 1f3e77a04b
Enable `noImplicitAny` and `alwaysStrict` in `tsconfig.json (#2159)
Along the way, fixed a few bugs that were in place due to implicit anys. Also removed dependency on deprecated vscode API.
2018-04-07 01:33:28 -07:00
Piotr Puszkiewicz ed60379138
Test the vsix, not the build layout (#2156)
The VSCode C# Extension build process follows the VS Code docs and runs tests directly inside of its repo root. This unfortunately gives a false sense of security because bugs can be introduced during VSIX packaging [particularly due to missing content in node_modules or excluded via .vscodeignore].

This change addresses this problem by moving our CI tests to execute the VSIX instead of the build's intermediate artifacts. Specifically:

build the vsix
unpackage the vsix
instrument the unpackaged vsix
run tests with VS Code Host pointing to the unpackaged vsix
This makes our CI tests ~= to the user's runtime experience and will greatly help us with size reduction efforts.

To support this change, I also moved our build system from package.json to Gulp. This makes the build scripts significantly easier to understand, provides intellisense for build scripts, and build-time type checking for their contents.

I also strengthened the repo's use of .vscodeignore by creating a copy of the file for each scenario [online packages and offline packages]. The new gulp packaging scripts take advantage of these files to produce packages with predictable contents regardless of when packaging occurs. [small caveat, @akshita31 will be adding a test that validates that net-new content does not start sneaking into the vsix package].
2018-04-06 14:17:17 -07:00
Piotr Puszkiewicz 5d1f2026a4
Fix codecov integration (#2108)
Fix js->ts coverage map transformation in Travis CI where `node` is not on the path.
2018-03-15 10:03:44 -07:00
Piotr Puszkiewicz 007bc0e985
Add product-wide code coverage + codecov.io integration (#2101)
Add product-wide code coverage + codecov.io integration

Several new scripts were added:

npm run cov:instrument: rebuilds your sources, then instruments them for coverage. Subsequent 

npm run test will generate coverage data into the .nyc_output directory

npm run cov:merge-html: merges all reports from .nyc_output and puts a locally viewable coverage report into coverage directory
2018-03-12 14:14:00 -07:00
Dustin Campbell 1b1c4508ba Move to YAML to make it easier to define grammar 2017-01-06 11:01:21 -08:00
Dustin Campbell db8b0afaaa Migrates the extension to latest VS Code and TypeScript
This change updates the extension and several dependencies to the latest
VS Code and TypeScript per the instructions at
https://code.visualstudio.com/upgrades/v1_6#_extension-authoring.
2016-12-19 08:20:50 -08:00
Dustin Campbell 94ca7e7323 Clean up npm scripts and start running tests
Since the repo started, we've had a single NPM script that ran on postinstall. All this did was run the VS Code install
script and then launch tsc. Now, postinstall just runs the VS Code install script. The idea here is that install should
really just lay down dependencies, not compile code. Compilation is split off into a separate script.

Here are the new npm scripts:

* `postinstall`: As described above, this now just runs the VS Code install script after `npm install`.
* `compile`: Runs the VS Code compile script to transpile TypeScript to JavaScript. Run this with `npm run compile`.
* `watch`: Runs the VS Code compile script with the '-watch' flag to transpile TypeScript to JavaScript, and then
watch for file changes and incrementally compile. Run this with `npm run watch`.
* `test`: Runs the tests with Mocha. Note: This will only run tests that are already transpiled to JavaScript. Run with
`npm test`.

* Unit tests can be written in the 'test' folder. See 'test/sanity.tests.ts' for an example.
* The launch.json has been updated to allow debugging of unit tests with the "Launch Tests" configuration.
* The "test" task is now configured so that you can use the "Tasks: Run Test Task" command in VS Code.

* Whitespace is a bit out of control. I've made an executable decision that the repo should have spaces with an indent
size of 4. This is now added to the settings.json.
* The 'out' folder is now excluded in settings.json so you won't see it show up in your directory tree.
* The 'node_modules' folder is now excluded from search. This has been bothering me for awhile.
2016-09-01 08:11:11 -07:00
Chuck Ries e790d27822 Incorproate coreclr-debug into omnisharp extension
1. Adds coreclr-debug.ts to implement coreclr-debug acquisition and hooks
   it into omnisharp's activation handler
2. Adds the coreclr-debug directory containing the project.json,
   NuGet.config and dummy.cs required dotnet restore/publish
3. Adds the debugger section to contributes in package.json
4. Adds .vscodeignore to exclude items not needed at runtime from being
   packaged

TODO:
1. Update project.json references
2. Update NuGet.config to not point to http://dbgnuget (switch to
   nuget.org once pacakges are published publicly)
3. Create some completion file that we can check for correct complete
   installation
4. Improve reporting status of acquisition to end user
2016-02-26 13:47:35 -08:00
Johannes Rieken 6baa78258e Happy Coding! 2015-12-03 11:25:00 +01:00