1. 23 11月, 2016 1 次提交
    • J
      Remove the depedency projects · 5da46238
      Jared Parsons 提交于
      The dependency projects were added as a way to help unify our project.json references.  Instead of every project referencing the NuGet package, we had a dependency project which referenced it and everyone referenced that dependency project.  Due to the transitive nature of NuGet it would be roughly equivalent.
      
      This system had a number of downsides:
      
      1. There was no enforcement.  Even though dependency projects existed, there was no mechanism to force developers to use them.
      2. Getting the granularity correct was tricky.
      3. The projects themselves have special props / targets to get them to produce no output.  This can trip up MSBuild up to date checks.
      
      Since then though we've begun using RepoUtil to verify our NuGet reference correctness.  This removed the need for these projects and hence I'm removing them from our build.
      5da46238
  2. 11 11月, 2016 3 次提交
  3. 05 11月, 2016 1 次提交
  4. 04 11月, 2016 6 次提交
  5. 02 11月, 2016 1 次提交
    • J
      Fix and verify Microsoft.Net.Compilers.nuspec · 8f22bfcc
      Jared Parsons 提交于
      The NuSpec file for the compiler is missing a number of facades.  This flaw's been around for some time in a few forms but it's gone un-noticed due to our reflection magic around facades.  Now that the magic is gone we're finding places where the NuSpec is incorrect.
      
      This change both fixes the NuSpec and adds verification that it is correct.  The strategy for correctness is to build a deployment project which contains all of the deliverables in the NuSpec.  Namely:
      
      - csc.exe
      - vbc.exe
      - csi.exe
      - Microsoft.Build.Tasks.CodeAnalysis.dll
      
      The MSBuild process will deploy all facades necessary for execution to the output directory.  That makes it possible to do a simple check that the output and NuSpec are consistent with each other.
      8f22bfcc
  6. 25 10月, 2016 1 次提交
  7. 24 10月, 2016 1 次提交
  8. 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
    • M
      nest types to reduce namespace collisions · 60d22a6f
      Matt Warren 提交于
      60d22a6f
  9. 11 10月, 2016 1 次提交
  10. 08 10月, 2016 1 次提交
  11. 29 9月, 2016 1 次提交
  12. 27 9月, 2016 1 次提交
  13. 24 9月, 2016 2 次提交
  14. 13 9月, 2016 1 次提交
  15. 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
  16. 03 9月, 2016 1 次提交
  17. 25 8月, 2016 1 次提交
  18. 17 8月, 2016 1 次提交
  19. 16 8月, 2016 1 次提交
  20. 05 8月, 2016 1 次提交
  21. 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
  22. 30 7月, 2016 3 次提交
    • 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
    • J
      Fixed a merge conflict · db788a3d
      Jared Parsons 提交于
      db788a3d
    • J
      Added the RepoUtil project · d5f860eb
      Jared Parsons 提交于
      d5f860eb
  23. 27 7月, 2016 2 次提交
  24. 23 7月, 2016 1 次提交
  25. 21 7月, 2016 3 次提交
  26. 14 7月, 2016 1 次提交