Skip to content

Commit bcbcc19

Browse files
committed
Fixed bug in compile time assembly resolve
1 parent d039a17 commit bcbcc19

File tree

9 files changed

+38
-29
lines changed

9 files changed

+38
-29
lines changed

RELEASE_NOTES.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
#### 0.1.3-beta - December 12 2015
1+
#### 0.2.0 - December 13 2015
2+
* `AssemblyResolve` handler that resolve location of 3rd party dependencies
3+
* Added dependencies on `Newtonsoft.Json` NuGet package
4+
5+
#### 0.1.3-beta - December 7 2015
26
* Bug fixes
37

48
#### 0.1.2-beta - November 22 2015

paket.dependencies

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
source https://nuget.org/api/v2
22

3-
nuget Newtonsoft.Json
3+
nuget Newtonsoft.Json >= 7.0.1
44

55
github fsharp/FSharp.Data src/Net/UriUtils.fs
66
github fsharp/FSharp.Data src/Net/Http.fs
@@ -26,11 +26,11 @@ group Build
2626
nuget SourceLink.Fake
2727

2828
github fsharp/FAKE modules/Octokit/Octokit.fsx
29-
29+
3030
group OWIN
31-
31+
3232
source https://nuget.org/api/v2
33-
33+
3434
nuget Microsoft.AspNet.WebApi.OwinSelfHost
3535
nuget Swashbuckle.Core
3636

src/Common/AssemblyInfo.fs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ open System.Reflection
44
[<assembly: AssemblyTitleAttribute("SwaggerProvider")>]
55
[<assembly: AssemblyProductAttribute("SwaggerProvider")>]
66
[<assembly: AssemblyDescriptionAttribute("F# Type Provider for Swagger")>]
7-
[<assembly: AssemblyVersionAttribute("0.1.3")>]
8-
[<assembly: AssemblyFileVersionAttribute("0.1.3")>]
7+
[<assembly: AssemblyVersionAttribute("0.2.0")>]
8+
[<assembly: AssemblyFileVersionAttribute("0.2.0")>]
99
do ()
1010

1111
module internal AssemblyVersionInformation =
12-
let [<Literal>] Version = "0.1.3"
12+
let [<Literal>] Version = "0.2.0"

src/SwaggerProvider.Runtime/Configuration.fs renamed to src/SwaggerProvider.DesignTime/Configuration.fs

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,15 @@ open System.Reflection
77
open System.Configuration
88
open System.Collections.Generic
99

10+
type Logging() =
11+
static member logf (s:string) =
12+
()//System.IO.File.AppendAllLines(@"c:\swaggerlog.txt", [|s|])
13+
1014
/// Returns the Assembly object of SwaggerProvider.Runtime.dll (this needs to
1115
/// work when called from SwaggerProvider.DesignTime.dll)
1216
let getSwaggerProviderRuntimeAssembly() =
1317
AppDomain.CurrentDomain.GetAssemblies()
14-
|> Seq.find (fun a -> a.FullName.StartsWith("SwaggerProvider.Runtime,"))
18+
|> Seq.find (fun a -> a.FullName.StartsWith("SwaggerProvider,"))
1519

1620
/// Finds directories relative to 'dirs' using the specified 'patterns'.
1721
/// Patterns is a string, such as "..\foo\*\bar" split by '\'. Standard
@@ -39,8 +43,10 @@ let getAssemblyLocation (assem:Assembly) =
3943
let getProbingLocations() =
4044
try
4145
let root = getSwaggerProviderRuntimeAssembly() |> getAssemblyLocation
46+
Logging.logf <| sprintf "Root %s" root
4247
let config = System.Configuration.ConfigurationManager.OpenExeConfiguration(root)
4348
let pattern = config.AppSettings.Settings.["ProbingLocations"]
49+
Logging.logf <| sprintf "Pattern %s" pattern.Value
4450
if pattern <> null then
4551
[ yield root
4652
let pattern = pattern.Value.Split(';', ',') |> List.ofSeq
@@ -51,7 +57,6 @@ let getProbingLocations() =
5157
else []
5258
with :? ConfigurationErrorsException | :? KeyNotFoundException -> []
5359

54-
5560
/// Given an assembly name, try to find it in either assemblies
5661
/// loaded in the current AppDomain, or in one of the specified
5762
/// probing directories.
@@ -75,22 +80,22 @@ let resolveReferencedAssembly (asmName:string) =
7580
if idx > 0 then asmName.Substring(0, idx) else asmName
7681

7782
let locations = getProbingLocations()
78-
//Logging.logf "Probing locations: %s" (String.concat ";" locations)
83+
Logging.logf <| sprintf "Probing locations: %A" locations
7984

8085
let asm = locations |> Seq.tryPick (fun dir ->
8186
let library = Path.Combine(dir, libraryName+".dll")
8287
if File.Exists(library) then
83-
//Logging.logf "Found assembly, checking version! (%s)" library
88+
Logging.logf <| sprintf "Found assembly, checking version! (%s)" library
8489
// We do a ReflectionOnlyLoad so that we can check the version
8590
let refAssem = Assembly.ReflectionOnlyLoadFrom(library)
8691
// If it matches, we load the actual assembly
8792
if refAssem.FullName = asmName then
88-
//Logging.logf "...version matches, returning!"
93+
Logging.logf "...version matches, returning!"
8994
Some(Assembly.LoadFrom(library))
9095
else
91-
//Logging.logf "...version mismatch, skipping"
96+
Logging.logf "...version mismatch, skipping"
9297
None
9398
else None)
9499

95-
//if asm = None then Logging.logf "Assembly not found!"
100+
if asm = None then Logging.logf "Assembly not found!"
96101
defaultArg asm null

src/SwaggerProvider.DesignTime/SwaggerProvider.DesignTime.fsproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
<Private>True</Private>
4141
</Reference>
4242
<Reference Include="System" />
43+
<Reference Include="System.Configuration" />
4344
<Reference Include="System.Core" />
4445
<Reference Include="System.Numerics" />
4546
<Reference Include="System.Runtime.Caching" />
@@ -93,6 +94,7 @@
9394
<Compile Include="DefinitionCompiler.fs" />
9495
<Compile Include="OperationCompiler.fs" />
9596
<Compile Include="SwaggerProviderConfig.fs" />
97+
<Compile Include="Configuration.fs" />
9698
<Compile Include="SwaggerProvider.fs" />
9799
</ItemGroup>
98100
<ItemGroup>

src/SwaggerProvider.Runtime/SwaggerProvider.Runtime.fsproj

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
<Private>False</Private>
4343
</Reference>
4444
<Reference Include="System" />
45-
<Reference Include="System.Configuration" />
4645
<Reference Include="System.Core" />
4746
<Reference Include="System.Numerics" />
4847
<Reference Include="System.Runtime.Serialization" />
@@ -52,7 +51,6 @@
5251
<Compile Include="..\Common\AssemblyInfo.fs">
5352
<Link>AssemblyInfo.fs</Link>
5453
</Compile>
55-
<Compile Include="Configuration.fs" />
5654
<Compile Include="RuntimeHelpers.fs" />
5755
<None Include="paket.references" />
5856
</ItemGroup>
@@ -108,7 +106,7 @@
108106
</Reference>
109107
</ItemGroup>
110108
</When>
111-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
109+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
112110
<ItemGroup>
113111
<Reference Include="Newtonsoft.Json">
114112
<HintPath>..\..\packages\Newtonsoft.Json\lib\net45\Newtonsoft.Json.dll</HintPath>

src/SwaggerProvider/paket.template

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ files
2323
../../bin/SwaggerProvider/SwaggerProvider*.* ==> lib/net40
2424
SwaggerProvider.fsx ==> .
2525
dependencies
26-
Newtonsoft.Json
26+
Newtonsoft.Json >= 7.0.1

tests/SwaggerProvider.Tests/SwaggerProvider.Tests.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898
</ProjectReference>
9999
</ItemGroup>
100100
<Choose>
101-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
101+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
102102
<ItemGroup>
103103
<Reference Include="FSharp.Data">
104104
<HintPath>..\..\packages\test\FSharp.Data\lib\net40\FSharp.Data.dll</HintPath>

tests/Swashbuckle.OWIN.Server/Swashbuckle.OWIN.Server.fsproj

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878
</Target>
7979
-->
8080
<Choose>
81-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
81+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
8282
<ItemGroup>
8383
<Reference Include="System.Net.Http.Formatting">
8484
<HintPath>..\..\packages\owin\Microsoft.AspNet.WebApi.Client\lib\net45\System.Net.Http.Formatting.dll</HintPath>
@@ -101,7 +101,7 @@
101101
</When>
102102
</Choose>
103103
<Choose>
104-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
104+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
105105
<ItemGroup>
106106
<Reference Include="System.Web.Http">
107107
<HintPath>..\..\packages\owin\Microsoft.AspNet.WebApi.Core\lib\net45\System.Web.Http.dll</HintPath>
@@ -112,7 +112,7 @@
112112
</When>
113113
</Choose>
114114
<Choose>
115-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
115+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
116116
<ItemGroup>
117117
<Reference Include="System.Web.Http.Owin">
118118
<HintPath>..\..\packages\owin\Microsoft.AspNet.WebApi.Owin\lib\net45\System.Web.Http.Owin.dll</HintPath>
@@ -288,7 +288,7 @@
288288
</When>
289289
</Choose>
290290
<Choose>
291-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
291+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
292292
<ItemGroup>
293293
<Reference Include="Microsoft.Owin">
294294
<HintPath>..\..\packages\owin\Microsoft.Owin\lib\net45\Microsoft.Owin.dll</HintPath>
@@ -299,7 +299,7 @@
299299
</When>
300300
</Choose>
301301
<Choose>
302-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
302+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
303303
<ItemGroup>
304304
<Reference Include="Microsoft.Owin.Host.HttpListener">
305305
<HintPath>..\..\packages\owin\Microsoft.Owin.Host.HttpListener\lib\net45\Microsoft.Owin.Host.HttpListener.dll</HintPath>
@@ -310,7 +310,7 @@
310310
</When>
311311
</Choose>
312312
<Choose>
313-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
313+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
314314
<ItemGroup>
315315
<Reference Include="Microsoft.Owin.Hosting">
316316
<HintPath>..\..\packages\owin\Microsoft.Owin.Hosting\lib\net45\Microsoft.Owin.Hosting.dll</HintPath>
@@ -321,7 +321,7 @@
321321
</When>
322322
</Choose>
323323
<Choose>
324-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
324+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
325325
<ItemGroup>
326326
<Reference Include="Newtonsoft.Json">
327327
<HintPath>..\..\packages\owin\Newtonsoft.Json\lib\net45\Newtonsoft.Json.dll</HintPath>
@@ -350,7 +350,7 @@
350350
</When>
351351
</Choose>
352352
<Choose>
353-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
353+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
354354
<ItemGroup>
355355
<Reference Include="Owin">
356356
<HintPath>..\..\packages\owin\Owin\lib\net40\Owin.dll</HintPath>
@@ -361,7 +361,7 @@
361361
</When>
362362
</Choose>
363363
<Choose>
364-
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6')">
364+
<When Condition="$(TargetFrameworkIdentifier) == '.NETFramework' And ($(TargetFrameworkVersion) == 'v4.0' Or $(TargetFrameworkVersion) == 'v4.5' Or $(TargetFrameworkVersion) == 'v4.5.1' Or $(TargetFrameworkVersion) == 'v4.5.2' Or $(TargetFrameworkVersion) == 'v4.5.3' Or $(TargetFrameworkVersion) == 'v4.6' Or $(TargetFrameworkVersion) == 'v4.6.1')">
365365
<ItemGroup>
366366
<Reference Include="Swashbuckle.Core">
367367
<HintPath>..\..\packages\owin\Swashbuckle.Core\lib\net40\Swashbuckle.Core.dll</HintPath>

0 commit comments

Comments
 (0)