1. 28 10月, 2016 1 次提交
  2. 26 10月, 2016 1 次提交
  3. 22 10月, 2016 2 次提交
    • J
      TLDR: artifacts are going to move around in Binaries\Debug and the directory... · b9ba3e9e
      Jared Parsons 提交于
      TLDR: artifacts are going to move around in Binaries\Debug and the directory is going to get a lot bigger.
      
      At a high level build projects can be classified into three categories based on how they write output:
      
      - incorrect: a given output path is written to more than once with different contents
      - less correct: a given output path is written to more than once but always with the same content
      - correct: a given output path is written to exactly once
      
      Today the roslyn build is decidedly “incorrect” as pretty much every file is written directly into Binaries\Debug. This means it ends up writing pretty much every Visual Studio SDK DLL twice: once for Dev14 and once for Dev15. For example at various points in the build Binaries\Debug\Microsoft.VisualStudio.Text.Data.dll may refer to Dev14 and at others it’s Dev15. If this seems like a scary proposition for a build that’s because it is indeed scary and it has real consequences. By now pretty much everyone on the team has hit the build race condition that is dragging down our PRs.
      
      The general fix here is to move build outputs into separate directories. Instead of building to $(Configuration) projects now build into say $(Configuration)\Exes\$(MSBuildProjectFileName). This will have a substantial increase in the size of Binaries. We will be looking into ways to reduce that. In the short term though build stability far outweighs the size increase.
      
      This change takes us most of the way to "correct". There are several places I had to compromise in order to get this initial change in:
      
      - UnitTests still build to a common output folder (one for Dev14, another for Dev15). Pulling unit tests apart is going to take a bit of work.
      - Every project has a <RoslynProjectType> entry. This will go away in the future for most projects. It's temporarily needed so I can fix roslyn-internal in parallel without taking down the build.
      - VSL.Imports.targets is messy. Unavoidable for now due to the above. It will get cleaner as I iterate on this.
      
      None of these are relevant to the underlying race condition. Hence it's okay to push them off.
      b9ba3e9e
    • H
      Merge pull request #14457 from heejaechang/removeunnecessary · f386b527
      Heejae Chang 提交于
      now remote host has moved down to common layer and .Next dll gets loa…
      f386b527
  4. 13 10月, 2016 1 次提交
  5. 11 10月, 2016 1 次提交
  6. 30 9月, 2016 3 次提交
  7. 29 9月, 2016 1 次提交
  8. 25 9月, 2016 2 次提交
  9. 24 9月, 2016 2 次提交
  10. 23 9月, 2016 2 次提交
  11. 17 9月, 2016 4 次提交
  12. 15 9月, 2016 1 次提交
  13. 14 9月, 2016 1 次提交
  14. 13 9月, 2016 2 次提交
  15. 10 9月, 2016 1 次提交
  16. 08 9月, 2016 1 次提交
    • H
      add new RemoteHostClient which will run services in proc · b18b69e1
      Heejae Chang 提交于
      this is to make develop - debug cycle easiler when adding new features to service hub.
      
      to enable this, turn on Roslyn/FeatureManager/Features/RemoteHost and RemoteHostInProc
      
      once enabled, InProcRemoteHostClient will be used instead of ServiceHubRemoteHostClient
      
      except concrete type of RemoteHostClient, all other parts, exactly same code will be used.
      
      InProcRemoteHostClient can be used in unit test to test client and server side as they are.
      b18b69e1
  17. 02 9月, 2016 1 次提交
  18. 31 8月, 2016 1 次提交
    • H
      make VS to send over initial assets in batch mode · 3765e967
      Heejae Chang 提交于
      this makes sending over roslyn-internal solution data to OOP from 3 minutes to 4 seconds.
      
      after that, only changed assets are sent over which is usually less than 1-2ms.
      
      this optimization is only for actually moving data between 2 processes. there are other things involved which need to be optimized as well to make whole system to be faster than right now (which takes about 1+ mins for initial solution load)
      3765e967
  19. 24 8月, 2016 1 次提交
  20. 23 8月, 2016 1 次提交
  21. 17 8月, 2016 1 次提交
    • J
      Remove ImportGroup · 9f431374
      Jared Parsons 提交于
      The ImportGroup element is just noise.  It was also used very inconsistently in the repo and often within the same project file.  Just remove it.
      9f431374
  22. 07 8月, 2016 1 次提交
  23. 05 8月, 2016 2 次提交
  24. 04 8月, 2016 1 次提交
    • H
      added abstraction in remote host and diagnostic service to prevent VS.Next dll... · ab0ce610
      Heejae Chang 提交于
      added abstraction in remote host and diagnostic service to prevent VS.Next dll from loading if remote host option is off.
      
      the abstraction I added here is specific to diagnostic service feature. that abstract solely exist to prevent VS.Next dll from loading if remote host option is off.
      
      this is different than IHostSpecificService abstraction I used to have that is generalized form of this abstraction which automatically figure out what to load based on option and layering/MEF composition of roslyn.
      
      in this model, each feature need to take care of this kind of issue.
      ab0ce610
  25. 02 8月, 2016 1 次提交
    • J
      Remove many of the dependency projects · 585d3d19
      Jared Parsons 提交于
      The dependency projects serve a few purposes:
      
      - Help ensure package unity by serving as a single place for a NuGet reference.
      - Make NuGet updates simple by having a single place to change.
      - Grouping together related packages to make it easy to take a dependency on say Visual Studio editor.
      
      The first two points are largely obsolete now that our project.json references are strictly validated on every build and have a single update mechanism.  This meant a lot of our depnedency projects were just making Roslyn.sln bigger.
      
      As such I went through and deleted all of them which had only 1 or 2 project.json entries.  I left the VS ones which tend to group 10+ references together.  They are still serving a valid "reference VS" purpose.
      585d3d19
  26. 01 8月, 2016 2 次提交
  27. 30 7月, 2016 1 次提交
    • H
      porting OOP to preview 4 branch · c141605a
      Heejae Chang 提交于
      changes include
      make SourceText::GetChecksum and AnalyzerTelemetry contructor public.
      
      added MustRunInProc in IBuiltInAnalyzer and some clean up around serializing Solution/Project/DocumentId and how DocumentState is exposed.
      
      simplified temporary storage service's temporary storage management and added ability to attach to existing temporary storage
      
      solution checksum and serialization service.
      
      added remote host client
      - this gives an ability for host (vs) to talk to remote host (service hub)
      
      rename and moving files between feature/workspace layers
      - only real change is having ICompilerDiagnosticAnalyzer interface which can either have inproc implementation or out of proc implementation.
      - inproc is needed since diagnostics are in feature layer and one who uses feature layer out side of VS host need an implementation.
      
      added RemoteWorkspace
      - RemoteWorkspace has host agnostic implementation of roslyn features/services/workspace that will run in remote host
      
      added service hub component and setup project for service hub
      - service hub component is basically thin layer that deals with converting data to pass in to RemoteWorkspace
      
      made devdiv insertion tool to ignore servicehub related files
      
      support byte and char array natively in ObjectReader/Writer
      c141605a
  28. 24 6月, 2016 1 次提交