Skip to content

Instantly share code, notes, and snippets.

@ctaggart
ctaggart / CreateSrcsrvAutofac.fs
Created June 17, 2013 23:39
creating a srcsrv for Autofac.pdb
open Microsoft.Cci.Pdb
open System
open System.IO
open System.Collections.Generic
open System.Text
let hashFormat (hash:byte[]) =
let sb = StringBuilder(hash.Length * 2)
for b in hash do
sb.AppendFormat("{0:x2}", b) |> ignore
@ctaggart
ctaggart / Autofac.pdb.srcsrv.txt
Created June 17, 2013 23:49
A srcsrv stream for Autofac.pdb that provides source code. write to pdb: pdbstr -w -s:srcsrv -p:Autofac.pdb -i:Autofac.pdb.srcsrv.txt read from pdb: pdbstr -r -s:srcsrv -p:Autofac.pdb list all download urls from pdb: srctool -x Autofac.pdb pdbstr, srctool are in C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\srcsrv
SRCSRV: ini ------------------------------------------------
VERSION=1
SRCSRV: variables ------------------------------------------
SRCSRVVERCTRL=https
SRCSRVTRG=https://autofac.googlecode.com/hg-history/78573601d8613ab838dff769b15e1d9a1c7171fe/%var2%
SRCSRV: source files ---------------------------------------
c:\projects\oss\autofac\core\source\autofac\builder\concretereflectionactivatordata.cs*Core/Source/Autofac/Builder/ConcreteReflectionActivatorData.cs
c:\projects\oss\autofac\core\source\autofac\builder\metadataconfiguration.cs*Core/Source/Autofac/Builder/MetadataConfiguration.cs
c:\projects\oss\autofac\core\source\autofac\builder\reflectionactivatordata.cs*Core/Source/Autofac/Builder/ReflectionActivatorData.cs
c:\projects\oss\autofac\core\source\autofac\builder\registrationbuilder.cs*Core/Source/Autofac/Builder/RegistrationBuilder.cs
namespace SourceLink
open System
open FSharp.Control.Observable // for GuardedAwaitObservable from FSharx.Core
type Process() =
let si = Diagnostics.ProcessStartInfo()
do
si.UseShellExecute <- false
si.WindowStyle <- Diagnostics.ProcessWindowStyle.Hidden
#r @"packages\FAKE.2.1.309-alpha\tools\FakeLib.dll"
#r @"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v2.0\Microsoft.TeamFoundation.Build.Client.dll"
#r @"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v2.0\Microsoft.TeamFoundation.Client.dll"
open Fake
open Microsoft.TeamFoundation.Client
open Microsoft.TeamFoundation.Build.Client
open System
///<reference path="DefinitelyTyped\node\node.d.ts" />
import readline = require('readline');
import stream = require('stream');
class ReadLineOptions implements readline.ReadLineOptions {
constructor(public input: stream.ReadableStream, public output: stream.WritableStream) { }
}
var options = new ReadLineOptions(process.stdin, process.stdout);
<Activity xmlns:pa="clr-namespace:PrintActivity;assembly=PrintActivity" x:Class="TfsBuild.Process" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mt="clr-namespace:Microsoft.TeamFoundation;assembly=Microsoft.TeamFoundation.Common" xmlns:mtbc="clr-namespace:Microsoft.TeamFoundation.Build.Client;assembly=Microsoft.TeamFoundation.Build.Client" xmlns:mtbco="clr-namespace:Microsoft.TeamFoundation.Build.Common;assembly=Microsoft.TeamFoundation.Build.Common" xmlns:mtbw="clr-namespace:Microsoft.TeamFoundation.Build.Workflow;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtbwa="clr-namespace:Microsoft.TeamFoundation.Build.Workflow.Activities;assembly=Microsoft.TeamFoundation.Build.Workflow" xmlns:mtba="clr-namespace:Microsoft.TeamFoundation.Build.Activities;assembly=Microsoft.TeamFoundation.Build.Activities" xmlns:mtbac="clr-namespace:Microsoft.TeamFoundation.Build.Activities.Core;assembly=Microsoft.TeamFoundation.Bu
#r "Microsoft.TeamFoundation.Client"
#r "Microsoft.VisualStudio.Services.Common"
#r "System.Net.Http"
open System
open Microsoft.TeamFoundation.Client
// retrieve VssToken
// for the logged in user "IdeUser"
#load "packages\SourceLink.Tfs.0.3.0-a1312312344\Assemblies.fsx"
open System
open SourceLink
let tp = new TfsProject(Uri "https://ctaggart.visualstudio.com/DefaultCollection/Test")
// get all build definitions
tp.GetBuildDefinitions()
|> Array.sortWith (fun a b -> String.cmpi a.Name b.Name )
@ctaggart
ctaggart / CWDev.SLNTools.Core.nuspec
Last active January 4, 2016 21:39
SourceLink CodePlex TFS/SVN Demo using SLNTools
<?xml version="1.0"?>
<package >
<metadata>
<id>SLNTools.Core</id>
<version>1.1.2.1</version>
<authors>Christian Warren</authors>
<licenseUrl>http://slntools.codeplex.com/license</licenseUrl>
<projectUrl>http://slntools.codeplex.com</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>'Tools for SLN File' make it easier for developers to compare, merge or filter the ".sln" files generated by Visual Studio.</description>