From 9d79869cf9a664355673e8c6bb4643116581742d Mon Sep 17 00:00:00 2001 From: Haacked Date: Tue, 14 Oct 2014 13:21:51 -0700 Subject: [PATCH] Create a nuget package --- ReleaseNotes.md | 2 +- Rothko.nuspec | 18 ++++++++++++++ Rothko.sln | 4 ++- packaging/LICENSE-MIT.txt | 18 ++++++++++++++ packaging/README.md | 38 +++++++++++++++++++++++++++++ packaging/ReleaseNotes.md | 3 +++ packaging/Rothko.0.0.1-alpha.nupkg | Bin 0 -> 33571 bytes packaging/lib/net45/rothko.dll | Bin 0 -> 109056 bytes script/build.fsx | 25 ++++++++++++++++++- 9 files changed, 105 insertions(+), 3 deletions(-) create mode 100644 Rothko.nuspec create mode 100644 packaging/LICENSE-MIT.txt create mode 100644 packaging/README.md create mode 100644 packaging/ReleaseNotes.md create mode 100644 packaging/Rothko.0.0.1-alpha.nupkg create mode 100644 packaging/lib/net45/rothko.dll diff --git a/ReleaseNotes.md b/ReleaseNotes.md index 18c0463..b34e11e 100644 --- a/ReleaseNotes.md +++ b/ReleaseNotes.md @@ -1,3 +1,3 @@ ### New in 0.0.1 -* Initial release +* Initial alpha release diff --git a/Rothko.nuspec b/Rothko.nuspec new file mode 100644 index 0000000..9b343fa --- /dev/null +++ b/Rothko.nuspec @@ -0,0 +1,18 @@ + + + + @project@ + @build.number@ + @authors@ + @authors@ + @summary@ + https://github.com/haacked/rothko/blob/master/LICENSE.txt + https://github.com/haacked/rothko + https://cloud.githubusercontent.com/assets/19977/4635932/4483417a-53de-11e4-8aad-7f06b2d3c46a.png + false + @description@ + @releaseNotes@ + Copyright Phil Haack 2014 + dotnet abstractions + + \ No newline at end of file diff --git a/Rothko.sln b/Rothko.sln index 8cfe41f..a89fed0 100644 --- a/Rothko.sln +++ b/Rothko.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 -VisualStudioVersion = 12.0.21005.1 +VisualStudioVersion = 12.0.30723.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rothko", "src\Rothko.csproj", "{4A84E568-CA86-4510-8CD0-90D3EF9B65F9}" EndProject @@ -10,6 +10,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Meta", "Meta", "{1F038D9F-9 CodeAnalysisDictionary.xml = CodeAnalysisDictionary.xml LICENSE-MIT.txt = LICENSE-MIT.txt README.md = README.md + ReleaseNotes.md = ReleaseNotes.md Rothko.ruleset = Rothko.ruleset EndProjectSection EndProject @@ -19,6 +20,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{2DC1E33B ProjectSection(SolutionItems) = preProject script\build.cmd = script\build.cmd script\build.fsx = script\build.fsx + Rothko.nuspec = Rothko.nuspec EndProjectSection EndProject Global diff --git a/packaging/LICENSE-MIT.txt b/packaging/LICENSE-MIT.txt new file mode 100644 index 0000000..c9c0293 --- /dev/null +++ b/packaging/LICENSE-MIT.txt @@ -0,0 +1,18 @@ +Copyright (c) 2012 Phil Haack + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/packaging/README.md b/packaging/README.md new file mode 100644 index 0000000..2354b3d --- /dev/null +++ b/packaging/README.md @@ -0,0 +1,38 @@ +# Rothko + +We all know the .NET Framework APIs for dealing with the file system are not +designed with testability in mind. Also, I wasn't happy with the existing +libraries for providing an abstraction for such things. I wanted one that was: + +* Modern - Included the `Enumerate*` methods for example. +* Interface based - Using Abstract base classes as the abstraction is blech. +* Easy to port to - So it had to follow the existing APIs closely. + +Rothko is this library. It provides abstractions for: + +* File system. +* Registry +* Environment. + +The starting point for Rothko is the `OperatingSystemFacade` class. From there +you can get to the other abstractions. + +* `IFileSystem` +* `IEnvironment` +* `IRegistry` + +# Goals + +The goal is to use this in GitHub for Windows as well as any other +applications where testability is important. + +A secondary goal is to make it very easy to port code using the core .NET +Framework APIs to port over to Rothko. The interfaces map closely to the +.NET Framework's, except in a few places where I wouldn't be able to live with +myself if I didn't modernize the library. For example, I updated methods +that return arrays to return `IEnumerable` (or derived interface) instead. + +Once these low level abstractions are implemented, I plan to add a set of +_Facade_ classes that provide a more usable API that we all wished had been +there all along. These _Facade_ classes will simply delegate to the +lower-level abstractions. diff --git a/packaging/ReleaseNotes.md b/packaging/ReleaseNotes.md new file mode 100644 index 0000000..b34e11e --- /dev/null +++ b/packaging/ReleaseNotes.md @@ -0,0 +1,3 @@ +### New in 0.0.1 + +* Initial alpha release diff --git a/packaging/Rothko.0.0.1-alpha.nupkg b/packaging/Rothko.0.0.1-alpha.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..8740ebc2e986b44f7f7eccc633cd163d70187e6a GIT binary patch literal 33571 zcmb5V1ymft_a+*{J-EBOJ0w7Ghv04l!QCOjWq{y5Sa1st!EJB`hruQI;OV0r}0ppYJ#2FModetRKF8^XA`%@`mJ%v5Tdh zD?8giq{t_D!;p*fAL;)aPFg!f#J%k8C_F4(Tx}d3M5#F0IH)Kr9n2jqY#achRPJt8 ztO8WxVj}96cBXEx3Ri0zCs&GB7YA2SDr+}4Cn0urS95DidsA07M<+{%*BUEF7kg8; z*IgF?yOXK8ttr5gor{BmkNveZ|0@R7e~n3@>Fs3szeTjSF?Vrvb+mG0Gk3KAAHiPR z^%{&#wjfz6k)CFMaCQ8Mw?&xN1>&WKd?&@S|PDLSSAxfn#$j@zN zZZ2rWZOUoNW5#7gMZy06<>>#v`onH->1JwS>SoGr?&xC4>g4k3?c!!*>H7a@+y6Wp zu9hwyHs+SD|3@Eo4n6@Z9!@JxUM?O^9$pJx0UmySOMU?kZf-LUK?^fZHYZnm3v;Lc z(LYO0J`Mq10e)Uf3r-#$3-15)kNv+~GBMTHe8GA1?hWF9@?`*bZJ_TpS7P74d4u+v zFaPDN{ogVsMq|lgi38Q2{CD8#qrnHjeiCzG2rtnA~ko8TavBH&`SaU(S6KozIfT(gh5lNGETX57zl8Hi=yz z0ls@lnl5{`Xz{OoCqeMGuKUkmbld1}Vm%xuIcX7+mWJ_pa{U!ra*kU}r=c%A54{u2 zb6HWc*(nwx{?3M??uU}CF*_d1IX-s9T0>(3T3ru`NMPJW(~$Ag%w(97)40EX>n1?o|pDBv1H>%E3$I$3*t4&e_zn7=Xm|f z8&oJp0EKzg-N00pYXa#h!t#;DuSNgt&chV$*#k-Qie*Or9{LvOnx|&r(WmDPnfFD0 zDORk9FoexQzfr##qpk9pLQW{ff$_~yT+!jqjs z#fsDGouTaQ8=Tivu(L5^cd&Hh;bnLE??cJL&hGz~5ioxwlcd?%>y{HmI_^Y&N)(C@ zQ25$UA3sTblK4m=A*q*P*s_${j;e%C)__4(Ax8F&{#h($K#7kb3 zg5SS1VTtbtlPiY%8bZ)pj7PmaWEH~24Q5D@*)Y6YqZZqKeBw~ApV7uSK*G6u|AiNA z?2BQyhq10+hHu);qz(#)%!0|1jfNgiyJHX+%@={URrqg|d5<4uI1GNtDQfga={dgH z%B05SwFssyes6L9665%!FdO0n&{$WSIfWGQgVsraa`?H!mBB-=>yu#KOxO}AwP~e<_6oXct#LcX2{&cZmfCN z7zhE(W2lA5d+6JgAxBALJ91NQq}2KDv?G2|1Kq=;?hBv9dhYNT=lqZ>x*aQYwFr*( zox;^(glVCl8`zXRJ~;Nt#^r|vDw}2!bwu`f@cI#lCeEB5;dqp62s36?gq;-q)<9d6 zG{q0?Rjyo-6Pd#)LnvxqL0|IW4`60DA$%{wNZ?jc5J7&^%ACd4jWtSP zZ~1GnCSFg(=O>SJXe}Q~C!~K9-ug(4sV4h~;7W#Ay4`U)U-L`USa2^mZ$T7#Tev8o zQumLAm(j?4t=TshbWL9JO6X@`P53o0Z~$MrRm z0t@7=$xEA{umNbv_c=jKa?x`K){cx#tpVN^k-m#)2YjJgzY1|k37yzQ?T!TWT&cbNxn2A1t|RD!q@#*Wl> z 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 literal 0 HcmV?d00001 diff --git a/packaging/lib/net45/rothko.dll b/packaging/lib/net45/rothko.dll new file mode 100644 index 0000000000000000000000000000000000000000..cc5b0310399d7bc1f8e09c42611cf22c9a015eeb GIT binary patch literal 109056 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 uL+Aujs7@>8cNJHpBo0J literal 0 HcmV?d00001 diff --git a/script/build.fsx b/script/build.fsx index cd1b5de..a8613cd 100644 --- a/script/build.fsx +++ b/script/build.fsx @@ -10,6 +10,7 @@ let projectSummary = projectDescription // TODO: write a summary // directories let buildDir = "./src/bin" +let packagingDir = "./packaging/" let testResultsDir = "./testresults" RestorePackages() @@ -19,7 +20,7 @@ let releaseNotes = |> ReleaseNotesHelper.parseReleaseNotes Target "Clean" (fun _ -> - CleanDirs [buildDir; testResultsDir] + CleanDirs [buildDir; packagingDir; testResultsDir] ) open Fake.AssemblyInfoFile @@ -44,6 +45,28 @@ Target "UnitTests" (fun _ -> OutputDir = testResultsDir }) ) +Target "CreatePackage" (fun _ -> + let net45Dir = packagingDir @@ "lib/net45/" + CleanDirs [net45Dir] + + CopyFile net45Dir (buildDir @@ "Release/rothko.dll") + CopyFiles packagingDir ["LICENSE-MIT.txt"; "README.md"; "ReleaseNotes.md"] + + NuGet (fun p -> + {p with + Authors = authors + Project = projectName + Description = projectDescription + OutputPath = packagingDir + Summary = projectSummary + WorkingDir = packagingDir + Version = releaseNotes.AssemblyVersion + ReleaseNotes = toLines releaseNotes.Notes + AccessKey = getBuildParamOrDefault "nugetkey" "" + Publish = hasBuildParam "nugetkey" }) "Rothko.nuspec" +) + + Target "Default" DoNothing "Clean"