@@ -125,28 +125,12 @@ func ingest(client: Client,
125
125
s3Readme = . error( " \( error) " )
126
126
}
127
127
128
- var fork : Fork ?
129
- do {
130
- if let parentUrl = metadata. repository? . normalizedParentUrl {
131
- if let packageId = try await Package . query ( on: database)
132
- . filter ( \. $url == parentUrl)
133
- . first ( ) ? . id {
134
- fork = . parentId( packageId)
135
- } else {
136
- fork = . parentURL( parentUrl)
137
- }
138
- }
139
- } catch {
140
- Current . logger ( ) . warning ( " updating forked from failed " )
141
- }
142
-
143
128
try await updateRepository ( on: database,
144
129
for: repo,
145
130
metadata: metadata,
146
131
licenseInfo: license,
147
132
readmeInfo: readme,
148
- s3Readme: s3Readme,
149
- forkedFrom: fork)
133
+ s3Readme: s3Readme)
150
134
151
135
return pkg
152
136
}
@@ -194,15 +178,29 @@ func updateRepository(on database: Database,
194
178
metadata: Github . Metadata ,
195
179
licenseInfo: Github . License ? ,
196
180
readmeInfo: Github . Readme ? ,
197
- s3Readme: S3Readme ? ,
198
- forkedFrom: Fork ? = nil ) async throws {
181
+ s3Readme: S3Readme ? ) async throws {
199
182
guard let repoMetadata = metadata. repository else {
200
183
if repository. $package. value == nil {
201
184
try await repository. $package. load ( on: database)
202
185
}
203
186
throw AppError . genericError ( repository. package . id,
204
187
" repository metadata is nil for package \( repository. name ?? " unknown " ) " )
205
188
}
189
+
190
+ var fork : Fork ?
191
+ do {
192
+ if let parentUrl = metadata. repository? . normalizedParentUrl {
193
+ if let packageId = try await Package . query ( on: database)
194
+ . filter ( \. $url == parentUrl)
195
+ . first ( ) ? . id {
196
+ fork = . parentId( packageId)
197
+ } else {
198
+ fork = . parentURL( parentUrl)
199
+ }
200
+ }
201
+ } catch {
202
+ Current . logger ( ) . warning ( " updating forked from failed " )
203
+ }
206
204
207
205
repository. defaultBranch = repoMetadata. defaultBranch
208
206
repository. forks = repoMetadata. forkCount
@@ -226,7 +224,7 @@ func updateRepository(on database: Database,
226
224
repository. releases = repoMetadata. releases. nodes. map ( Release . init ( from: ) )
227
225
repository. stars = repoMetadata. stargazerCount
228
226
repository. summary = repoMetadata. description
229
- repository. forkedFrom = forkedFrom
227
+ repository. forkedFrom = fork
230
228
231
229
try await repository. save ( on: database)
232
230
}
0 commit comments