Is this available in VS 2017?
Edit: and live unit testing! I was looking forward to that until I found out it was only available in the enterprise version. (And yes, here you have an edge on Java anyway I think)
I'm a dev on the C#/VB IDE experience (and i've written and maintain many of the Refactorings for those languages). C# and VB do support refactorings like 'Extract Method' and 'Move to Separate File'.
We've also exposed a full analysis and code manipulation API through 'Roslyn' so that community members can contribute even more refactorings through extensions.
One reason this may not have been clear is that previously we didn't strongly indicate to you that a refactoring was available. i.e. when you selected some code to extract a method, you would then have to use ctrl-dot to get the list of things you could do. Now, in VS2017 we pop up our 'Lightbulb' whenever refactorings are available. This helps make the refactorings much more discoverable and we've seen a very large uptick in people invoking them now that it's much clearer that they're available.
If you use VS2017 and find issues with our fixes/refactorings, or you would like us to add more, please file feedback at https://github.com/dotnet/roslyn Thanks!
Core support is coming; first beta just released. I believe that targeting a constantly changing tooling set was/is quite a challenge.
- Resharper supports "Extract class" and "Move to separate file".
Wishful thinking?
The download link takes you to a page ( https://www.visualstudio.com/vs/whatsnew/ ) where the main download button doesn't actually appear when the window is resized below a certain width, and there's no obvious indication of what's going on. This really confused and frustrated me.
https://www.visualstudio.com/thank-you-downloading-visual-st...
I attempted to create the offline installer [1] but the vs_community.exe just silently quit after some mintues, having downloaded only some certificates.
The custom download idea is easily planted with malware and all those bad things. Also, please consider upgrading from SHA-1.
> We understand that a lot of customers want an offline installer for Visual Studio 2017. Even though we don't offer an ISO image, it's easy to create your own.
1: https://docs.microsoft.com/en-us/visualstudio/install/create...
1. Visual Studio 2017 is a huge product, because we support so many types of development: from Android to UWP to C++ to Unity to Linux. If we were to still offer a 'full' install, it would come in at over 50GB. That's one huge ISO image!
2. We surveyed hundreds of people during the previews and RCs, and people told us that they had historically used an ISO for two reasons: (i) because they wanted to download once and create a network install for enterprise deployment; (ii) because they had a shaky internet connection and wanted to be sure they'd downloaded successfully before installing. A single monolithic ISO isn't the best solution for either of those scenarios - it's just the one that people are habituated to over all these years.
3. For the former (enterprise deployment), we have a full administrators' guide that provides detailed guidance on how to deploy the product: https://docs.microsoft.com/en-us/visualstudio/install/visual.... This includes PowerShell scripts, examples of using the installer to create and update a network cache, descriptions of how to deploy Visual Studio in a fully offline environment, and so on.
4. For the latter, we've worked really hard to improve the robustness of the installer. The componentization work we've done means that the smallest install is one-tenth the size of Visual Studio 2015, making it far more likely to succeed. And other typical installs are smaller too. We download VS in small packages that are more likely to succeed, and we use multiple ways (WebClient, BITS, WinInet) to download those files to minimize problems with AV and proxy software. If you want to download first then install, you can use the offline guide to cache just those pieces that you need, which we've just rewritten for RTW: https://docs.microsoft.com/en-us/visualstudio/install/create...
5. Because of the nature of our product (rapidly updating, lots of third-party components), an ISO is problematic. We don't have the rights to redistribute several large components (including Android), and others update on a rapid cadence that often includes critical security fixes, meaning an ISO image is incomplete, often outdated, and potentially insecure. Most customers assume that an ISO would support offline installation, but that's not true. And so we fear that offering an ISO will just creating more disappointment.
Lastly, we're listening to requests for an ISO and paying attention to the feedback we're getting; at the same time, we're hoping that this is the release where we can gently move forward to a new model that better supports delivery of developer tools at a fast, well-maintained cadence.
Hope this is useful context. And again, we're listening :)
Tim Sneath | Visual Studio Team
I feel an ISO including only standard packages from Microsoft itself would solve a lot of issues.
Layout is really crappy around blocked files or corporate firewalls. It feels untested in anything other than a completely open environment because some of the package downloads can fail silently with a fuzzy enterprise proxy. Creating layouts for patches seems dependant on what direction the wind is blowing, I think 2015 Update 3 took about 4 tries to download everything correctly and only way to verify was reading through the logs. Also that one needed a random Windows KB update on Windows 7 which was extra fun.
Better handling for layout around error handling and validation of downloads would be a boon. It would be great if there was a way of verifying an already created layout. Is there any way?
- During the installation, the installer can download the smaller needed updates. SQL Server installation does that.
- A company can download the 50GB file once only and put it on a network drive and the developers can install it from there. It saved bandwidth for the company instead of each dev downloading the same bits over and over.
- What about the machines that are not connected to the Internet? You mentioned there are ways around this.
I am fine with none ISO's but I wanted to post the counterarguments.
The command line I used:
vs_Enterprise.exe --layout z:\VS2017_RTM --lang en-US
last lines of the console: ...
Download of 'https://go.microsoft.com/fwlink/?linkid=823168' succeeded using engine 'WebClient'
Download of 'https://go.microsoft.com/fwlink/?linkid=833503' succeeded using engine 'WebClient'
Download of 'https://go.microsoft.com/fwlink/?linkid=833501' succeeded using engine 'WebClient'
Download of 'https://download.microsoft.com/download/B/5/5/B55373E5-8948-41DF-B1D5-F60896104294/WinSdkInstall.ps1' succeeded using engine 'WebClient'
Download of 'https://go.microsoft.com/fwlink/?linkid=838828' succeeded using engine 'WebClient'
stats of the target directory so far: 2,631 Files, 1,005 Folders total 14,444,652,261 bytes
I previously got the offline download to complete with version RC1 in November 2016 but RC2 in Janurary 2017 always hung in the same spot. I didn't pursue RC2 troubleshooting since RTM would be available a month later and I hoped whatever problem with RC2 would be resolved in RTM.Well, it still doesn't work. Please let the MS team know that there's something about the offline download ("--layout" option) that's fragile and prone to hang. I don't believe it's an issue with overloaded servers because when I tried multiple times with RC2, it always hung on the exact same file whether it was morning/night/ weekday/weekend. I suspect the current problem is similar.
I took a screenshot of the hung process for RC2 in January and it seems to hang right after downloading WinSdkInstall.ps1 which is similar to RTM behavior:
RC2 hung in January: http://imgur.com/a/uwfoj
RTM hung in March (today): http://imgur.com/a/QxqC3
It seems also to be broken, or your servers are choked :-(
If there is licensing complexity in making an ISO file, just make a ZIP file of the whole thing.
https://www.hanselman.com/blog/HowToMakeAnOfflineInstallerFo...
For anyone else that still wants to write straight C, there are other compilers and Microsoft has integrated clang's frontend with VC++ backend.
This has already been communicated in a few places.
Cloudfare's crash just proved once more why the world needs less C.
Then I added NodeJS tools and everything went into the C: drive.
If I select Cordova and other Android and mobile stuff it quickly complains that I do not have enough space - which suggests these tools and SDKs are hardcoded to C: as well. I have not investigated in more detail.
It's a minor nitpick, but I must say I was disappointed to see this issue unceremoniously closed: https://visualstudio.uservoice.com/forums/121579-visual-stud...
Tomorrow we have a full day of training for both a Web and App development track. Hope folks tune in and all the details are up on http://launch.visualstudio.com
Plus, IMO, the language is a lot more readable and enjoyable to author in than overly verbose XAML.
Visual Studio 5.0 was very responsive. Visual Studio 2015 is not as responsive. Nowadays it seemes a bit bloated, even after disabling unused plugins and features.
Switched to CLion and Rider, which are not known for their speed, but feel more responsible than VS to me. That and a more affordable price and cross-platform support.
(VS "15" is Visual Studio 2017)
We also have Visual Studio Code for those who want a lighter code editor, see: http://code.visualstudio.com
[1] https://github.com/louthy/language-ext/
[2] https://github.com/louthy/language-ext/blob/master/LanguageE...
[3] https://github.com/louthy/language-ext/blob/master/LanguageE...
Is it much more self-contained now? perhaps via nuget?
Could also have to do with the filesystem in newer versions of Windows (file operations seem slower in modern versions), the shell, background services and other characteristics of the OS.
This looks very feature competitive with the "AWS Mobile Hub", even going beyond it with its CI app build integration with GitHub and device simulators!
Also, although they announced Amazon Pinpoint in December, there is still no support for it in their "beta" React Native Mobile SDK [0] (Which has had no commits in 5 months)
[0] https://docs.microsoft.com/en-us/mobile-center/sdk/getting-s...
https://channel9.msdn.com/Events/Visual-Studio/Visual-Studio...
(its by the product team)
That seems like a no-brainer if you are supporting React Native based apps.
Also, I didn't see any support for platform native Notification APIs for React Native. The current notification service is for pure-JS / Cordova[1]
I've had to resort to dropping MS domains at our exchange edge to stop receiving them.
Their Azure sales team are even worse - I've actually had to shout (repeatedly) at them to stop them from calling me, all because I wanted to try Azure AD as a test. They're on my permanent blacklist now, I won't even consider Azure because of the constant harassment over email and phone.
"We're a consultancy selling services for these tools/products."
or
"We're a competitor, and I registered for your free trial for competitive research."
In my case, these are true answers, but I never get more than one sales call from anyone.
I can't help you on the email front, but it's easy to set up filters for those.
I am getting an error with Dim p As (x As Integer, y As Integer) saying that I am missing a reference to 'System.Runtime.CompilerServices.TupleElementNamesAttribute' (but if tuples are part of the language why do I need an external reference? and this assembly doesn't seem to exist anyway). In fact right now a simple empty command line program containing nothing more than the below hangs the VS IDE completely...
Module Module1
Sub Main()
Dim p As (x As Integer, y As Integer)
End Sub
End ModuleThe only thing we ever really adopted in C# that needed a new runtime version was Generics.
In order to compile on a build server do I need an updated toolchain?
<Compile Include="**\*.cs" />
looking forward saying goodbye to the no.1 source of merge conflicts for us!Details: https://blog.xamarin.com/better-apps-visual-studio-2017/
part of the new project system that grew out of the ill-fated project.json is to make this a first-class experience, but again that's focusing on the .csproj, I have no idea if it applies to C++.
<ItemGroup>
<Content Include="**\*.h" />
<Content Include="**\*.cpp" />
</ItemGroup>
Edit: see response.I'm Cyrus, a developer on the C#/VB IDE team.
One of the areas we invested a lot in (and will continue working on) is moving a lot of our analysis and processing work out-of-process. It turns out this is a much effective way to get improved performance while taking advantage of the available RAM in the system.
There are several reasons why this is, and why it's a better solution for performance than just moving to 64bits. For one, moving to 64bits substantially increases the memory requirements to the system. For the C#/VB compiler/IDEs, it can easily double the amount of ram necessary, which can be a substantial burden on many systems. For another, when you are in a single process, you massively increase the pressure on the GC, which can lead to exacerbated GC-pauses (which are one of the single worst contributors to the IDE feeling slow or sluggish).
By moving out of proc, we can actually use less ram, have far less chance of hitting 32bit limits, and greatly improve perceived and actual latency of operations (as GCs can happen in one process without affecting the other).
We, and other teams have been using this approach with great success, and we expect to continue moving more in this direction with future updates and releases. For example, I'm doing work right now to get our indices for 'Navigate To', 'Find all References' and 'Add using' to be computed and queried outside of the main VS process. The results have been hugely successful, with the features actually running better than before, VS being even more responsive, and no excess memory usage (like we would get with 64bit).
There has been significant investigations of 64bit, and the actual empirical results of those investigations have driven our decisions. Thanks!
I'm a dev on the "IDE team" :)
We've actually done a huge amount of work investigating and addressing perf issues and working to create an architecture that can scale well. 64bits is not a panacea. And if we had simply moved to that, most people would find that their IDE was using much more ram AND behaving more sluggishly.
We decided to invest our energies in work that would actually benefit the vast majority of customers. This led to efforts that we were able to demonstrably measure as producing better experiences for people. If there's a point that 64bit will actually produce better results for people, we'll gladly move to it. Thanks!