A Visual Studio extension containing a collection of tools to help contributing code to the Chromium project.

Overview

VsChromium

VsChromium is a Visual Studio Extension containing a collection of tools useful for editing, navigating and debugging code.

VsChromium was originally developed to help when contributing code to the Chromium project, but has evolved over time to become a more general purpose extension that can be useful for any project.

Amongst other things, VsChromium offers full text search engine, a fast and scalable alternative to the built-in "Find in Files" feature that can provide search results in less than 0.1 seconds for 100,000+ files.

See the Feature summary and Getting started sections for more information.

Documentation

Installation instructions

Issues
  • VsChromium search stops working after native find-in-files is performed in VS2019 16.5.2

    VsChromium search stops working after native find-in-files is performed in VS2019 16.5.2

    Another issue with the same project setup as #60 (VsChromium-0.9.31, UE4 codebase with custom project config). Code search works until native visual studio find-in-files operation is done via ctrl+shift+f. All functionality stops working after that. Code search does not seem to perform any operations and opening VsChromium Indexing Server Information window gets stuck on "Please Wait" message.

    Please let me know if there are any additional diagnostics / logs that I could provide to help you reproduce and investigate the issue.

    opened by kayru 22
  • VsChromium causes build breaks with clang-cl - updated filters needed

    VsChromium causes build breaks with clang-cl - updated filters needed

    From a coworker's report:

    If you build Chromium on Windows and run Visual Studio with VS-Chromium extension you may start seeing some seemingly random 'permission denied' errors during the build now that clang-cl is the default compiler.

    This was investigated with PROCMON and it appears that the VS Chromium extension scans the source tree during the build and ends up reading temporary obj files created by clang.

    Here are a few examples of files that can cause problems: dc_layer_overlay.obj-3b0874b9, V8ConstrainDoubleRange.obj-606e8091, typed_arrays_cc.pch-232411ff.

    Because VS-Chromium doesn't recognize the file extensions it doesn't realize that these are files that should be excluded from scanning so it scans them, thus briefly holding a lock on them, thus causing build failures.

    The workaround is to modify vs-chromium-project.txt to exclude .obj and .pch instead of *.obj and *.pch. This is easy enough for those who already have a vs-chromium-project.txt file, but tricky for others since creating such a file overrides the default filters and therefore can cause new problems. A workable vs-chromium-project.txt file with these modifications is attached - drop that in src\chromium\src to reconfigure VS-Chromium.

    Building in these new filters would be very helpful.

    vs-chromium-project.txt

    opened by randomascii 12
  • File search should allow (linenum): suffix

    File search should allow (linenum): suffix

    Visual studio error/warnings contain the line number in parentheses at the end of the file path. This allows double-clicking to go to the file/line number. However if the error/warning is from a different machine or is partial (see https://code.google.com/p/chromium/issues/detail?id=440500#c189 and #c185 for examples) then navigating to the correct place in the code requires copy/paste of path into VsChromium, F8 to go there, then back to the source text to copy the line number, then back to VS, Ctrl+G, paste, enter to go to the line number.

    If VsChromium understood the (linenum) syntax then it could ignore it during searches and go to that line number on F8/double-click.

    It's a little bit inelegant, but the value is great enough to make it worthwhile overlooking this.

    The colon that often follows the (linenum) should also be ignored if it is present.

    opened by randomascii 7
  • Add support for excluding filenames for searches

    Add support for excluding filenames for searches

    There is already support for multiple file patterns in Code Search, e.g:

    service_directory.cc;service_directory_client.cc
    

    It would be nice to have the ability to allow excluding patterns, e.g.

    service*.cc;-*test.cc
    

    This would mean: include all files named service*.cc, except for the ones ending with test.cc

    This also begs the question of the need for an escape character for "-"

    opened by rpaquay 5
  • VsChromium needs updating for VS 2019

    VsChromium needs updating for VS 2019

    VsChromium works with VS 2019 Preview - for now. However it will stop working in the future. Details can be found here:

    https://blogs.msdn.microsoft.com/visualstudio/2018/05/16/improving-the-responsiveness-of-critical-scenarios-by-updating-auto-load-behavior-for-extensions/

    I followed the instructions and found this entry in the activity log:

    618 Warning SyncAutoLoadedExtensions Extension 'VsChromium' uses the 'synchronous auto-load' feature of Visual Studio. This feature will no longer be supported in a future Visual Studio 2019 update, at which point this extension will not work. Please contact the extension vendor to get an update. (UI Context: {f1536ef8-92ec-443c-9ed7-fdadf150da82} Package Guid: {a10cf7af-5f0a-4502-b44b-51ff1b7c8a87})
    opened by randomascii 5
  • Support Ctrl+X for cut

    Support Ctrl+X for cut

    I sometimes move a search term from the "Search Code" field to the "File Paths" field and I automatically try to do this with Ctrl+X/tab/Ctrl+V. But this doesn't work. I eventually remember that I have to do Ctrl+C/Del/tab/Ctrl+V. It would be nice to support Ctrl+X as well.

    Not a big deal, just a nice-to-have.

    opened by randomascii 5
  • VsChromium should visually indicate when it hits the maximum # of results

    VsChromium should visually indicate when it hits the maximum # of results

    I just tried searching for "v8" (including the quotes) in one of my repos using VsChromium. The results vary from time to time. If I repeatedly paste in the string then the results keep changing.

    It looks like VsChromium stops after the first 10,000 results, and the multi-threaded nature of the search means that the first 10,000 results are different every time, but there is not a great indication that the search was aborted.

    I've hit variations on this issue a couple of times. It's not a bug, but some sort of indication that the results are partial would make it more obvious that the search should be constrained more heavily, or Tools-> Options should be used to increase the maximum number of results.

    opened by randomascii 4
  • Release with .NET 4.5.2?

    Release with .NET 4.5.2?

    I have .NET 4.5.2 installed, yet vs-chromium won't install because I do not have 4.5 installed. The solution configuration targets .NET 4.5, not 4.5.2 - any reason why?

    (sorry! I'm not a .NET developer, so I don't know anything about .NET releases)

    opened by ariccio 4
  • Fix dependencies of VsChromium project

    Fix dependencies of VsChromium project

    VsChromium, which includes the .vsix packaging step, should depend on all the other targets, except for the unittests.

    This fixes the case where you open the project and build just "VsChromium," which was previously broken

    opened by nick-chromium 4
  • Ignore error id 3 when indexing files.

    Ignore error id 3 when indexing files.

    This fixes issue https://github.com/chromium/vs-chromium/issues/5 which occurs in the presence of invalid NTFS junctions, apparently left behind from a submodules-based chromium checkout.

    opened by nick-chromium 4
  • Set of fixes to get the code building in VS2019.

    Set of fixes to get the code building in VS2019.

    Switched to .net Framework 4.5.2, since 4.5 Developer pack is no longer available from https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral

    Added in additional dependencies as nuget packages.

    opened by sushanthr 3
  • Search Code doesn't auto-focus when vs-chromium is docked

    Search Code doesn't auto-focus when vs-chromium is docked

    Whenever I dock vs-chromium in VS 2019 and then proceed to unpin that docked tab (so it hides when I focus my code) - and then I proceed to Ctrl + Shift + ; it doesn't auto-focus the search field. When I undock vs-chromium and try again (even if I close that undocked window) - it properly focuses the field (up until I dock it again).

    opened by 67protons 0
  • Paths outside project

    Paths outside project

    Is there a way to search in paths in a level upwards your vschromium file. eg:

    C:/repositories/external_lib C:/repositories/project/vs-chromium-project.txt

    So i can search in external_lib too?

    I tried unsucessfully: C:/repositories/external_lib and ../external_lib

    opened by alexgg-developer 0
  • Failed to load resource: net::ERR_CACHE_READ_FAILURE

    Failed to load resource: net::ERR_CACHE_READ_FAILURE

    Failed to load resource: net::ERR_CACHE_READ_FAILURE 这个问题已经存在很久了。(The problem has been around for a long time.) 我该在哪里反馈chorme的问题?(Where can I report chorme problems?)

    opened by YSZeng 0
  • "There was an issue starting the index server" message appears repeatedly.

    Hi,

    Vs-Chromium sometimes would refuse to start, stating "There was an issue starting the index server. You may need to restart Visual Studio. One or more errors occurred. Error starting debugger thread. Error creating process from file ".....long path to Extensions folder...\VsChromium.Host.exe": Access is denied".

    Restarting Visual Studio does not help. This message can appear for a second Visual Studio instance while the first is still working fine. Once the message appeared, there's no way to go back - you need to reboot (possibly relogin would also help, but I didn't try).

    VsChromium.errors is full of messages like

    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ] Error accepting connection from server: socket has been disposed.
    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ]  Exception Type: System.ObjectDisposedException
    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ]  Exception Message: Cannot access a disposed object.\r\nObject name: 'System.Net.Sockets.Socket'.
    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ]  +    at System.Net.Sockets.Socket.EndAccept(IAsyncResult asyncResult)
    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ]  +    at System.Net.Sockets.TcpListener.EndAcceptTcpClient(IAsyncResult asyncResult)
    [2021-08-16 22:03:55.8300][VsChromium][234412-3][Warn ]  +    at VsChromium.ServerProxy.ServerProcessProxy.ClientConnected(IAsyncResult result) in D:\src\projects\vs-chromium\src\VsChromium\ServerProxy\ServerProcessProxy.cs:line 200
    [2021-08-16 22:11:13.1240][VsChromium][234668-2][Warn ] Error accepting connection from server: socket has been disposed.
    [2021-08-16 22:11:13.1300][VsChromium][234668-2][Warn ]  Exception Type: System.ObjectDisposedException
    [2021-08-16 22:11:13.1300][VsChromium][234668-2][Warn ]  Exception Message: Cannot access a disposed object.\r\nObject name: 'System.Net.Sockets.Socket'.
    [2021-08-16 22:11:13.1300][VsChromium][234668-2][Warn ]  +    at System.Net.Sockets.Socket.EndAccept(IAsyncResult asyncResult)
    [2021-08-16 22:11:13.1300][VsChromium][234668-2][Warn ]  +    at System.Net.Sockets.TcpListener.EndAcceptTcpClient(IAsyncResult asyncResult)
    [2021-08-16 22:11:13.1300][VsChromium][234668-2][Warn ]  +    at VsChromium.ServerProxy.ServerProcessProxy.ClientConnected(IAsyncResult result) in D:\src\projects\vs-chromium\src\VsChromium\ServerProxy\ServerProcessProxy.cs:line 200
    
    

    As for the log itself it has pretty much the same information as the window:

    [2021-08-16 22:10:47.6239][VsChromium][248828-2][Info ] Opening TCP server socket for server process client connection.
    [2021-08-16 22:10:47.6239][VsChromium][248828-2][Info ] TCP server started on port 64376.
    [2021-08-16 22:10:47.6279][VsChromium][248828-5][Info ] Creating VsChromiumHost process.
    [2021-08-16 22:10:47.6279][VsChromium][248828-5][Info ]   Path=C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Host.exe
    [2021-08-16 22:10:47.6279][VsChromium][248828-5][Info ]   Server path=C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Server.exe
    [2021-08-16 22:10:47.6279][VsChromium][248828-5][Info ]   Arguments="C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Server.exe" "64376" 
    [2021-08-16 22:10:47.6279][VsChromium][248828-5][Info ] CreateProcess: C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Host.exe "C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Server.exe" "64376" 
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: Entry point.
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: command line is "C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Host.exe" "C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W\VsChromium.Server.exe" "64376" .
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: Creation flags.
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: Working directory: C:\USERS\USERNAME\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\16.0_884B1BFE\EXTENSIONS\HVV0I35D.B3W.
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: Setting DEBUG_PROCESS flag.
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: Calling Win32 CreateProcess.
    [2021-08-16 22:10:47.6279][VsChromium][248828-6][Info ] CreateProcessWithStartInfo: CreateProcess result: Success=False-LastError=5.
    
    
    opened by RCL 0
  • Enable support for Visual Studio 2022

    Enable support for Visual Studio 2022

    This approach follows the guidelines from https://github.com/microsoft/VSExtensibility/wiki.

    Notable changes:

    • Dropped support for Visual Studio 2015 *.
    • Now builds in Visual Studio 2019.
    • Upgraded to .NET Framework 4.7.2.
    • Upgraded to C++ toolset v142.
    • Moved all dependencies to PackageReference-style (maintaining the same version where possible).
    • Upgraded to newer style VSSDK (from NuGet packages).
    • Moved common files to a shared project and added "head" projects for pre-17 and 17-and-on versions of VSIX.
    • Added temporary code analysis suppression for some newly-enabled (with the SDK update) VSSDK and VSTHRD checkers.

    * Supporting Visual Studio 2015 and Visual Studio 2022 in one solution does not appear to be easy, so would incur higher maintenance cost. I propose that limiting the support to the three most recent major versions is acceptable.

    Minor changes:

    • EnumerableExtensions.ToHashSet is now superseded with the built-in support (.NET Framework 4.7.2 and newer).
    • Updated test mocks for Dialog with test-provided JoinableTaskContext.
    • Updated the test project to deploy the necessary binding redirects.

    All tests pass.

    Verified basic functionality (Search, Source Explorer) on:

    • Visual Studio 2017 (15.9.36)
    • Visual Studio 2019 (31409.95.d16.11)
    • Visual Studio 2022 (31409.368.d17.0)
    opened by LukaszMendakiewicz 22
Releases(v0.9.39)
  • v0.9.39(Nov 19, 2021)

  • v0.9.38(Nov 19, 2021)

  • v0.9.37(Jun 26, 2020)

  • v0.9.36(Jun 22, 2020)

    Bug fixes

    • #61 VsChromium search stops working after native find-in-files is performed in VS2019 16.5.2
    • #64 VsChromium sometimes keeps projects open in VS2019
    • #65 VsChromium never finishes opening a project (directory traversal)
    • #66 VsChromium sometimes fails to load index for invalid directories
    • #67 Solution Explorer sometimes throws exception loading children nodes
    • #68 Visual Studio hangs when using Resharper and VsChromium with a large project open
    • #69 VsChromium does not show banner when a new version is available

    Note: This is the same release as v0.9.35, with an additional fix for issue #69

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.36.vsix(2.76 MB)
  • v0.9.35(Jun 12, 2020)

    Bug fixes

    • #61 VsChromium search stops working after native find-in-files is performed in VS2019 16.5.2
    • #64 VsChromium sometimes keeps projects open in VS2019
    • #65 VsChromium never finishes opening a project (directory traversal)
    • #66 VsChromium sometimes fails to load index for invalid directories
    • #67 Solution Explorer sometimes throws exception loading children nodes
    • #68 Visual Studio hangs when using Resharper and VsChromium with a large project open

    Note: This is the same release as v0.9.34, with an additional fix for issue #61

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.35.vsix(2.76 MB)
  • v0.9.34(Jun 9, 2020)

    Bug fixes

    • #61 VsChromium search stops working after native find-in-files is performed in VS2019 16.5.2
    • #64 VsChromium sometimes keeps projects open in VS2019
    • #65 VsChromium never finishes opening a project (directory traversal)
    • #66 VsChromium sometimes fails to load index for invalid directories
    • #67 Solution Explorer sometimes throws exception loading children nodes
    • #68 Visual Studio hangs when using Resharper and VsChromium with a large project open
    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.34.vsix(2.75 MB)
  • v0.9.33(Feb 20, 2020)

  • v0.9.32(Feb 12, 2020)

    This release addresses issues #55 and #56: Add support for file exclusion (e.g -*.txt) as well as exact file match (e.g. "BUILD") for searching files.

    • To exclude file names from a Code Search, use the - prefix character. As before, use ; to enter multiple file name patterns.

      • For example: *.txt;-*test* includes all files with the txt extension, except for the files that contain the test sub-string.
    • Double quotes can now be used to prevent implicitly surrounding simple searches with "*".

      • For example, "foo" results in matching files that are named exactly foo, and nothing else (i.e. foo.txt will not be included).
    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.32.vsix(2.75 MB)
  • v0.9.31(May 28, 2019)

    Add support for VS 2019, remove support for VS 2013.

    VS 2019 requires a new API for VsPackages (AsyncPackage). This API is only supported from VS 2015 and later. Starting with this release of VsChromium (v0.9.31), older version of VS (VS 2013 and earlier) are not supported anymore.

    This release addresses issues #49 and #52.

    This release has a minor regression: loading custom icons for known file extensions (e.g. .cs, .cpp, etc.) in the Code Search and Solution Explorer tool windows was based on an undocumented VS API that was removed starting VS 2015, so the icon shows as a generic "Text document" icon.

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.31.vsix(2.76 MB)
  • v0.9.30(Feb 15, 2018)

    v0.9.30 changes:

    Save as 0.9.29 with a couple of minor bug fixes

    v0.9.29 changes:

    • Access to server info from Code Search toolbar button:

    Server Info

    • Show detailed information about each project/directory:

    Project Details Project Details

    • Show configuration files for the selected project:

    Project Details

    • Access to project index details from Source Explorer content menu:

    Project Details

    Project Details

    • Access to index details of a directory from Source Explorer content menu:

    Project Details

    Project Details

    v0.9.27 changes:

    • Implement back off policy when disk activity is very high. Code Search goes in pause/yield mode for about 1 minute before re-scanning the file system. This is useful when a build add/deletes a lot of directories in a very short amount of time.

    • Decrease the file system watcher buffer size from 2MB to 16KB. This is because a 2MB buffer has a noticeable performance impact on the operating system when lots of files changes on a fast SSD. With the new back-off policy in place, we should still support fast build scenarios, but with near zero performance impact.

    • Add a manual pause/resume button in the Code Search tool window. This is useful if more fined grained control is needed.

    • The Index status area in the top-right corner of the Code Search toolwindow is now a clickable button that can be used to display detailed information about the status of the index server.

    • The Index status area now includes the server status

      • Idle means the server is working regularly
      • Busy means the server is busy synchronizing with the file system
      • Pause means the server has been manually paused
      • Yield means the server has backed-off due to heavy disk activity and will restart in the next minute or so.
    • Do not block the Visual Studio UI thread at startup when waiting for the Index Server to start. This is now completely asynchronous, whereas the wait could be a couple of seconds before.

    • Improve performance of the full file system rescan (about 3x faster on SSD drives)

    • Decrease managed heap memory usage. For a index of about 600,000 files and 200,000 directories, the managed heap usage was decreased from from 400MB to 140MB. The native heap usage remains the same (about 2.5GB).

    • Added persistent logging in %LOCALAPPDATA%\VsChromium. Up to 10 files of 2MB files each are use for logging.

      • VsChromium.log is used for information/warning/error level logging.
      • VsChromium.errors.log is used for warning/error level logging only.
    • Improve reliability of incremental index updates. Due to the asynchronous nature of the incremental updates, there was the possibility of ignoring file change events when updating the index. This should be fixed now.

    • Minor changes to the UI of the Code Search toolwindow to make colors work better with Dark and Blue VS themes.

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.30.vsix(2.73 MB)
  • v0.9.29(Feb 11, 2018)

    Same new features as 0.9.27 and 0.9.28, with support for displaying detailed information about index.

    v0.9.29 changes:

    • Access to server info from Code Search toolbar button:

    Server Info

    • Show detailed information about each project/directory:

    Project Details Project Details

    • Show configuration files for the selected project:

    Project Details

    • Access to project index details from Source Explorer content menu:

    Project Details

    Project Details

    • Access to index details of a directory from Source Explorer content menu:

    Project Details

    Project Details

    v0.9.27 changes:

    • Implement back off policy when disk activity is very high. Code Search goes in pause/yield mode for about 1 minute before re-scanning the file system. This is useful when a build add/deletes a lot of directories in a very short amount of time.

    • Decrease the file system watcher buffer size from 2MB to 16KB. This is because a 2MB buffer has a noticeable performance impact on the operating system when lots of files changes on a fast SSD. With the new back-off policy in place, we should still support fast build scenarios, but with near zero performance impact.

    • Add a manual pause/resume button in the Code Search tool window. This is useful if more fined grained control is needed.

    • The Index status area in the top-right corner of the Code Search toolwindow is now a clickable button that can be used to display detailed information about the status of the index server.

    • The Index status area now includes the server status

      • Idle means the server is working regularly
      • Busy means the server is busy synchronizing with the file system
      • Pause means the server has been manually paused
      • Yield means the server has backed-off due to heavy disk activity and will restart in the next minute or so.
    • Do not block the Visual Studio UI thread at startup when waiting for the Index Server to start. This is now completely asynchronous, whereas the wait could be a couple of seconds before.

    • Improve performance of the full file system rescan (about 3x faster on SSD drives)

    • Decrease managed heap memory usage. For a index of about 600,000 files and 200,000 directories, the managed heap usage was decreased from from 400MB to 140MB. The native heap usage remains the same (about 2.5GB).

    • Added persistent logging in %LOCALAPPDATA%\VsChromium. Up to 10 files of 2MB files each are use for logging.

      • VsChromium.log is used for information/warning/error level logging.
      • VsChromium.errors.log is used for warning/error level logging only.
    • Improve reliability of incremental index updates. Due to the asynchronous nature of the incremental updates, there was the possibility of ignoring file change events when updating the index. This should be fixed now.

    • Minor changes to the UI of the Code Search toolwindow to make colors work better with Dark and Blue VS themes.

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.29.vsix(2.73 MB)
  • v0.9.28(Feb 4, 2018)

    Same new features as 0.9.27, with a bug fix for files change notifications ignored when index is a Chromium repository.

    v0.9.27 changes:

    • Implement back off policy when disk activity is very high. Code Search goes in pause/yield mode for about 1 minute before re-scanning the file system. This is useful when a build add/deletes a lot of directories in a very short amount of time.

    • Decrease the file system watcher buffer size from 2MB to 16KB. This is because a 2MB buffer has a noticeable performance impact on the operating system when lots of files changes on a fast SSD. With the new back-off policy in place, we should still support fast build scenarios, but with near zero performance impact.

    • Add a manual pause/resume button in the Code Search tool window. This is useful if more fined grained control is needed.

    • The Index status area in the top-right corner of the Code Search toolwindow is now a clickable button that can be used to display detailed information about the status of the index server.

    • The Index status area now includes the server status

      • Idle means the server is working regularly
      • Busy means the server is busy synchronizing with the file system
      • Pause means the server has been manually paused
      • Yield means the server has backed-off due to heavy disk activity and will restart in the next minute or so.
    • Do not block the Visual Studio UI thread at startup when waiting for the Index Server to start. This is now completely asynchronous, whereas the wait could be a couple of seconds before.

    • Improve performance of the full file system rescan (about 3x faster on SSD drives)

    • Decrease managed heap memory usage. For a index of about 600,000 files and 200,000 directories, the managed heap usage was decreased from from 400MB to 140MB. The native heap usage remains the same (about 2.5GB).

    • Added persistent logging in %LOCALAPPDATA%\VsChromium. Up to 10 files of 2MB files each are use for logging.

      • VsChromium.log is used for information/warning/error level logging.
      • VsChromium.errors.log is used for warning/error level logging only.
    • Improve reliability of incremental index updates. Due to the asynchronous nature of the incremental updates, there was the possibility of ignoring file change events when updating the index. This should be fixed now.

    • Minor changes to the UI of the Code Search toolwindow to make colors work better with Dark and Blue VS themes.

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.28.vsix(2.69 MB)
  • v0.9.27(Jan 30, 2018)

    • Implement back off policy when disk activity is very high. Code Search goes in pause/yield mode for about 1 minute before re-scanning the file system. This is useful when a build add/deletes a lot of directories in a very short amount of time.

    • Decrease the file system watcher buffer size from 2MB to 16KB. This is because a 2MB buffer has a noticeable performance impact on the operating system when lots of files changes on a fast SSD. With the new back-off policy in place, we should still support fast build scenarios, but with near zero performance impact.

    • Add a manual pause/resume button in the Code Search tool window. This is useful if more fined grained control is needed.

    • The Index status area in the top-right corner of the Code Search toolwindow is now a clickable button that can be used to display detailed information about the status of the index server.

    • The Index status area now includes the server status

      • Idle means the server is working regularly
      • Busy means the server is busy synchronizing with the file system
      • Pause means the server has been manually paused
      • Yield means the server has backed-off due to heavy disk activity and will restart in the next minute or so.
    • Do not block the Visual Studio UI thread at startup when waiting for the Index Server to start. This is now completely asynchronous, whereas the wait could be a couple of seconds before.

    • Improve performance of the full file system rescan (about 3x faster on SSD drives)

    • Decrease managed heap memory usage. For a index of about 600,000 files and 200,000 directories, the managed heap usage was decreased from from 400MB to 140MB. The native heap usage remains the same (about 2.5GB).

    • Added persistent logging in %LOCALAPPDATA%\VsChromium. Up to 10 files of 2MB files each are use for logging.

      • VsChromium.log is used for information/warning/error level logging.
      • VsChromium.errors.log is used for warning/error level logging only.
    • Improve reliability of incremental index updates. Due to the asynchronous nature of the incremental updates, there was the possibility of ignoring file change events when updating the index. This should be fixed now.

    • Minor changes to the UI of the Code Search toolwindow to make colors work better with Dark and Blue VS themes.

    Source code(tar.gz)
    Source code(zip)
    VsChromium-0.9.27.vsix(2.69 MB)
  • v0.9.26(Dec 26, 2017)

  • v0.9.25(Dec 22, 2017)

    Update: Removed binary due to bug with file change notification ignored

    Bug fixes: #41: VsChromium sometimes performs full file system rescans #40: VsChromium calls GetFileAttributesEx twice for files that are ignored

    Source code(tar.gz)
    Source code(zip)
  • v0.9.24(Aug 8, 2017)

  • v0.9.23(Aug 4, 2017)

    Add support for VS 2017 (no more warning at installation). VsChromium is now compatible with VS 2013, 2015 and 2017.

    First version of VsChromium built with VS 2015 (instead of VS 2013).

    Bug fixes:

    • Fix bug #33: Adding support for VS 2017 (this required converting the VsChromium solution to be built with VS 2015)
    • Fix bug #34: Refresh defaults for Chromium enlistments as Aug 2017.
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(1.90 MB)
  • v0.9.22(Aug 2, 2017)

  • v0.9.21(May 25, 2017)

  • v0.9.20(Nov 18, 2016)

    • Fix issue #25: In Code Search result window, show number of results that would have been returned if Match case and Match whole word options had been disabled
    • Fix issue #27: Improve navigation of search results within variable width encoding (utf-8, gbk) files
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.32 MB)
  • v0.9.19(Nov 16, 2016)

  • v0.9.18(Nov 19, 2015)

  • v0.9.17(Oct 6, 2015)

  • v0.9.16(Jun 25, 2015)

  • v0.9.15(Jun 23, 2015)

    • Installation: Add support for VS 2015 RC and .NET 4.5.2
    • Tools | Options: add ability to change Fonts used by the Code Search tool window. Fixes issue #14.
    • Code Search: Automatically refresh the last search results after forcing a index refresh via the toolbar button.
    • Documentation: Various minor improvements and typos fixes
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.29 MB)
  • v0.9.14(Mar 9, 2015)

    Minor fix over 0.9.13, same release notes as 0.9.12:

    Lots of UI changes and perf. improvements

    • "Official" support for indexing any directory in addition to Chromium enlistments
      • Simply create a vs-chromium-project.txt file at the root of the directory to index. See [https://github.com/chromium/vs-chromium/blob/master/vs-chromium-project.txt] for an example.
      • In addition, VS Chromium now tracks the solution file open in Visual Studio, so storing the vs-chromium-project.txt file next to the .sln file is usually enough to automatically enable indexing when opening a solution.
    • New Code Search tool window:
      • The tool window is used for performing text and file searches, and displaying/navigating results.
      • The tree view with files and directories has been moved to the standard VS "Solution Explorer" window, showing as "virtual" project nodes. This enables better integration with Visual Studio.
      • The former "Source Explorer" has been removed, as it is superseded by the changes above.
    • Tools|Options pages are now available for fine grained control over which VS Chroimum feature to enable or disable.
    • Quick Text Search productivity feature: Ctrl-Shift-; selects the current word in the current editor file, performs a text search on the selection and sets focus to Code Search window
    • Quick File Search productivity feature: Ctrl-Shift-' does the same for file paths.
    • Support Match whole word option
    • Support for "scoped" text search by specifying a path pattern in "File Paths" (e..g "/src" to restrict the search to files under the "src" directory)
    • Refresh search results when toolbar buttons are clicked
    • Updating the index is much faster when file changes (add/delete) occur on disk
    • Search results file location stay up to date with editor changes, i.e. when search results are displayed for a given file and changes are made to that file in the VS editor, double clicking on the search results will navigate to the updated location of the match
    • Auto-detect binary files and skip loading them
    • and more....
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.29 MB)
  • v0.9.13(Mar 6, 2015)

    Minor fixes over 0.9.12, same release notes as 0.9.12:

    Lots of UI changes and perf. improvements

    • "Official" support for indexing any directory in addition to Chromium enlistments
      • Simply create a vs-chromium-project.txt file at the root of the directory to index. See [https://github.com/chromium/vs-chromium/blob/master/vs-chromium-project.txt] for an example.
      • In addition, VS Chromium now tracks the solution file open in Visual Studio, so storing the vs-chromium-project.txt file next to the .sln file is usually enough to automatically enable indexing when opening a solution.
    • New Code Search tool window:
      • The tool window is used for performing text and file searches, and displaying/navigating results.
      • The tree view with files and directories has been moved to the standard VS "Solution Explorer" window, showing as "virtual" project nodes. This enables better integration with Visual Studio.
      • The former "Source Explorer" has been removed, as it is superseded by the changes above.
    • Tools|Options pages are now available for fine grained control over which VS Chroimum feature to enable or disable.
    • Quick Text Search productivity feature: Ctrl-Shift-; selects the current word in the current editor file, performs a text search on the selection and sets focus to Code Search window
    • Quick File Search productivity feature: Ctrl-Shift-' does the same for file paths.
    • Support Match whole word option
    • Support for "scoped" text search by specifying a path pattern in "File Paths" (e..g "/src" to restrict the search to files under the "src" directory)
    • Refresh search results when toolbar buttons are clicked
    • Updating the index is much faster when file changes (add/delete) occur on disk
    • Search results file location stay up to date with editor changes, i.e. when search results are displayed for a given file and changes are made to that file in the VS editor, double clicking on the search results will navigate to the updated location of the match
    • Auto-detect binary files and skip loading them
    • and more....
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.20 MB)
  • v0.9.12(Mar 2, 2015)

    Lots of UI changes and perf. improvements

    • "Official" support for indexing any directory in addition to Chromium enlistments
      • Simply create a vs-chromium-project.txt file at the root of the directory to index. See [https://github.com/chromium/vs-chromium/blob/master/vs-chromium-project.txt] for an example.
      • In addition, VS Chromium now tracks the solution file open in Visual Studio, so storing the vs-chromium-project.txt file next to the .sln file is usually enough to automatically enable indexing when opening a solution.
    • New Code Search tool window:
      • The tool window is used for performing text and file searches, and displaying/navigating results.
      • The tree view with files and directories has been moved to the standard VS "Solution Explorer" window, showing as "virtual" project nodes. This enables better integration with Visual Studio.
      • The former "Source Explorer" has been removed, as it is superseded by the changes above.
    • Tools|Options pages are now available for fine grained control over which VS Chroimum feature to enable or disable.
    • Quick Text Search productivity feature: Ctrl-Shift-; selects the current word in the current editor file, performs a text search on the selection and sets focus to Code Search window
    • Quick File Search productivity feature: Ctrl-Shift-' does the same for file paths.
    • Support Match whole word option
    • Support for "scoped" text search by specifying a path pattern in "File Paths" (e..g "/src" to restrict the search to files under the "src" directory)
    • Refresh search results when toolbar buttons are clicked
    • Updating the index is much faster when file changes (add/delete) occur on disk
    • Search results file location stay up to date with editor changes, i.e. when search results are displayed for a given file and changes are made to that file in the VS editor, double clicking on the search results will navigate to the updated location of the match
    • Auto-detect binary files and skip loading them
    • and more....
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.29 MB)
  • v0.9.11(Jan 22, 2015)

    • Finally Support regex searches for files names, folder names and text searches (find in files)
      • Performance seems to be around 3x-4x slower than plain text searches.
    • Fix long standing bug where text search results for files with UTF8 bom prefix would be 3 characters off.
    • Various minor UI tweaks, bug fixed and performance improvements.
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(2.28 MB)
  • v0.9.10(Jan 14, 2015)

    • Ensure F8/Shift-F8 are captured only when Source Explorer window is visible and there is an active search result active. This is so that it doesn't interface with F8/Shift-F8 handling from other tool window.
    • Improve file path comparison performance and correctness
    • Improve caching of file contents de-duplication
    Source code(tar.gz)
    Source code(zip)
    VsChromium.vsix(1.71 MB)
Owner
The Chromium Project
The Chromium Project
Visual Studio extension for assembly syntax highlighting and code completion in assembly files and the disassembly window

Asm-Dude Assembly syntax highlighting and code assistance for assembly source files and the disassembly window for Visual Studio 2015, 2017 and 2019.

Henk-Jan Lebbink 3.9k Jun 25, 2022
Visual Studio Extension that installs additional color themes

Using this Extension Download and install the extension Restart Visual Studio Navigate to Tools > Options > Environment > General and select your colo

Microsoft 326 Jun 13, 2022
A Visual Studio extension that provides enhanced support for editing High Level Shading Language (HLSL) files

HLSL Tools for Visual Studio This extension is for Visual Studio 2017 / 2019. Go here for the Visual Studio Code extension. HLSL Tools is a Visual Stu

Tim Jones 398 Jun 22, 2022
Lets be creative this hacktober fest. Get started with contributing to open source.

Be Creative this Hacktoberfest 2021 Lets be creative this hacktober fest. Get started with contributing to open source. ?? Web-Ideas ?? How Can I Cont

B L A C K F U R Y 10 Nov 20, 2021
Sharpmake is an open-source C#-based solution for generating project definition files, such as Visual Studio projects and solutions, GNU makefiles, Xcode projects, etc.

Sharpmake Introduction Sharpmake is a generator for Visual Studio projects and solutions. It is similar to CMake and Premake, but it is designed for s

Ubisoft 743 Jun 10, 2022
The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for Vulkan application developers to leverage Vulkan Profiles while developing a Vulkan application

Copyright © 2021-2022 LunarG, Inc. Vulkan Profiles Tools (BETA) The Vulkan Profiles Tools are a collection of tools delivered with the Vulkan SDK for

The Khronos Group 52 Jun 9, 2022
A dataset containing synchronized visual, inertial and GNSS raw measurements.

GVINS-Dataset Author/Maintainer: CAO Shaozu (shaozu.cao AT gmail.com), LU Xiuyuan (xluaj AT connect.ust.hk) This repository hosts dataset collected du

HKUST Aerial Robotics Group 100 Jun 18, 2022
Chromium Embedded Framework with OpenGL Core or SDL2

Chromium Embedded Framework's cefsimple Off-Screen Rendering I needed to use a modifed version of cefsimple using either SDL or OpenGL Core. I tried t

Quentin Quadrat 7 Jun 6, 2022
Bungie's Oni modified so it compiles with Microsoft Visual Studio 2019.

OniFoxed What's this? This is a modified variant of the recently leaked Oni source code so that it compiles under Microsoft Visual Studio 2019 with so

Mark Sowden 46 Jun 20, 2022
A D++ Discord Bot template for Visual Studio 2019 (x64 and x86)

D++ Windows Bot Template A D++ Discord Bot template for Visual Studio 2019 (x64 and x86, release and debug). The result of this tutorial. This templat

brainbox.cc 19 Jun 11, 2022
A Visual Studio template used to create Cobalt Strike BOFs

Introduction Cobalt Strike beacon object files (BOFs) is a feature that added to the beacon in order to allow rapid beacon extendibility in a more OPS

Securify 137 Jun 23, 2022
Visual Studio Test Adapter for Catch2

Test Adapter for Catch2 Within Visual Studio, the Test Explorer is a convenient way to run and debug unit tests. This test adapter adds support for th

null 88 Jun 6, 2022
Useful UE4 Visual Studio extensions.

UE4 Smarter Macro Indenting This extension was designed to fix the unnecessary and annoying "smart" indenting that Visual Studio likes to do around va

Chris Pawlukowsky 241 Jun 14, 2022
Half-Life Singleplayer SDK 2.3, updated to compile with Visual Studio 2019. Provided as-is with no further support. See the README for more information.

Half Life 1 SDK LICENSE Half Life 1 SDK Copyright© Valve Corp. THIS DOCUMENT DESCRIBES A CONTRACT BETWEEN YOU AND VALVE CORPORATION (“Valve”). PLEASE

Sam Vanheer 5 Apr 9, 2022
RRxIO - Robust Radar Visual/Thermal Inertial Odometry: Robust and accurate state estimation even in challenging visual conditions.

RRxIO - Robust Radar Visual/Thermal Inertial Odometry RRxIO offers robust and accurate state estimation even in challenging visual conditions. RRxIO c

Christopher Doer 53 Jun 17, 2022
Visual Leak Detector for Visual C++ 2008-2015

Visual Leak Detector Introduction Visual C++ provides built-in memory leak detection, but its capabilities are minimal at best. This memory leak detec

Arkady Shapkin 862 Jun 22, 2022
New linux driver and tools for RME HDSPe sound cards and extension modules

snd-hdspe New linux kernel ALSA driver for RME HDSPe MADI / AES / RayDAT / AIO and AIO Pro sound cards and extension modules. In addition to the funct

Philippe Bekaert 20 Jun 29, 2022
A repository containing our learnings and implementations for the project "Anchor: The Docker Clone" under IEEE-NITK

Anchor: The Docker Clone A repository containing our learnings and implementations for the project "Anchor: The Docker Clone" under IEEE-NITK Currentl

Rakshita Varadarajan 1 Feb 7, 2022
Repos containing simulation code for drafts seen in the IETF routing area

Simulation Repository Brief introduction This repository will over time aim to accumulate code to simulate the behavior of ideas and drafts as propose

Andrew Alston 1 Oct 16, 2021