Comments (13)
Can you confirm what is your version of Visual Studio, and if you're using other extensions?
from vs-customize-window-title.
If the issue is consistent, it'd be good if you can temporarily try removing [tfsBranchName] from the pattern to see if this is related to this tag (which does take some time to resolve, though normally it should be asynchronous).
from vs-customize-window-title.
Microsoft Visual Studio Professional 2017
Version 15.9.11
VisualStudio.15.Release/15.9.11+28307.586
Microsoft .NET Framework
Version 4.7.03190
Extension use is relatively minor, one internal one that has a few helpful shortcuts, ReSharper, and a few of the Power Tools.
I'll try removing the branch tag and see how it goes.
from vs-customize-window-title.
from vs-customize-window-title.
Hum, it is very much possible that [tfsBranchName] is causing the slowness, as it is the only tag that needs to run on the UI thread for the resolution:
Globals.InvokeOnUIThread(() => name = TfsHelper.GetBranchNameFromLocalFile(Path.GetDirectoryName(sn)));
I need to check if there is a way to run it outside the UI thread, but I remember I added this invoke because it was otherwise throwing exceptions.
from vs-customize-window-title.
from vs-customize-window-title.
Thanks for the updates. Is resolving the branch name something that needs to ping the TFS server, or where could the slowness happen?
from vs-customize-window-title.
Yes, apparently with TFS it needs to ping the server, which is slow. But this alone is not a problem. The problem is if we have to run this on the UI thread.
from vs-customize-window-title.
Do you think I could cache the result of the branch name for a particular solution file?
from vs-customize-window-title.
Is it guaranteed to not change (my instinct tells me that it can change if the branch is switched while the solution is still open in Visual Studio)?
from vs-customize-window-title.
Personally, I don't think I would ever need my VS title to adapt to a new branch name after opening a solution. Maybe checking the branch name could depend on other variables that trigger it?
from vs-customize-window-title.
I prefer to be safe and always recheck if it can change (otherwise it can cause bad surprises for users). Since the branch name change could be triggered outside of VS, I'm afraid there is no event we can hook to to refresh only when strictly needed. But anyway it shouldn't be a problem if we can run this asynchronously.
Can you try the following release 4.3.1, where I am running the offending line on the threadpool thread, and let me know if you see any error in the debug or notice any slowness, or crash?
CustomizeVSWindowTitle (4.3.1).vsix.zip
Just extract the vsix file (GitHub doesn't allow to upload vsix files) and install it, it should overwrite the existing version (and keep the link with the auto update if I push a new version on the gallery).
from vs-customize-window-title.
Got it running now and it seems to work just fine. :)
Thanks!
from vs-customize-window-title.
Related Issues (20)
- Get BranchName out of svnDirectoryName HOT 7
- Add path arguments for git branch name HOT 1
- Support title in compact menu HOT 2
- Issue with [svnDirectoryName] not working HOT 10
- Add [solutionFilterName] in addition to [solutionName] HOT 1
- Customizable timer HOT 2
- Support for VS 2022 HOT 21
- [vsMajorVersionYear] is "17" in Visual Studio 2022 HOT 1
- Minimizing/restoring VS 2022 window via task bar not working HOT 4
- Contributing/Setup HOT 1
- Feature request - Allow to remove prefixes separated with dot character HOT 2
- Added new DebuggedProcessesExesResolver
- Adding "Substring" functionality HOT 1
- [gitBranchName] does not work for CMake project opened as folder
- Customizable Font Family HOT 1
- Truncation ability
- Feature Request: use scc plugin if one is enabled HOT 2
- Feature request: Support project structures which have separate bin / src directories
- Feature Request: Add arm64 support
- Using ' - [ideName]' does not append the IDE Name HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vs-customize-window-title.