text:
Recursive or looping symlinks can cause language server to repeatedly analyze files

Original issue can be found here along with the details https://github.com/Microsoft/vscode-python/issues/2613
I commented previously on #2297 but I found that symlinks were still causing problems after I grabbed a recent build today.

Environment data

VS Code version: 1.27.2
Extension version (available under the Extensions sidebar): 2018.9.0-alpha, retrieved at Sep 18, 10:30AM PDT.
OS and version: Mac OS 10.13.6
Python version (& distribution if applicable, e.g. Anaconda): 2.7.14
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): N/A
Relevant/affected Python packages and their versions: N/A

Actual behavior
The Python language server gets caught in a super deep nest of recursive symlinks. The repro case given completes quickly (there's nothing to analyze) but still demonstrates the problem, I think.
If there is actual code to parse/analyze it pretty much goes on forever. "Analyzing workspace, #### items remaining" goes down and then quickly shoots up, and this repeats over and over.
I can workaround this by adding the offending symlinks/folder structures to a VSCode exclusion list.
Expected  behavior
The Python language server should be able to handle these structures in some reasonable way.
Steps to reproduce:

Create a folder structure like this

/code
  /test
    /some
      test.py
      /folder
        /symlink -> ../../some
        __init__.py (empty)
        lib.py (empty)

test.py only needs to contain import folder.lib.
Enable trace output for the language server and watch the logs, it gets progressively deeper and deeper into a repeated folder/symlink/folder/symlink/ folder structure.

Logs
Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)
Initializing for /usr/local/opt/python/bin/python2.7
Loading files from /Users/username/code/test/some
Parsing document file:///Users/username/code/test/some/test.py
Parsing document file:///Users/username/code/test/some/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/__init__.py
Parse complete for file:///Users/username/code/test/some/test.py at version -1
Parse complete for file:///Users/username/code/test/some/folder/__init__.py at version -1
Analysis queued for file:///Users/username/code/test/some/test.py
Analysis queued for file:///Users/username/code/test/some/folder/__init__.py
Parsing document file:///Users/username/code/test/some/folder/symlink/test.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/lib.py
Parse complete for file:///Users/username/code/test/some/folder/symlink/test.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/symlink/test.py
Parse complete for file:///Users/username/code/test/some/folder/symlink/folder/lib.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/symlink/folder/lib.py
Parse complete for file:///Users/username/code/test/some/folder/lib.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/__init__.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/test.py
Parse complete for file:///Users/username/code/test/some/folder/symlink/folder/__init__.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/symlink/folder/__init__.py
Parse complete for file:///Users/username/code/test/some/folder/symlink/folder/symlink/test.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/symlink/folder/symlink/test.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/__init__.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/test.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/__init__.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/test.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/__init__.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/test.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/lib.py
Parsing document file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/__init__.py
Parse complete for file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/lib.py at version -1
Analysis queued for file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/lib.py
<more>
Waiting for parsing to complete
Parsing complete. Waiting for analysis entries to enqueue
Enqueue complete. Waiting for analysis to complete
Received new analysis for file:///Users/username/code/test/some/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/folder/symlink/test.py

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help)

Symlinks to a common folder (e.g. two projects which have a symlink to the same folder) also get re-analyzed but that's usually okay as analysis is pretty fast in general.

Yeah, I might have solution

Most probably no longer applies, so for verification with https://github.com/Microsoft/python-language-server/issues/432

If we create correct PathResolverSnapshot, there should be no problem.

Tested using this specific example, the new LS does not loop infinitely. There are some other symlink oddities (long import hints, loss of import completion once a symlink is imported), but I'll file separate issues for those.

Reopening, there may be some other looping issues.

I actually still experiment this issue with the latest VS Code version (1.32.3).

From my side, I seem to have problems in looping too (characteristic of the "Analyzing in background, X items left"). But in my side, it's not the file/directory/workspace structure, but more the virtual environment. With a simple file (no import, one function), and using a conda env from another project I got absolutely no problem.
But when I import certain packages (I noticed sklearn poses problems), LS tries to analyses this and get in trouble. But for example, numpy (also "complex" package) poses no problem at all.
STRANGER YET, when going with a blank conda env, with only numpy and sklearn, the same import leads to no problem at all. So it's linked to packages in environment, but there also seems to be a third party factor.
Problematic case:
Environment

VS code 1.32.3,
Python 3.7.3 (with anaconda 3)
Using conda env
On Debian 10

Description of the problem
As many others, with certain workspaces, the "Analyzing in background, X items left" appears, grows to a certain point, sometimes decreases and grows again, until being stuck indefinitely. Sucks up CPU and memory usage.
"Simple file" in question:
from sklearn.model_selection import KFold

def main():
    print("This python is not buggy")
    return True

if __name__ == "__main__":
    main()

Content of the problematic conda env (sorry it's not minimal, I didn't find yet a minimal case)
_tflow_select             2.3.0                       mkl
absl-py                   0.7.0                    py36_0
alembic                   1.0.6                    py36_0
apscheduler               3.5.3                 py36_1000    conda-forge
asn1crypto                0.24.0                   py36_0
astor                     0.7.1                    py36_0
astroid                   2.1.0                    py36_0
autopep8                  1.4.3                    py36_0
backcall                  0.1.0                    py36_0
beautifulsoup4            4.7.1                    py36_1
blas                      1.0                         mkl
bleach                    3.1.0                    py36_0
c-ares                    1.15.0               h7b6447c_1
ca-certificates           2018.12.5                     0
certifi                   2018.11.29               py36_0
cffi                      1.11.5           py36he75722e_1
chardet                   3.0.4                    py36_1
click                     7.0                      py36_0
cloudpickle               0.6.1                    py36_0
cryptography              2.4.2            py36h1ba5d50_0
cycler                    0.10.0                   py36_0
cytoolz                   0.9.0.1          py36h14c3975_1
dask-core                 1.0.0                    py36_0
dbus                      1.13.6               h746ee38_0
decorator                 4.3.0                    py36_0
entrypoints               0.3                      py36_0
expat                     2.2.6                he6710b0_0
flask                     1.0.2                    py36_1
flask-migrate             2.2.1                 py36_1000    conda-forge
flask-sqlalchemy          2.3.2                    py36_0
fontconfig                2.13.0               h9420a91_0
freetype                  2.9.1                h8a8886c_1
gast                      0.2.2                    py36_0
glib                      2.56.2               hd408876_0
gmp                       6.1.2                h6c8ec71_1
grpcio                    1.16.1           py36hf8bcb03_1
gst-plugins-base          1.14.0               hbbd80ab_1
gstreamer                 1.14.0               hb453b48_1
h5py                      2.9.0            py36h7918eee_0
hdf5                      1.10.4               hb1b8bf9_0
icu                       58.2                 h9c2bf20_1
idna                      2.8                      py36_0
imageio                   2.4.1                    py36_0
intel-openmp              2019.1                      144
ipykernel                 5.1.0            py36h39e3cac_0
ipython                   7.2.0            py36h39e3cac_0
ipython_genutils          0.2.0                    py36_0
ipywidgets                7.4.2                    py36_0
isort                     4.3.4                    py36_0
itsdangerous              1.1.0                    py36_0
jedi                      0.13.2                   py36_0
jinja2                    2.10                     py36_0
jpeg                      9b                   h024ee3a_2
jsonschema                2.6.0                    py36_0
jupyter                   1.0.0                    py36_7
jupyter_client            5.2.4                    py36_0
jupyter_console           6.0.0                    py36_0
jupyter_core              4.4.0                    py36_0
keras-applications        1.0.6                    py36_0
keras-preprocessing       1.0.5                    py36_0
kiwisolver                1.0.1            py36hf484d3e_0
lazy-object-proxy         1.3.1            py36h14c3975_2
libedit                   3.1.20181209         hc058e9b_0
libffi                    3.2.1                hd88cf55_4
libgcc                    7.2.0                h69d50b8_2
libgcc-ng                 8.2.0                hdf63c60_1
libgfortran-ng            7.3.0                hdf63c60_0
libpng                    1.6.36               hbc83047_0
libprotobuf               3.6.1                hd408876_0
libsodium                 1.0.16               h1bed415_0
libstdcxx-ng              8.2.0                hdf63c60_1
libtiff                   4.0.10            h2733197_1001
libuuid                   1.0.3                h1bed415_2
libxcb                    1.13                 h1bed415_1
libxml2                   2.9.9                he19cac6_0
mako                      1.0.7                    pypi_0    pypi
markdown                  3.0.1                    py36_0
markupsafe                1.1.0            py36h7b6447c_0
matplotlib                3.0.2            py36h5429711_0
mccabe                    0.6.1                    py36_1
mistune                   0.8.4            py36h7b6447c_0
mkl                       2019.1                      144
mkl_fft                   1.0.10           py36ha843d7b_0
mkl_random                1.0.2            py36hd81dba3_0
nbconvert                 5.3.1                    py36_0
nbformat                  4.4.0                    py36_0
ncurses                   6.1                  he6710b0_1
networkx                  2.2                      py36_1
notebook                  5.7.4                    py36_0
numpy                     1.15.4           py36h7e9f1db_0
numpy-base                1.15.4           py36hde5b4d6_0
olefile                   0.46                     py36_0
openssl                   1.1.1a               h7b6447c_0
pandas                    0.23.4           py36h04863e7_0
pandoc                    2.2.3.2                       0
pandocfilters             1.4.2                    py36_1
parso                     0.3.1                    py36_0
pcre                      8.42                 h439df22_0
pexpect                   4.6.0                    py36_0
pickleshare               0.7.5                    py36_0
pillow                    5.4.1            py36h34e0f95_0
pip                       18.0                     pypi_0    pypi
prometheus_client         0.5.0                    py36_0
prompt_toolkit            2.0.7                    py36_0
protobuf                  3.6.1            py36he6710b0_0
ptyprocess                0.6.0                    py36_0
pycodestyle               2.4.0                    py36_0
pycparser                 2.19                     py36_0
pygments                  2.3.1                    py36_0
pylint                    2.2.2                    py36_0
pyopenssl                 18.0.0                   py36_0
pyparsing                 2.3.1                    py36_0
pyqt                      5.9.2            py36h05f1152_2
pysocks                   1.6.8                    py36_0
python                    3.6.8                h0371630_0
python-dateutil           2.7.5                    py36_0
python-editor             1.0.3                    py36_0
pytz                      2018.9                   py36_0
pywavelets                1.0.1            py36hdd07704_0
pyyaml                    3.13             py36h14c3975_0
pyzmq                     17.1.2           py36h14c3975_0
qt                        5.9.7                h5867ecd_1
qtconsole                 4.4.3                    py36_0
readline                  7.0                  h7b6447c_5
requests                  2.21.0                   py36_0
scikit-image              0.14.1           py36he6710b0_0
scikit-learn              0.20.2           py36hd81dba3_0
scipy                     1.1.0            py36h7c811a0_2
send2trash                1.5.0                    py36_0
setuptools                40.6.3                   py36_0
sip                       4.19.8           py36hf484d3e_0
six                       1.12.0                   py36_0
soupsieve                 1.7.1                    py36_0
sqlalchemy                1.2.16           py36h7b6447c_0
sqlite                    3.26.0               h7b6447c_0
tensorboard               1.12.2           py36he6710b0_0
tensorflow                1.12.0          mkl_py36h69b6ba0_0
tensorflow-base           1.12.0          mkl_py36h3c3e929_0
termcolor                 1.1.0                    py36_1
terminado                 0.8.1                    py36_1
testpath                  0.4.2                    py36_0
tk                        8.6.8                hbc83047_0
toolz                     0.9.0                    py36_0
tornado                   5.1.1            py36h7b6447c_0
traitlets                 4.3.2                    py36_0
typed-ast                 1.1.0            py36h14c3975_0
tzlocal                   1.5.1                    py36_0
urllib3                   1.24.1                   py36_0
wcwidth                   0.1.7                    py36_0
webencodings              0.5.1                    py36_1
werkzeug                  0.14.1                   py36_0
wheel                     0.32.3                   py36_0
widgetsnbextension        3.4.2                    py36_0
wrapt                     1.11.0           py36h7b6447c_0
xz                        5.2.4                h14c3975_4
yaml                      0.1.7                had09818_2
zeromq                    4.2.5                hf484d3e_1
zlib                      1.2.11               h7b6447c_3

Extract of the python output
Analysis of IPython.core.magics.history(Library) queued
Analysis of scipy.optimize._slsqp(Compiled) completed in 47.8488 ms.
Analysis of sklearn.externals.joblib.pool(Library) queued
Analysis of _locale(CompiledBuiltin) queued
Analysis of sre_compile(Library) queued
Analysis of distutils.command.install(Stub) completed in 48.1344 ms.
Analysis of nbformat.v2.nbbase(Library) queued
Analysis of IPython.core.magics.extension(Library) queued
Analysis of IPython.utils.terminal(Library) queued
Analysis of scipy.optimize.moduleTNC(Compiled) completed in 39.3443 ms.
Analysis of nbformat.v1.convert(Library) queued
Analysis of IPython.utils.dir2(Library) queued
Analysis of numpy.testing.noseclasses(Library) queued
Analysis of email.parser(Library) queued
Analysis of IPython.utils.process(Library) queued
Analysis of nbformat.v1.nbbase(Library) queued
Analysis of nbformat.v2.nbpy(Library) queued
Analysis of prompt_toolkit.filters.app(Library) queued
Analysis of notebook.services.contents.fileio(Library) queued
Analysis of sre_parse(Stub) queued
Analysis of prompt_toolkit.win32_types(Library) queued
Analysis of pygments.formatters.latex(Library) queued
Analysis of prompt_toolkit.renderer(Library) queued
Analysis of tornado.process(Library) queued
Analysis of asyncio.transports(Stub) queued
Analysis of asyncio.streams(Library) queued
Analysis of nbformat.v1.nbjson(Library) queued
Analysis of sklearn.externals.joblib.externals.loky.process_executor(Library) queued
Analysis of dummy_threading(Library) queued
Analysis of sre_parse(Library) queued
Analysis of IPython.lib.display(Library) queued
Analysis of prompt_toolkit.eventloop.context(Library) queued
Import:  ipython_genutils.ipstruct /storage/anaconda3/envs/facesearch/lib/python3.6/site-packages/ipython_genutils/ipstruct.py
Analysis of distutils.log(Stub) completed in 74.345 ms.
Analysis of ipython_genutils.ipstruct(Library) queued
Analysis of prompt_toolkit.enums(Library) queued
Analysis of IPython.core.magics.execution(Library) queued
Analysis of IPython.core.page(Library) queued
Analysis of nbformat.v3(Library) queued
....
...
Analysis of _heapq(Compiled) completed in 16.2774 ms.
Analysis of scipy.interpolate._bsplines(Library) completed in 17.8444 ms.
Analysis of colorsys(Library) completed in 0.6466 ms.
Analysis of IPython.core.inputtransformer2(Library) queued
Analysis of unittest(Library) completed in 31.8242 ms.
Analysis of numpy.version(Library) completed in 0.1255 ms.
Analysis of sklearn.decomposition._online_lda(Compiled) completed in 0.3446 ms.
Analysis of scipy.interpolate.interpnd(Compiled) completed in 1.2661 ms.
Analysis of scipy.interpolate._ppoly(Compiled) completed in 9.8247 ms.
Analysis of numpy.core._multiarray_tests(Compiled) completed in 0.9455 ms.
Analysis of scipy.interpolate.dfitpack(Compiled) completed in 0.3231 ms.
Analysis of multiprocessing(Library) completed in 0.1187 ms.
Analysis of sklearn.externals.joblib.externals.loky.backend._win_wait(Library) queued
Analysis of ipykernel.kernelapp(Library) queued
Analysis of multiprocessing.pool(Stub) completed in 20.9803 ms.
Analysis of multiprocessing.process(Stub) completed in 0.305 ms.
Analysis of numpy.testing._private(Library) completed in 17.188 ms.
Analysis of _multiprocessing(Compiled) completed in 10.1877 ms.
Analysis of _hashlib(Compiled) completed in 0.4461 ms.
Analysis of _sha3(Compiled) completed in 15.738 ms.
Analysis of pycparser(Library) completed in 0.6777 ms.
Analysis of sklearn.externals.joblib.externals.loky.reusable_executor(Library) queued
Analysis of IPython.core.completer(Library) queued
Analysis of IPython.core.extensions(Library) queued
Analysis of _blake2(Compiled) completed in 17.729 ms.
Analysis of _sha512(Compiled) completed in 27.4286 ms.
Analysis of _sha256(Compiled) completed in 1.6649 ms.
Analysis of _md5(Compiled) completed in 3.1989 ms.

SO, some files are queued, while some are completed in a matter of ms.
I guess that is the problem, some recursivity in specific packages. Maybe two (or more) of the packages in the env are referencing each other, creating a loop. Point is, with a conda env having only numpy and sklearn, this issue does not appear.
Sorry if I mis-followed the guidelines...

Please file a new issue; this one is closed and is probably not related.
Regarding "only numpy and sklearn", there's a lot behind those libraries which may be affected by things relating to my explanation in https://github.com/Microsoft/python-language-server/issues/832#issuecomment-477688703.

authors: AlexanderSher Battleman DonJayamanne MikhailArkhipov astrozot jakebailey

repo: Microsoft/python-language-server


text:
Update LightweightEntityWrapper.cs

Spelling correction.

This repository is read-only as mentioned in the readme.

source: gharchive/pull-request

authors: subratb terrajobst

repo: Microsoft/referencesource

license: MIT

license_type: permissive

license_source: github-api


text:
Fix the decimal separator

Version 0.29.1-insider
Commit 8c2d79e9cfcea56f52a81bfd215f50b790fd9223
Date 2018-05-01T06:07:55.597Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64
Please, fix the decimal separator, now the people are launch new Extensions and we can add more information to "Manage", the problem with using "." (dot) instead of "," (comma) became a really problem.
Just fix using the current user language.

@kburtram maybe November /2022 ?

@bigleka , I am looking into the issue now, would like to make sure we are on the same page, could you please provide more detailed information about the issue with some screenshots?
Thanks
Alan

@bigleka is this issue specific to how the decimal separator is handled in the Manage dashboard with Insights extensions, or is this a more general problem report about decimal separator handling all-up?
If there are a concrete scenarios that are being impacted it will help scope the work required to address this issue.  Thanks!

Hi @alanrenmsft The problem is more a cosmetic issue, in any dashboard if the result came using comma instead of point the graphic not render.

The querys works fine.

Thanks @bigleka for reporting the issue and providing repro steps, the issue has been fixed, the next release will have the fix.

Hi @alanrenmsft , I download the version 0.32.4-insider and the problem persist.
I do a new installation in other machine and the same problem

@bigleka Would you like to try something to test the changes? you can grab the latest tool service binaries but you will need access to https://github.com/Microsoft/sqltoolsservice/releases. please let me know if you would like to give it a try.

Hi, I download the release 0.32.5-insider and work great.
Thank you, very nice job.

source: gharchive/issue

authors: alanrenmsft bigleka kburtram

repo: Microsoft/sqlopsstudio


text:
I cannot organize the server groups in the desired order I would like.

SQL Operations Studio Version: 0.25.4

Steps to Reproduce:
Create Server Group folder and try to  sort them in any way.
SQL-OPS does not allow you to sort it.

I'll close this as a duplicate of https://github.com/Microsoft/sqlopsstudio/issues/335.  Thanks for the suggestion!

authors: MAL- kburtram


text:
Add initial design doc

Adding initial design doc.

Thanks for the great comments @DLehenbauer. I don't necessarily think that V1 needs to have the schema stuff, but it would be good to start thinking about and playing with. I think there is a lot of work and research to be done on how far we push the compilation mechanism. At some point I'm quite interested in implement something like this: paper.

repo: Microsoft/tiny-calc


text:
Add vgclib

It would be great to have a port of the vcglib library ( https://github.com/cnr-isti-vclab/vcglib ) .

The vcglib is also a dependency of the openMVS project, see https://github.com/Microsoft/vcpkg/issues/2952 .

repo: Microsoft/vcpkg


text:
hiredis support

hiredis support

https://github.com/MicrosoftArchive/redis/releases
redis  or hiredis  ?

authors: Voskrese kylejan


text:
openblas on windows 10 build fail

The following packages will be built and installed:

clapack[core]:x86-windows
dlib[core]:x86-windows
fftw3[core]:x86-windows
libjpeg-turbo[core]:x86-windows
openblas[core]:x86-windows
Additional packages (*) will be modified to complete this operation.
Starting package 1/5: openblas:x86-windows
Building package openblas[core]:x86-windows...
CMake Error at ports/openblas/portfile.cmake:16 (message):
openblas can only be built for x64 currently
Call Stack (most recent call first):
scripts/ports.cmake:71 (include)

Error: Building package openblas:x86-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: openblas:x86-windows
Vcpkg version: 2018.11.23-nohash
Additionally, attach any relevant sections from the log files above.
I have the latest vcpkg portfiles and latest upgrades.

nevermind i didnt even read the error. can only be installed on x64.


text:
sobjectizer updated to v.5.5.23

SObjectizer has been updated to the latest version.

Thanks for the PR!


text:
Telemetry : Incorporate UserCancelledError telemetry

It's currently used only in 1 instance.

@PrashanthCorp, do you mind clarifying the issue?  I'm not sure what you mean by it is currently used only in 1 instance.

My bad. Wrong repo.

authors: PrashanthCorp nturinski

repo: Microsoft/vscode-azureappservice


text:
A question，when would be command in CompletionItem get used?

An optional command that is executed after inserting this completion. Note that additional modifications to the current document should be described with the additionalTextEdits-property.

I need a scene, so I could test it.
Thanks.

See #201.

OK to close.

authors: chemzqm dbaeumer rcjsuen

repo: Microsoft/vscode-languageserver-node


text:
Installing exuberant-cTags package command is not executable

Environment data
VS Code version:  1.18.1
Python Version:   2.7.6
OS and version:   Ubuntu 14.04
Actual behavior
VSCODE prompts to install exuberant-cTags, But it returned command in string like ("sudo apt-get install exuberant-ctags") which is not executable command must be without double quotes.
Expected  behavior
Following command should run: sudo apt-get install exuberant-ctags in terminal and install the same package
Steps to reproduce:

Open a python template and VSCODE will prompts to install exuberant-ctags plugin

Logs
Getting below log in VSCODE terminal
 bash: sudo apt-get install exuberant-ctags: command not found

@harishgadiya As @brettcannon has mentioned, we're a little busy prepping for the next release.
However, I would be inclined not to accept any PRs to fix the Exuberant ctags issues, due to #197 .
I.e. the ideal solution to this issue would be to fix #197

Closing as "won't fix" in preference to #197 .

authors: DonJayamanne brettcannon harishgadiya

repo: Microsoft/vscode-python


text:
Deprecate the 'Build Workspace Symbols' command when jediEnabled = false

Fixes #2267

new Python Language Server rebuilds symbols in background

remove registrations/command functionality

add deprecation popup

~cleanup prior deprecated code~

[x] Title summarizes what is changing

[x] Includes a news entry file (remember to thank yourself!)

[x] Unit tests & code coverage are not adversely affected (within reason)

[x] Works on all actively maintained versions of Python (e.g. Python 2.7 & the latest Python 3 release)

[x] Works on Windows 10, macOS, and Linux (e.g. considered file system case-sensitivity)

[x] Conditionally deprecate the Build Workspace Symbols' command. If python.jediEnabled: true then we want to still use the same functionality!

@brettcannon when you get a moment could you please re-review. I've put back the code I removed earlier, and changed my approach to deprecating this command (ie. Only deprecated when Python Language Server is active).

@brettcannon or @ericsnowcurrently, ready for re-review.
Note: I found another injectable class already existing that handles the popup functionality, and replaced my PopupService with that.

Retry CI on macOS - timeout


text:
Extension API: Sense theme change

It should be possible to detect when the user changes the theme, as well as what is the new theme palette (dark, light, high-contrast).

That sounds reasonable, but makes me curious as to your usecase?

@rozzzly, I have created an extension (see https://github.com/jaime-olivares/vscode-yuml)  where the preview image is rendered before creating the output html, so I cannot rely on CSS variables like those added in v1.3. I need to know the theme style at JS/node code level, at the beginning and after a theme change.

A side note: the current extension API allows us to know every editor and workspace preference/setting but not the theme details.

Not sure how I closed this issue. Reopening...

Isn't this possible ever since we moved the selected them into settings by using the normal settings API and events?

authors: bpasero jaime-olivares rozzzly

repo: Microsoft/vscode


text:
CMD+D in new unsaved file

VSCode Version: 1.4.0-insiders
OS Version: OSX

Steps to Reproduce:

Have 1 existing file open in VSCode
Click File/New (CMD+N) to create new unsaved file
Paste

abc def
abc def
abc def

Put cursor inside abc
Hit CMD+D multiple times
Problem: Nothing gets selected

@wallverb I cannot reproduce:

Ok, so here are the steps that I can always reproduce on OSX (not sure if it's also problem on WIN)

Have one (and only one file fully open that is from project)
Press CMD+N to open new file/tab (don't double click tab bar because this way everything works ok for some reason)
Type text, try to select first word with CMD+D - nothing happens

Here is the gif:

Thank you, I can reproduce with these steps! Root cause is the editorFocus context key, which gets set to true from a second CodeEditorWidget instance and then gets reset to false from the original CodeEditorWidget instance. Root cause is #10358.
@bpasero @jrieken Let's discuss tomorrow

Feel free to close as duplicate of #10358 unless there is something else we need to take care of?

I like that we finally have reproducible steps. @bpasero Let's discuss tomorrow, maybe we go back to having scoped contexts per editor instance.

@alexandrudima I am fine revisiting that (as I have not yet started to work on disposing the editor) but I can reproduce the other issues as well easily as soon as I bring in the settings editor.
Note that untitled files also use a different editor compared to files, so it is similar to opening settings (but likely easier to reproduce).

@alexandrudima @jrieken after talking briefly to Alex, Joh is trying to bring back the state of having a keybinding service per editor. That means I will not continue in https://github.com/Microsoft/vscode/issues/10358 for now.

@jrieken does this mean I can revert https://github.com/Microsoft/vscode/commit/e466584a67903e467bad1089aac1145de6a61493 ?

Why would you do that? I think not listening to events when you are invisible and potentially never visible again is generally a good thing

@jrieken 👍

authors: alexandrudima bpasero jrieken wallverb


text:
List action not appear

VSCode Version: Code 1.4.0 (6276dcb0ae497766056b4c09ea75be1d76a8b679, 2016-08-04T16:45:31.680Z)
OS Version: Windows_NT ia32 6.3.9600

Steps to Reproduce:

Use command ctrl+P
The window action is not display anything

@ToujouAya Ctrl+P is used to open files and program symbols. To reach to VS Code commands please use F1.

@dbaeumer
Yes I understood how to use ctrl+P. I want to open files , but it can't work.  As you can see the attachment , i tried to open the controller file , but the window popup doesn't display anything. You can check the second attachment file or the attachment files below
Ctrl+P, F1, ctrl+T, etc... anything i tried but the window popup doesn't display anything.

Sorry for my English.

@ToujouAya sorry I misunderstood you. Reopening...

@ToujouAya you seem to be using the vscode-icons extension which can cause major issues because it patches our installation files. Can you completly uninstall Code and the vscode-icons extension and reinstall Code and see if you can still reproduce?

@bpasero
Thank you. I follow your instruction and it's work now.

It does.

authors: ToujouAya bpasero dbaeumer


text:
Debug console not appending output properly

process.stdout.write("hello");
process.stderr.write("world");

Debug console prints these in two lines which is unexpected

@weinand this works as expected for me, since these writes are sent to different streams - first is stdout second is stderr. We seperate the writes based on severity - e.g first is info, second is error (which is in colored red). The following snippets prints everything in one line as expected
process.stdout.write("hello");
process.stdout.write("world");

@isidorn your example prints everything in one line because you only get one OutputEvent, correct? The node runtime buffers writes. So your example doesn't prove that no additional newline is appended.
The purpose of my example from above was to prevent the buffering by using different streams and prove that an additional newline is appended.
In the integrated terminal or the external terminal both strings appear concatenated in one line.
In the debug console I see a newline after the first string, so the strings appear in two lines.
A terminal or debug console is a single linear stream of characters (as can be seen in the integrated or external terminals). Whether the characters come from stdout or stderr should not have an influence on how the characters are distributed on different lines, only the used color is affected.
Why do you have to start a new line when OutputEvents change their channel?

@weinand this example also writes everything in one line. I am getting two output events
process.stdout.write("hello");
setTimeout(() => process.stdout.write("world"), 5000);

We do not have to start a new line when OutputEvents change their channel. But we do it because we color the output channels differently. And currently we do not have support to color parts of the line red. Also imho we should somehow indicate to the user that the output differs.
Let me know if you would prefer that everything goes to one line and I can make that change.
Also FYI @bpasero since he was invovled in that code also

@isidorn we should show different colours for different channels and we should render in the same way as the integrated or external terminals.
If we do not yet have support to color parts of a line, we can wait until debug-console@next supports this.

authors: isidorn weinand


text:
Add npm install context menu to package.json file

When cloning a project from GitHub or after editing the package.json file in VS Code, no npm package is getting downloaded. So currently it's required to leave VS Code and execute npm install in a command prompt.
I suggest to add a context menu item to the Explorer when a package.json file is selected to simplify this task. The context menu item is suggested to run npm install from the directory of the package.json file:

An extension can provide this functionality. Please check the marketplace to see if any already offer it. If you are writing an extension, please see our extension authoring docs
Closing as extension-candidate

authors: SetTrend mjbvz


text:
Integrated terminal should use up more of available space

Related: https://github.com/Microsoft/vscode/issues/14479

To verifier: Please test in Windows and Mac

@Tyriar I don't see any difference between the stable and insiders ...

@ramya-rao-a it should be more obvious when you make the window really wide and select text in the terminal. Basically it should fit as many rows/columns as possible in the panel excluding the padding on the left and right.

I see a difference under Windows:

authors: Tyriar dbaeumer ramya-rao-a


text:
[WelcomeUX] Editor theme button refers to the theme using two words

Testing #18091
Is it the syntax theme or the editor theme?

Technically it's "Color Theme" in both the product and documentation.  I'll make the change.


text:
Terminal: Cannot read focus of null

Not sure how I got into this state but suddenly I see an error when I toggle the panel (with the terminal inside):

Using todays insider build.

Not reproducible after a restart......

I can't repro either... Did the terminal otherwise work fine and you got a prompt when this happened?

@Tyriar yes everything was working fine, I am using tmux btw.

Walked through the logic and it all seems like it should work so I added a null check to prevent the exception if it gets in that state.

authors: Tyriar bpasero


text:
Full screen does not work after starting vs code form the command line within tmux

VSCode Version: 1.10.2
OS Version: Mac OSX Sierra 10.12.3

Steps to Reproduce:

Open iTerm
run the tmux command
start vs code with the "code ." command
Click the full screen button on the opened window. In OS X its the right most button of the three buttons that appear at the top left of every window

I would expect at this point for vs code to run full screen. Instead nothing happens.

This is an issue with tmux and macOS: https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard
The fix is to install the helper:
brew install reattach-to-user-namespace

And then add to your ~/.tmux.conf:
set-option -g default-command "reattach-to-user-namespace -l zsh"

Note the zsh, change it to your own shell.

authors: joaomoreno stewartmatheson


text:
Files opened with untitled scheme are closed on save.

VSCode Version: 1.11.2
OS Version: macOS Sierra 10.12.4

Steps to Reproduce:

Create extension to open from an untitled-scheme URI, show new document, save document. Something like this:

'use strict';
import * as vscode from 'vscode';
import * as path from 'path';

export function activate(context: vscode.ExtensionContext) {

    let disposable = vscode.commands.registerCommand('extension.execTest', () => {
        let untitledURI = vscode.Uri.file(path.join(vscode.workspace.rootPath,'testUntitled.txt')).with({scheme:'untitled'});
        vscode.workspace.openTextDocument(untitledURI).then(doc => {
            vscode.window.showTextDocument(doc).then(editor => {
                editor.document.save().then(success => {
                    console.log(editor.document.uri.toJSON());
                    console.log(`isClosed: ${editor.document.isClosed}`);
                });
            });
        });
    });

    context.subscriptions.push(disposable);
}

export function deactivate() {
}

Run the extension.

Observed behavior:
New file is created and briefly shown in an active editor, but then immediately closes. Document URI still has untitled scheme, and is closed after saving (I'm guessing this is the issue).
Console output:
{
    "fsPath":"/Volumes/Pocket/Test/testUntitled.txt",
    "external":"untitled:/Volumes/Pocket/Test/testUntitled.txt",
    "$mid":1,
    "path":"/Volumes/Pocket/Test/testUntitled.txt",
    "scheme":"untitled"
}
isClosed: true

Expected bahavior:
File stays open in the active editor upon saving and document URI scheme changes from untitled to file.
In my actual use case, I am creating a new document, adding content, and opening it for editing by the user. Currently, this requires opening the new untitled document, showing it in an editor (to get access to TextEditor.edit()), making my changes with TextEdit.replace(), saving the document, then opening the newly-saved file with the file scheme, and finally showing it in an editor. I'm not sure how much of a change this is, but it seems this could be simpler if the same document instance could be maintained through the changes and could remain open in the active editor. An option could be provided on the TextDocument.save() method to optionally provide this behavior.

/cc @jrieken we probably have a duplicate of this question already somewhere, but my search skills did not reveal it (if there is one).

@smurphy917 you will have to open the document again after saving, such as:
'use strict';
import * as vscode from 'vscode';
import * as path from 'path';

export function activate(context: vscode.ExtensionContext) {
    const filePath = path.join(vscode.workspace.rootPath, 'testUntitled.txt');
    let disposable = vscode.commands.registerCommand('extension.sayHello', () => {
        let untitledURI = vscode.Uri.file(filePath).with({ scheme: 'untitled' });
        vscode.workspace.openTextDocument(untitledURI).then(doc => {
            vscode.window.showTextDocument(doc).then(editor => {
                editor.document.save().then(success => {
                    vscode.workspace.openTextDocument(vscode.Uri.file(filePath)).then(doc => {
                        vscode.window.showTextDocument(doc).then(editor => {
                        });
                    });
                });
            });
        });
    });

    context.subscriptions.push(disposable);
}

export function deactivate() {
}

I take it that this isn't an acceptable feature request. Is that accurate?


text:
Adding language - Greek (el) to transifex VS Code project

We expect at least three language contributors sign up and product team sign off before adding new language.
Please vote by adding your transifex account name here.
Criteria link: https://github.com/Microsoft/Localization/wiki/How-to-request-a-new-UI-language-for-VS-Code-project.

I will participate in translating VS Code to Greek language. My transifex user name is zsdregas.

Count me in as well. Same username in transifex.

Sign me up as well. My transifex username is the same as my GitHub account (acemod13).

I am also in. My Transifex username is the same as my GitHub (geochatz)

authors: JimiC acemod13 danyeh geochatz zsdregas


text:
Settings: wording feedback

Refs: #31448
"Place your folder settings here to overwrite those from the Workspace Settings". I would prefer
"Place your ${nameOfFolder} folder settings here to overwrite Workspace Settings"
"This setting cannot be currently applied because it does not support the folder resource scope. Changing it might impact other workspaces."
I would prefer
"This setting cannot be currently applied because it does not support the folder resource scope. Changing it will have impact when {nameOfFolder} is opened outside of a workspaces."

We should try to simplify this even more and try to avoid the close to the implementation wordsfolder resource scope.
Suggestion:
This setting is not applicable when the folder is a root of a workspace. It is only applicable when you open the folder "FOLDERNAME" directly."
Not clear why we explain "Changing it might impact other workspaces".

How about following?

Updated with suggestions from the team. Cannot include the folder name for now. Will add it in next milestone.

May I suggest "This setting cannot be applied as part of a workspace." instead of "This setting cannot be applied now."? The word now introduces ambiguity.

No plans

@sandy081 cant we fix this, should be less than 2 minutes? Just changing strings?
I can also do it if you prefer that.

@isidorn It is just not the string change, it also needs the folder of the setting in which it is. I think it is not trivial as the message is registered to JSON schema where I do not know about folders.
One alternative is to generate the diagnostic programatically by the settings editor.
Since it is not trivial and I see no others complained about it, I closed it.

@sandy081 got it. Ok, makes sense.

authors: configurator egamma isidorn sandy081


text:
app won't update on macOS

I have tried with both regular VS Code and Insiders.

VSCode Version: Code - Insiders 1.17.0-insider (b0c0634339c6f64a5c7f08b56fe732fb9154d3c4, 2017-09-15T05:10:59.353Z)
OS Version: Darwin x64 16.7.0
Extensions:

Extension
Author (truncated)
Version

django-html
bib
1.2.0

python
don
0.7.0

Steps to Reproduce:

Install VS Code on macOS Sierra (10.12.6).
When update notification appears in bottom left, right click and select Restart to Update.
Wait for application to close, do its work and restart.

The update notification appears again, regardless of how many times it is told to update.

Reproduces without extensions: Yes

https://github.com/Microsoft/vscode/issues/7426#issuecomment-277737150

authors: joaomoreno timbedard


text:
Extension host terminated unexpectedly. Code:  3221225477  Signal:  null

VSCode Version: Code 1.16.1 (27492b6bf3acb0775d82d2f87b25a93490673c6d, 2017-09-14T16:38:23.027Z)
OS Version: Windows_NT x64 10.0.15063
Extensions:

Extension
Author (truncated)
Version

html-snippets
abu
0.1.0

vscode-eslint
dba
1.3.2

javadebugger
don
0.1.3

python
don
0.7.0

vscode-javac
geo
0.0.46

vue-snippets
hol
0.1.5

cpptools
ms-
0.12.4

vscode-docker
Pet
0.0.18

open-in-browser
tec
1.1.0

python
tht
0.2.3

vscode-react-native
vsm
0.4.2

Steps to Reproduce:

Reproduces without extensions: Yes/No

Extension host terminated unexpectedly. Code:  3221225477  Signal:  null
I can't resolve this bug .It is useless that restarting it or reinstall.

@gonefuture Can you please try launching Code.exe --disable-extensions from a command prompt ?

Hi, same problem here. i observe a massive use of RAM and CPU while try restart the Extension host process.

@onofremartins This all depends on what extensions you have installed. Does the massive usage of RAM reproduce when disabling all extensions ?

The The problem still exists。I try to remove all extensions and reinstall ,but it is useless.
I find that  I can't use git in the vscode。     It reminds me that "your system does not seem to have Git. installed." However ,I has install git,and set the git environment variable 。

It say that "Source code management provider that has no activity." and "Extension host terminated unexpectedly."

in vscode Developer Tools

@gonefuture @onofremartins What language is your Windows installation?

simple chinese

My OS has English default. Windows 7.
In my case I found the problem. This was my git repository, many files being processed by the git extension. I removed the git repository because I did not need on this project anymore and the problem did not happen again. but I do not know which of the extensions below was.

I has delete all extension and remove the git repository, however,wen use vscode to open file, the problem still exist.
##What's more, I use anything about git in vscode . I can clone git proplem, it reminded me I has no git ,but I have and use git normally in other program.

@gonefuture What is the value of the following 3 environment variables, in your system:

ProgramW6432
ProgramFiles(x86)
ProgramFiles

@joaomoreno
How to see those  environment variables ?

I'm really new to all of this, I just installed VSCode and got this error straight up from the box.

Hi,
Has there been a fix for this issue. I'm also facing this issue.
My Configuration:
Windows 10 Home:  Update 1709
VS Code:  1.18.1 x64
Node: 9.2.0
NPM: 5.5.1
Extensions Installed: Babel ES6/ES7, Beautify, C/C++, C#, Code Runner, Dart Code, ESLint, Flutter Snippets, Go, Kotlin Language, MagicPython, markdownlint, Node Debug 2, One Dark Pro, Powershell, Project Manager, Python, React Native Tools, TSLint, Visual Studio Team Services & vscode-react-templates.

Tried re-installing VSCode, removed all extensions & re-installed them. Nothing works.

@ojhariddhish
The problem still exists, no matter how I upgrade the system or uninstall the software reinstall, I even tried the zip version of vscode.I think, which should be related to git, because my source code management function there is different from others

@ojhariddhish

@gonefuture yes, the problem exists and its the same error we've been getting. I guess, now only #VScode team only can help us.

Does it reproduce with out latest insider release? https://go.microsoft.com/fwlink/?Linkid=850640

@joaomoreno
Oh, yes! The insider version is not wrong. When will the release version out?

@joaomoreno thanks for the latest insider release. This release helped me find out which extension was causing this issue for me. It was React Native Tools. I've uninstalled this extension from stable as well as insider release and now the issue is gone.
@gonefuture do you have React Native Tools extension installed? If yes, can you please confirm whether this is the extension causing the issue or its just on my system.

Great news, closing then!

@joaomoreno
Thanks.

@ojhariddhish

Yes,I can use React-Native tool.

Thanks @gonefuture. So, basically this extension was not the causing the issue for you but for me it was.
Its good that @joaomoreno has provided us with Insider release.

@joaomoreno
Thanks.

authors: alexandrudima anonymouswalkalone gonefuture joaomoreno ojhariddhish onofremartins risa401


text:
[Feature request] Provide a way to highlight unmatched brackets

Right now, it seems that the most reliable way to tell whether a bracket is unmatched is to try putting the cursor next to it and see if the bracket and its match are highlighted. If you've tried putting the cursor on both sides of a bracket and it doesn't get highlighted, it's (almost definitely) unmatched.
Clearly, this isn't as desirable as having the option to set some styling for the unmatched bracket.

Many linters would deem your source invalid if there is unclosed/extraneous brackets there and point you to the line:col. VSC doesn't do linting - only syntax coloring.
Please don't forget to close the issue.

@Spown - Respectfully, your response is dismissive. Why does VS Code attempt to highlight matching brackets at all? Why isn't that something left up to linters? The fact is, there are editors out there, often much less full-featured than VS Code, which already do what I am asking. (This is why I am asking in the first place!) And clearly, if the program knows not to highlight a brace when it is unmatched, then it could instead choose to highlight it using the very same logic.

My response is in accord with your OP which is "...a way to highlight unmatched brackets". Unmatched bracket - is a problem. It's a problem matcher's (i.e. linter's) job to point them out to you. "Much less full-featured" editors do not separate workflow into clearly separated logical layers and throw the features into the heap. VSC's syntax highlighting assumes the code to be valid, whether or not it is the fact.
The same goes for the Go To Bracket function:
1{
2    {
3        {
4        //}
5    }
6}

You can set the cursor at 3 and go to the matching bracket, which will be at 5. But it only will ever be truly unmatched if there is no closing brackets untill the very document's end. That's why you need a linter that would try to build an abstract syntax tree and localize the true problem.
Anyway I made my point. And you just want a "magic button". I sincerely wish for your wish come true but I can't help but to explain why it probably won't.
c ya

@Spown - I'm not asking for a magic button. I am not asking for any new or complicated logic. I am saying that when the cursor is adjacent to a bracket, there is already logic in place which determines whether to highlight it or not. This is already in the VS Code standard installation and has been for a long time. When that logic comes to the conclusion "this bracket should not be highlighted, because it's not a match", I am proposing to put user-definable highlighting at that point in the logic, so that the unmatched bracket stands out. When the cursor is somewhere else, it goes back to not being highlighted, just the way matched brackets are currently unhighlighted when the cursor is elsewhere.

authors: Spown jkyeung


text:
::before / ::after decorators not always rendered on empty ranges

From @guillaumejenkins

@alexandrudima is this by design?

::before decorators are not rendered if the range is at the end of the line
::after decorators are not rendered if the range is at the beginning of the line
Only ::before shows for empty lines (which might be the same issue as above)

Note that this is all for empty ranges.
I need both ::after and ::before (because I need the content CSS property twice). Currently I can't do that because only one shows up at the start or end of the line.

        const editor = vscode.window.activeTextEditor;
        const doc = editor.document;

        // Set up ::before at the start and end of line 0
        const beforeDeco = vscode.window.createTextEditorDecorationType({
            before: {
                contentText: 'b',
                color: 'yellow'
            }
        });
        const line0Range = doc.lineAt(0).range;
        const line0Start = new vscode.Range(line0Range.start, line0Range.start);
        const line0End = new vscode.Range(line0Range.end, line0Range.end);
        editor.setDecorations(beforeDeco, [line0Start, line0End]);

        // Set up ::after at the start and end of line 1
        const afterDeco = vscode.window.createTextEditorDecorationType({
            after: {
                contentText: 'a',
                color: 'red'
            }
        });
        const line1Range = doc.lineAt(1).range;
        const line1Start = new vscode.Range(line1Range.start, line1Range.start);
        const line1End = new vscode.Range(line1Range.end, line1Range.end);
        editor.setDecorations(afterDeco, [line1Start, line1End]);

        // Set up ::before and ::after on line 3 (empty line)
        const beforeAfterDeco = vscode.window.createTextEditorDecorationType({
            before: {
                contentText: 'b',
                color: 'yellow'
            },
            after: {
                contentText: 'a',
                color: 'red'
            }
        });
        const line3Range = doc.lineAt(3).range;
        const line3Start = new vscode.Range(line3Range.start, line3Range.start);
        editor.setDecorations(beforeAfterDeco, [line3Start]);

This would require changes too risky to push for October. Postponing...

after:


text:
El host de extensiones finalizó inesperadamente

I have this problem with the new Version 1.18!!!

@Keosuve The message in the console appears that the extension host terminates with an Out-Of-Memory exception.
Can you please share the list of extensions you have installed ?

I've had the same behavior through 1.17 and 1.18 now. How do you figure out where the extension host is hanging (and configure vscode to always start like that)? With only 4 GB to work with, my system hangs and the process quits before I can get anything useful from the dev tools.

@seanpoulter This will explain you how to attach dev tools to the extension host: https://github.com/Microsoft/vscode/wiki/Performance-Issues#profile-the-extension-process. When things go south please try to create a heap snapshot and/or a CPU profile

authors: Keosuve alexandrudima jrieken seanpoulter


text:
Refactoring broken in TypeScript files with uppercase characters in filename

VSCode Version: Code 1.19.1 (0759f77bb8d86658bc935a10a64f6182c5a1eeba, 2017-12-19T09:46:23.884Z)
OS Version: Windows_NT x64 10.0.14393
Extensions:

Extension
Author (truncated)
Version

npm-intellisense
chr
1.3.0

tslint
eg2
1.0.24

vscode-npm-script
eg2
0.3.3

search-node-modules
jas
1.2.0

PowerShell
ms-
1.5.1

debugger-for-chrome
msj
4.0.0

Steps to Reproduce:

Have a file with an uppercase name, e.g. Foo.ts
Put the cursor on an identifier and press F2 to rename it to some other name.

Result:

Sometimes (I don't know how to consistently repro this, it always happens with certain files but if I create a new file from scratch this does not repro), a second tab with the lowercase foo.ts will show up in the IDE - there are now TWO tabs for the same file! One using the uppercase Foo.ts, the other the lowercase foo.ts.
If autosave was OFF, then this refactoring operation leads to corruption in the file - the refactored name shows up garbled, in the wrong place in the file, etc.
If autosave was ON, then the first refactoring appears to work fine, but subsequent ones lead to the same corruption as described in #2.

Reproduces without extensions: Yes

I've been trying to narrow down the repro steps for this. It's very strange. I have one existing file in my workspace that I can 100% consistently repro with, but I can't manually repro it with a newly created file.
And the repro only occurs when the file in question is called Node.ts. If I rename it to say Node2.ts, the problem does not repro. It does not repro if I create another file in another folder called Node.ts, or another file in the same folder with a different name. I've tried nuking my git repo and recreating it, renaming the project root directory, none of it makes a difference.

Other things I've tried: nuking my temp folder and the %USERPROFILE%\AppData\Roaming\Code folder, didn't help.

@pbaer Try closing all editors and then restarting VS Code. I think we may be getting into a bad state where we cache the incorrect editor path after a file's casing has changed

Yes, I've tried that. Also, I'm not the only person on my project who can repro this - others enlisted in the same repo are seeing the same problem.
We've confirmed we see the same behavior on the same set of files. What they all have in common is that a) the first character of the file name is capitalized (most of our files are all lowercase) and b) they were added to our repo "a while ago" (this seems to be a weak correlation, as there are some exceptions)

Just found a 100% repro. It's changing the casing that triggers this behavior, somehow:

Add a file named Foo.ts that contains:

class Something {
public foo(left: number, right: number) {
}
}

Close the file in VSCode
Outside VSCode, rename the file to foo.ts
Open the file in VSCode
Use F2 to rename the left parameter name to something else

Result:

The refactoring doesn't apply
Another tab with the old name, Foo.ts, pops up behind foo.ts
Subsequent attempts to refactor will eventually result in file corruption

Just letting you know that I have encountered the same issue but in my case, I changed only the filename (in the Code).
I also have a TypeScript project like Mr. @pbaer. I had some import statements that referred to the old lowercase name, I wonder if that could cause something.

This should be fixed in the latest insiders builds. If you still see this issue, please open a new issue with repo steps and I'll take another look

authors: mjbvz pbaer ttamminen


text:
Icons on activity bar disappear after adjusting the size of the window

VSCode Version: Code 1.19.1 (0759f77bb8d86658bc935a10a64f6182c5a1eeba, 2017-12-19T09:46:23.884Z)
OS Version: Windows_NT x64 6.3.9600

Steps to Reproduce:

Stretch the window to a very small size, maybe minimum, until you can't see all the five icons on the activity bar. When you strectch the window to a minimum, you can see the icons changing to a three point icon like this.

Now just resize the window to a normal size, the other four icons will be lost.

I've tried several settings, but nothing works.

Reproduces without extensions: Yes/No
Yes

em, I just find this...

I'm sorry, I'm a new user.
I suggest it can restore automatically when resizing the window, just as automatically hiding.

We fixed this issue in insiders meanwhile. You can give our preview releases a try from: https://code.visualstudio.com/insiders/
@isidorn fyi

authors: YongjiLiuGit bpasero


text:
No red dot for function breakpoint on UI when hit and break

In general, after starting debguging, Function breakpoint should display on the UI, but this is missed until now.

What behavior are you seeing
What behavior are you expecting
Can you please provide repro steps and screenshots

Closing until user provides more details


text:
Cannot read property 'element' of undefined

Issue Id: f046ba6c-d178-4335-b7d2-583ebeff79bfVersions - 1.21.0-  a903bd38fbe9006c076d218ff69fe1ee0160f815-  b76a4a71434d6cdee69fa1d8bdc7533d09598d53-  d7dca142ad6051e6b1c7397ea73221feb0160f21-  24d376c2735bb1eff8993aae6b3ba5eec967b6db-  3817c899cae312e0e989da8bfbc61308cfbf45f1-  9a04587cc6b42c332609a08bfd7e2dbeac592c21-  5450fdc79778b5a76a27ea7e5fd68e9ebbe44107-  04fe3370e58e70d78f1687fa8661d45bc16e68cb-  a9dcb2c3159367e347271d88c399e1f6ca88c23dStack TypeError: Cannot read property 'element' of undefined[TypeError: Cannot read property 'element' of undefined](https://github.com/microsoft/vscode/blob/9a199d77c82fcb82f39c68bb33c614af01c111ba/srcTypeError: Cannot read property 'element' of undefined)/vs/base/browser/ui/list/listView.ts#L363:60 (toMouseEvent)/vs/base/browser/ui/list/listView.ts#L350:129 (map)/vs/base/common/event.ts#L374:88 (call)/vs/base/common/event.ts#L142:15 (fire)

Here is another similar callstack
TypeError: Cannot read property 'element' of undefined/vs/base/browser/ui/list/listView.ts#363:60 (toMouseEvent)/vs/base/browser/ui/list/listView.ts#350:129 (map)/vs/base/common/event.ts#374:88 (call)/vs/base/common/event.ts#142:15 (fire)/vs/base/browser/event.ts#116:25


text:
Quick box improvements for multi-step inputs

Continuing #48116. Mockups #45589.

#50050 shows several attempts to draft the API for multi-step inputs, each accompanied with a simple example of asking the user for three inputs:

A resource group (to create an App Service in).
A name for the App Service.
A runtime for the App Service.

Some challenges we need to solve in order to implement the mockups in #45589:

No flicker in the UI, also when, e.g. step 3 first needs to fetch the list of available picks based on the choice in step 1.
Cancellability while the user provides input and between inputs (e.g., while additional data is fetched).
Dynamic steps and custom actions, e.g., step 1 can have a toolbar item for creating a new resource group. For that an additional step to input the name of the new resource group needs to be added dynamically.
The UI allows the user to navigate back to the previous inputs.
We should consider what it means for an input sequence to be suspended and later resumed.

What makes it difficult to weave this into the existing API of showQuickPick and showInputBox:

'Navigate back' and 'custom action': The two functions only support two possible outcomes in their return types: Input is provided or it is cancelled. Introducing additional outcomes requires expanding the return types or having an additional way of receiving the outcome.
Connecting multiple input steps requires some kind of context that is passed either as an option to the existing API or as an implicit state to the implementation behind the existing API.

Adding additional outcomes like 'back to previous step' and custom actions like 'create resource group' to the existing API has proven to be difficult without jeopardizing its simplicity. So our current thinking is that we need to introduce new API to handle these and other advanced cases (e.g., dynamically updating the list of items) we haven't discussed yet.

The new API will provide the basic operations needed to build not only multi-step input flows, but also dynamic updating of the items list and other currently not foreseen scenarios.

A draft of this API is shown in Take 3 of the API exploration.
A simple multi-step example is shown in Take 3 of the examples.
A more elaborate multi-step example with back navigation and custom actions is shown in Take 10 of the examples.

The additional flexibility comes at the price of extensions having to write more code to implement useful behavior. At the same time we are keeping the existing API simple as it is and we are not introducing new API that tries to anticipate future use cases beyond the basic operations these will be made of. It will also be easy to add more of these basic operations later.

A couple of quick first thoughts.
Instead of using toolbarItems with events, why not use Commands -- not that you would define their placement in the QuickInput, but you could change toolbarItems to be commands and then any commands added with icons would be added as toolbar buttons, and others would be added under a ... menu. I feel like that would be a bit more consistent with other APIs and UI structures.
What is onDidAccept? Is it for accepting text input that isn't in the pick list?
I also don't yet understand what enabled & busy are for.
Some other nit picks:

pickMany -> multiselect

I would also love it if there was an API affordance to expose the ability the file picker has, which is to use the right-arrow to perform an action on a pick item. I go through some gymnastics in GitLens to offer a similar ability - although I can't use right-arrow without a modifier otherwise you couldn't move the cursor in the input box.

I was asked to provide input here in reference to closed issue #35993
However, I think the scope of the other issue is far beyond what is being talked about here?
I want the ability to build a custom command palette for vscode with the same capabilities of the command palette which I built for Eclipse.
You can see an example of the capabilities in the Eclipse palette here Commander, a next-gen command palette for Eclipse
Probably what I actually need is a webview that can be positioned like a quick picker that allows handling of keyboard events and access to the list of all commands and their names, descriptions etc.

@eamodio Thanks for the feedback:

I'll look into using commands, that would indeed make it more consistent.
onDidAccept is for accepting text in the input box (although it can also be interpreted as pick the current item in the list, that is up to the extension), onDidSelectItem (was: onDidPickItem) is for selecting an item in the list.
enabled: false would prevent the user from interacting with the input UI (e.g., between two steps of a multi-step input).
busy: true would show a progress indicator (e.g., while loading additional items).
I'm renaming pickMany to canSelectMany which is consistent with canSelectMany in the OpenDialogOptions.

@dakaraphi Thanks for the feedback, to reply to your feature requests in #35993:

Capture keyboard input events from input field and handle in extension

onDidTextChange gives the text changes.

Change list content on handling of input events

items can be updated in response to changes in the text field.

Add columns to list content

This is not within the scope of this change. We would probably need additional use cases to better understand the requirements of the community with this before we add API.

Handle some level of rendering of content

Provide indication of markers to be applied on a row
Provide character indices or information for highlighting matched characters

Highlighting of characters in list items is not part of the proposed API yet, but will need to be added in some way to match the capabilities of the existing showQuickPick API.

PR #50402 shows an updated version of the API draft. Still not using commands, that needs more thought on whether it fits this use case.

@chrmarti thx, so where do I go from here?  Should this be a separate issue? Should the original be reopened?

@dakaraphi I have reopened the other issue.

I wondered if the new API for multi-step QuickOpen-Actions, in some form or another, will find a way into the standalone monaco-editor, since I would have great use for this. (consuming the editor, not extending it, so using vanilla JS)
So, are there any plans to bring it to standalone monaco-editor?
monaco-editor#683

@sydeslyde It currently seems unlikely that we will add API to Monaco that is not core to the editor.

Some screenshots of the current work showing a multi-step flow.
Step 1 with a custom action "+" (icon from the extension) in the title:

Step 2 with a built-in back button (icon is TBD) in the title:

The built-in back button will have keyboard shortcuts assigned (by default the same as Back editor navigation).
Step 3 with a light theme:

If someone hits esc on one of the steps does it just back up or is the whole sequence canceled?
Definitely agree that the back button needs a better icon (and/or stronger treatment)

The API currently leaves handling of Esc or any other way of cancellation to the extension. The API tries to be generic in such a way that you need to implement 'multi-step input' on top of it.

So the input steps that say "Press Enter to confirm or Esapce to cancel" won't do anything unless the author handles Esc?

Escape will hide it and fire onDidHide, that part cannot be overridden for consistency. Enter will fire onDidAccept, but it will not hide the input UI, so it is up to the extension to either hide it or continue with other inputs.

Ah, got it -- thanks

Is there any way to easily include an optional step? Eg. in Flutter we have a "new project" command which prompts you for a few things - a project name, location, etc.. Some people want to add additional steps for some optional values (which programming language, etc.) but it would make the simple flow more complicated.
I'm not sure how it'd fit into the UI, but if there was some way to allow the user a way to go to advance settings without adding another step in. I'm not sure you could really do it without adding buttons along the bottom or something, but I thought it worth asking in case you'd thought about it :-)

@chrmarti Aha, I misunderstood what that + was. Sounds good, thanks!

Good progress on the implementation. There is the multi-step example based on this new API: https://github.com/Microsoft/vscode-extension-samples/tree/chrmarti/quickinputsample/quickinput-sample
The API is still proposed, now would be a good time to check if it will suit your needs. Thanks!

@raix You can update the list of items while the picker is already shown (just assign a new array to items). While fetching new items remotely you can also turn on a progress indicator (set busy to true) to give a hint that the list will be updated. One current limitation is that the list does not have a message area to show a validation message.

@chrmarti Ok, sounds good - I'll take a closer look.
Would be nice with the ability to validate the input (like in the regular input component)

Collecting feedback in https://github.com/Microsoft/vscode/issues/53327.

authors: DanTup chrmarti dakaraphi eamodio raix sydeslyde


text:
Git insertion colour disappears when scrolling

Issue Type: Bug
The coloured line next to the line numbers symbolising a Git insertion disappears when the line number of the insertion's last row disappears while scrolling down. The line break mode (Alt+Z) is enabled in my current configuration.

Create a Git observed text file.
Write two long paragraphs (each in one line).
Scroll down.

VS Code version: Code 1.24.1 (24f62626b222e9a8313213fb64b10d741a326288, 2018-06-13T17:51:32.889Z)
OS version: Windows_NT x64 6.1.7601

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz (8 x 2392)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Memory (System)
7.91GB (4.14GB free)

Process Argv
C:\Program Files\Microsoft VS Code\Code.exe C:\Users\de23463\Documents\Unterlagen Fachhochschule\Praxisphase 2\Unit-Testing Prozessmodelle\LateX Projekt\bachelorthesis

Screen Reader
no

VM
0%

Extensions (7)

Extension
Author (truncated)
Version

vscode-language-pack-de
MS-
1.24.3

team
ms-
1.136.0

java
red
0.26.0

vscode-java-debug
vsc
0.9.0

vscode-java-pack
vsc
0.3.0

vscode-java-test
vsc
0.6.1

vscode-maven
vsc
0.9.0

Here is a gif showing the problem:

authors: alexandrudima zyskfhmuenster


text:
Files discarded via Git bash inside VS Code are still shown on Git Source Control

VSCode Version: 1.24.1
OS Version: Windows 10
Steps to Reproduce:

Make changes to repo
Discard changes using git checkout --
Run git status to check if changes were discarded

Does this issue occur when all extensions are disabled?: Yes

What is the issue?

Edited the title because it was too vague. The issue is that files are still shown on source control or when running git status.

Try to run "git fetch --prune"

@thismarcoantonio I tried running git fetch --prune but it does nothing

This seems like a lack of file events.
Did you open the root of the repository as a workspace?

Sorry for the late response. Yes, and I use the Project Manager extension to switch between projects.

Does VS Code react to file events otherwise? If you delete a file in the Windows Explorer, does the VS Code explorer react?

authors: joaomoreno msaguindang thismarcoantonio


text:
Align and change color in Start Menu icon

I'm not sure if this is a bug or a feature request, but I thought I should bring up this here.
When fixing VScode shortcut in Start Menu (Windows 10), the icon doesn't seem to be correctly aligned. That can be seen comparing with Visual Studio 2017 icon, for example:

Also, I have been using a blue tone in Windows theme for some time, when I installed/updated (don't remember exactly) VScode, which was using almost the same tone:

A suggestion would be to use a theme-independent icon, likewise Visual Studio 2017 icon, at the left.
Windows color I was using:

VSCode version: 1.27.2
Windows version: 1803

/cc @joaomoreno since you are more familiar with Windows. I thought we have icons of the same size as VS, but why are they smaller and showing up so low to the frame?

theme-independent icon, likewise Visual Studio 2017 icon, at the left.

If you make the tone purple, VS icon will be buried in the background color, correct? It seems there is no way to completely fix this.

I see, maybe we didn't specify a bg color so the system falls back to the "tone" you are using, which might bury our icon.

@diogoan can you provide more info on how you're setting the tile colors and if you're using any windows customizations? I'm also using Win10 1803 and am not able to repro:

@misolori I'm using vscode 1.27.2 on Win10 1803 too. I reinstalled vscode just to check how to reproduce and I'm not seeing the wrong icon/background again. Maybe that was corrected in a previous release?

I was using just an icon pack extension, but even installing it again, the icon is normal.
Thanks for the patience, if it happens again, I'll try to find what can be causing to bring here.

authors: diogoan misolori octref


text:
[json] Multiline json keys can cause document symbols view to look weird

Issue Type: Bug
Found while testing #65545
Repo

Open the following JSON file:

{
    "a\nb": "abcd",
    "xyz": "pqrs"
}

Open document symbols

Bug

view
VS Code version: Code - Insiders 1.31.0-insider (9606490e26f8cbe4d615305389d45e9b144ded7c, 2019-01-30T15:15:08.172Z)
OS version: Darwin x64 18.2.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz (8 x 2200)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: enabledrasterization: enabledsurface_synchronization: enabled_onvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 3, 3

Memory (System)
16.00GB (0.27GB free)

Process Argv
-psn_0_20636589

Screen Reader
no

VM
22%

This is a super low priority bug but I'm still the layout weirdness in 2e173fabe821d06a60f532b90d6e5d95c0e09a9c:

Oh, yes, one more case...

fixed by 5e85248c562fde9b5f0908731983caa89798dd83

authors: aeschli mjbvz


text:
Avoid using fsPath on a non-file URI

Using fsPath on a non-file URI is not very nice and kind of unspecified.
https://github.com/Microsoft/vscode/blob/c7ffcb9d0dc81252879cd82741067aa8379dfa5c/src/vs/platform/windows/electron-main/windowsService.ts#L423

@aeschli As you've seen, this is the feature that allows users to open files based on product URLs, which have their scheme locked to vscode or vscode-insiders. Eg:
vscode://file/Users/joao/Desktop/file.txt

What is the recommendation here, if fsPath isn't allowed?

Code got refactored in the meantime.

authors: aeschli joaomoreno


text:
libdbus-1.so.3: no version information available

VSCode Version: Stable 1.32.3

OS Version: Fedora 22

OS Type: 64-bit

Steps:

dnf install code
code
I got this error :[ /usr/share/code/bin/../code: /usr/lib64/libdbus-1.so.3: no version information available (required by /usr/share/code/bin/../code) ], vscode can't open

We only support fedora 23+ https://code.visualstudio.com/docs/supporting/requirements


text:
format on save causes build dir EPERM issue when running npm run build

VSCode Version: 1.33.1
OS Version: Windows 10 x64 (Server 2019)
Node.js: 10.2.0

Steps to Reproduce:

Use formatOnSave
Open a project dir where you might see a build folder in it too
Run npm run build

You'll get this error: gyp ERR! stack Error: EPERM: operation not permitted, mkdir 'C:\Users\Administrator\endec\build'

Does this issue occur when all extensions are disabled?: yes

Temporary solution was to add this and ignore the build dir entirely
"files.exclude": {
    "**/.git": true,
    "**/.svn": true,
    "**/.hg": true,
    "**/CVS": true,
    "**/.DS_Store": true,
    "**/build/**": true
  },

Seems like an issue with the prettier extension

If it's prettier, please file the issue against the prettier extension.

authors: Suhail aeschli


text:
command 'python.setInterpreter' not found

Issue Type: Bug
command 'python.setInterpreter' not found
After i updated VSCode it's self.
Type: Python: SelectInterpreter
And this was shown:
command 'python.setInterpreter' not found
VS Code version: Code 1.33.1 (51b0b28134d51361cf996d2f0a1c698247aeabd8, 2019-04-11T08:27:14.102Z)
OS version: Windows_NT x64 10.0.17763

System Info

Item
Value

CPUs
Intel(R) Pentium(R) CPU G3220 @ 3.00GHz (2 x 2993)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: disabled_offnative_gpu_memory_buffers: disabled_softwarerasterization: enabledsurface_synchronization: enabled_onvideo_decode: enabledwebgl: enabledwebgl2: enabled

Memory (System)
9.92GB (4.77GB free)

Process Argv

Screen Reader
no

VM
50%

Extensions (6)

Extension
Author (truncated)
Version

gc-excelviewer
Gra
2.1.32

restructuredtext
lex
106.0.0

anaconda-extension-pack
ms-
1.0.1

python
ms-
2019.4.11881

vscode-docker
Pet
0.6.1

vscode-yaml
red
0.4.0

At first i thought of my python env was broken, because i didn't find anywhere to select Anaconda env.
So, i have re-installed ALL MY PYTHON ENVIRONMENTS...^&^
And after i read the VSCode document, i tried the Python: Select Interpreter.

The problem was found in

VSCodeUserSetup-x64-1.33.1
And i rolled back to
VSCodeUserSetup-x64-1.32.3
the problem disappeared.

But the thing is... It automatically upgraded its self to 1.33.1 again.
And the problem didn't appear! W

I got the same question today. All worked fine before I click to update.
So downgrade to 1.32.3, it works correctly.

I got this problem too. Version 1.33.1

same issue here.
and how to downgrade to 1.32.3?

same issue appears after upgrade, and fixed after downgrade.

just get the extension of Python(ms-python.python) downgrade to 2019.3.6558
the problem disappeared.

same issue here.
and how to downgrade to 1.32.3?

just download the old version from here  and install it.

Yeah, downgrade Python extension to ver.2019.3.6558 sovled this. And I disabled the extension auto upgrading for now.
It's not vscode's wrong, good!

Yeah, downgrade Python extension to ver.2019.3.6558 sovled this. And I disabled the extension auto upgrading for now.
It's not vscode's wrong, good!

thank you，this is  『Python extension's bug 』

Microsoft/vscode-python#5440, Microsoft/vscode-python#5439

authors: EncoderPtd SwingWillwow Tyriar archtaurus enify lvtao netsesame2 xlla yanhuacuo


text:
Enable regex's ^, $ and ^$ to be matched in file dialog

Fixes #278

Hi @Tyriar, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

Find and replace /^/

Find and replace /^/

Find and replace /^/

@Tyriar, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

Looks awesome.

@Tyriar This is great! Thank you so much! :heart:

Guys i Want the oposite of that if i want to find   this pattern  }{     nad i want to make line break  like
I have this
{"index":{"_id":0}},{"index":{"_id":0}}
And i want this
{"index":{"_id":0}}
{"index":{"_id":0}}
is ant wat to filter for     },{   And add line break in midle
}
{

@atlabiz

search for },{
replace with },\n{
enable regex to have the \n in the replace field mapped to a newline and not to the literals \ and n.

authors: Tyriar alexandrudima atlabiz joaomoreno msftclas


text:
Adding the git.syncRebase setting

This fixes https://github.com/Microsoft/vscode/issues/50394
cc: @joaomoreno

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: wistcc sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Renamed setting to git.rebaseWhenSync.
Thanks! :beers:

authors: joaomoreno msftclas wistcc


text:
max_old_space_size flag out of range for 32-bit builds.

yarn run watch step fails for some 32-bit builds with max_old_space_size flag above 4095.
max_old_space_size recommended as npm routinely runs out of memory during build process.

That's pretty funny actually.

authors: joaomoreno subylan


text:
Fix a bug in indenting multiline comments with tabs (issue #348)

Fixed the issue described in #348 in which the lines after the first in a block comment are stripped of leading spaces and are aligned incorrectly

Hi @takumif, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

@bgourlie I agree that applying this regardless of the language in use isn't desirable.
I'm thinking whether it'd be better to change the indentation behavior entirely - right now, (un)indenting causes lines to be aligned at multiples of tabs and extra whitespaces are removed. On the other hand editors like Sublime Text retain the relative positioning by simply inserting tabs in front of lines, regardless of the content. I feel that'd make more sense, and it wouldn't cause problems like #348.

The initial implementation of indenting/unindenting did exactly what @takumif describes. It would insert a leading \t or leading n spaces and it would remove a leading \t or leading n spaces. The code was also much simpler :smile:
The feedback we got then was also not great, as sometimes you'd end up with mixed indent whitespace on the same line. Some examples:

pasting some code that is indented with spaces when your file is indented with tabs. The only way to "fix" the indentation was to either unindent all the way and indent blocks manually or to play with the find/replace. Now I just indent once and unindent once. Maybe in the future we can add an option to always do this on paste -- some sort of "fixIndentOnPaste".
a line that is "misaligned" by one space by accident (indentation 5 chars) would drive me crazy, I had to go to it and explicitly remove the extra space. Now I just indent once and unindent once over a large block of code.

When I think about it, my personal intent when I indent/undindent is for the code to "go to the right place". When using spaces at 4 chars for example, the "right place" for code is never at 5. However, as #348 shows, the "right place" for JSDoc style comments is sometimes at 5 chars.
I haven't read in detail the code, I would prefer an approach where indenting/unindenting tries its best to maintain whitespace diffs between lines in block comments.

Fixed #348 with 53186e97a62d059d8bc6bcffd88896ea7a531571 that leaves the ShiftCommand language agnostic.

authors: alexandrudima msftclas takumif


text:
Unable to pick a specific project to deploy

Regarding Azure App Service Deploy...
In many of my projects, there are several web projects (think admin, api, frontend).
I don't see a way to pick which project, I want to deploy.
Do I need to create a solution/build config per web project I want to deploy, or am I missing something?

You need to publish each web app as its own package if you need to deploy them independently.  MSBuild against the solution does not do that so you will need to have a build command for the solution and then one per project that passes the packaging properties.

That makes sense - just like when I publish directly to Azure Web Apps from inside Visual Studio.
However, I don't know how to "have one per project, that passes the packaging properties".
This is outside the scope of an issue here, but any chance you could push me in the right direction? What should I google to learn more about how to do that? Are we talking parameters to MSBuild or something like that?

@sixfootfour - you can have multiple publish artifact steps for one each project. In your deploy step you can pick the artifact you wish to deploy

@sixfootfour I'm going to close this as I think it's been answered, it's pretty old, and it's a bit out of scope for this repo. I recommend going to our Developer Community site for future questions like this.

authors: RoopeshNair chrisrpatterson moswald sixfootfour

repo: Microsoft/vsts-tasks


text:
Detect if playing on Xbox One X

I apologize for asking a question that isn't directly related to the Xbox Live Unity Plugin, but does anyone know a reliable (or official) way to detect if someone is playing on an Xbox One X?  I want to increase the framerate and/or other changes for One X users without making them toggle an option manually.

“This is an Xbox-Live issue and we will be moving this to the MSDN forum. To following the topic please follow the link:

authors: BionicPony XboxLiveForum

repo: Microsoft/xbox-live-unity-plugin


text:
Integration Test - Release - 2019/08/01 14:22:54

Auto create for integration test. AnotherAuthorUpdatedArticleFlow

@lamebrain : Thanks for your contribution! The author(s) have been notified to review your proposed change.

repo: MicrosoftDocs/CSIDev-Public


text:
Integration Test - Release - 2019/02/26 10:28:18

Auto create for integration test. IssueCommandFlow

@adunndevster : Thanks for your contribution! The author, @v-caxian, has been notified to review your proposed change.


text:
Resolve syncing conflicts from repo_sync_working_branch to master

Pull request opened by OPS to resolve syncing conflicts from repo_sync_working_branch to master.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_private_reposync2_1120/index.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_private_reposync2_1120/index.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.