@@ -64,7 +64,7 @@ type internal IDependencyManagerProvider =
64
64
abstract Key: string
65
65
abstract ResolveDependencies: scriptExt : string * packageManagerTextLines : string seq * tfm : string -> bool * string list * string list
66
66
abstract DependencyAdding: IEvent < string * string >
67
- abstract DependencyAdded: IEvent < string * string >
67
+ abstract DependencyAdded: IEvent < string * string * string list * string list >
68
68
abstract DependencyFailed: IEvent < string * string >
69
69
70
70
[<RequireQualifiedAccess>]
@@ -96,23 +96,35 @@ type ReflectionDependencyManagerProvider(theType: Type, nameProperty: PropertyIn
96
96
Some ( fun () -> new ReflectionDependencyManagerProvider( theType, nameProperty, keyProperty, resolveDependenciesMethod, outputDir) :> IDependencyManagerProvider)
97
97
98
98
interface IDependencyManagerProvider with
99
+
99
100
member __.Name = instance |> nameProperty
101
+
100
102
member __.Key = instance |> keyProperty
101
103
member this.ResolveDependencies ( scriptDir , packageManagerTextLines , tfm ) =
104
+
102
105
let key = ( this :> IDependencyManagerProvider) .Key
103
106
let triggerEvent ( evt : Event < string * string >) =
104
107
for prLine in packageManagerTextLines do
105
108
evt.Trigger( key, prLine)
106
109
triggerEvent dependencyAddingEvent
107
110
let arguments = [| box scriptDir; box packageManagerTextLines; box tfm |]
108
111
let succeeded , generatedScripts , additionalIncludeFolders = resolveDeps.Invoke( instance, arguments) :?> _
109
- if succeeded then triggerEvent dependencyAddedEvent
110
- else triggerEvent dependencyFailedEvent
112
+
113
+ for prLine in packageManagerTextLines do
114
+ if succeeded then
115
+ dependencyAddedEvent.Trigger( key, prLine, generatedScripts, additionalIncludeFolders)
116
+ else
117
+ dependencyFailedEvent.Trigger( key, prLine)
118
+
111
119
succeeded, generatedScripts, additionalIncludeFolders
120
+
112
121
member __.DependencyAdding = dependencyAddingEvent.Publish
122
+
113
123
member __.DependencyAdded = dependencyAddedEvent.Publish
124
+
114
125
member __.DependencyFailed = dependencyFailedEvent.Publish
115
126
127
+
116
128
// Resolution Path = Location of FSharp.Compiler.Private.dll
117
129
let assemblySearchPaths = lazy (
118
130
[
0 commit comments