forked from nhibernate/nhibernate-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAsyncGenerator.yml
316 lines (316 loc) · 10.4 KB
/
AsyncGenerator.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
projects:
- filePath: NHibernate/NHibernate.csproj
targetFramework: netcoreapp2.0
concurrentRun: true
applyChanges: true
suppressDiagnosticFailures:
- pattern: ^.*(Hql\.g).*$
analyzation:
methodConversion:
#TODO 6.0: Remove ignore rule for IQueryBatchItem.ProcessResults
- conversion: Ignore
name: ProcessResults
containingTypeName: IQueryBatchItem
- conversion: Ignore
name: PostProcessInsert
containingTypeName: HqlSqlWalker
- conversion: Ignore
name: Intercept
containingTypeName: IInterceptor
- conversion: Ignore
name: Intercept
containingTypeName: IFieldInterceptor
- conversion: Ignore
name: InitializeOrGetAssociation
containingTypeName: AbstractFieldInterceptor
- conversion: Ignore
name: InitializeLazyProperty
containingTypeName: ILazyPropertyInitializer
- conversion: Ignore
name: InitializeLazyPropertiesFromDatastore
containingTypeName: AbstractEntityPersister
- conversion: Ignore
name: InitializeLazyPropertiesFromCache
containingTypeName: AbstractEntityPersister
- conversion: Ignore
name: Invoke
containingTypeName: BasicLazyInitializer
- conversion: Ignore
name: SetReadOnly
containingTypeName: StatefulPersistenceContext
- conversion: Ignore
name: Unproxy
containingTypeName: StatefulPersistenceContext
- conversion: Ignore
name: Contains
containingTypeName: CollectionType
- conversion: Ignore
name: GuessClass
containingTypeName: NHibernateProxyHelper
- conversion: Ignore
name: IsPropertyInitialized
containingTypeName: NHibernateUtil
- conversion: Ignore
name: BestGuessEntityName
containingTypeName: ISession
- conversion: Ignore
name: Contains
containingTypeName: ISession
- conversion: Ignore
name: BestGuessEntityName
containingTypeName: ISessionImplementor
- conversion: Ignore
name: CloseSessionFromSystemTransaction
containingTypeName: ISessionImplementor
# TODO 6.0: Remove ignore rule for IStatelessSession.Close
- conversion: Ignore
name: Close
containingTypeName: IStatelessSession
- conversion: Ignore
name: GetUnsavedVersionValue
containingTypeName: UnsavedValueFactory
- conversion: Ignore
name: ReadSize
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: ReadIndexExistence
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: ReadElementExistence
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: ReadElementByIndex
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: Read
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: Write
containingTypeName: AbstractPersistentCollection
- conversion: Ignore
name: GetSize
containingTypeName: ICollectionPersister
- conversion: Ignore
name: IndexExists
containingTypeName: ICollectionPersister
- conversion: Ignore
name: ElementExists
containingTypeName: ICollectionPersister
- conversion: Ignore
name: GetElementByIndex
containingTypeName: ICollectionPersister
- conversion: Ignore
name: Exists
containingTypeName: ICollectionPersister
- conversion: Ignore
name: Exists
containingTypeName: AbstractCollectionPersister
- conversion: Ignore
name: QuoteTableAndColumns
containingTypeName: SchemaMetadataUpdater
- conversion: Ignore
name: GetEnumerator
containingTypeName: DelayedEnumerator
- conversion: Ignore
name: GetEnumerator
containingTypeName: IFutureEnumerable
# TODO 6.0: Consider if ComputeFlattenedParameters should remain ignored or not
- conversion: Ignore
name: ComputeFlattenedParameters
containingTypeName: SqlQueryImpl
- conversion: ToAsync
name: ExecuteReader
containingTypeName: IBatcher
- conversion: ToAsync
name: ExecuteNonQuery
containingTypeName: IBatcher
- conversion: ToAsync
rule: EventListener
- conversion: ToAsync
rule: Cache
- conversion: ToAsync
rule: TransactionCompletion
typeConversion:
- conversion: Ignore
name: EnumerableImpl
- conversion: Ignore
name: SystemTransactionContext
containingTypeName: AdoNetWithSystemTransactionFactory
- conversion: Ignore
name: DependentContext
containingTypeName: AdoNetWithSystemTransactionFactory
ignoreSearchForAsyncCounterparts:
- name: GetFieldValue
- name: IsDBNull
- name: WriteLine
ignoreAsyncCounterparts:
- rule: Obsolete
callForwarding: true
cancellationTokens:
guards: true
methodParameter:
- anyInterfaceRule: PubliclyExposedType
parameter: Optional
- parameter: Optional
rule: PubliclyExposedType
- parameter: Required
requiresCancellationToken:
- rule: EventListener
- rule: Cache
- rule: TransactionCompletion
scanMethodBody: true
scanForMissingAsyncMembers:
- all: true
transformation:
configureAwaitArgument: false
localFunctions: true
documentationComments:
addOrReplaceMethodSummary:
- name: Commit
containingTypeName: AdoTransaction
content: |
/// Commits the <see cref="ITransaction"/> by flushing asynchronously the <see cref="ISession"/>
/// then committing synchronously the <see cref="DbTransaction"/>.
registerPlugin:
- type: AsyncGenerator.Core.Plugins.TransactionScopeAsyncFlowAdder
assemblyName: AsyncGenerator.Core
- type: AsyncGenerator.Core.Plugins.EmptyRegionRemover
assemblyName: AsyncGenerator.Core
- filePath: NHibernate.DomainModel/NHibernate.DomainModel.csproj
targetFramework: netcoreapp2.0
concurrentRun: true
applyChanges: true
suppressDiagnosticFailures:
- pattern: ^.*(Hql\.g).*$
analyzation:
scanMethodBody: true
scanForMissingAsyncMembers:
- all: true
- filePath: NHibernate.Test/NHibernate.Test.csproj
targetFramework: net6.0
concurrentRun: true
applyChanges: true
suppressDiagnosticFailures:
- pattern: ^.*(Hql\.g).*$
analyzation:
methodConversion:
- conversion: Ignore
name: CanUseDependentTransaction
containingTypeName: DistributedSystemTransactionFixture
- conversion: Ignore
name: CanUseSessionWithManyDependentTransaction
containingTypeName: DistributedSystemTransactionFixture
- conversion: Ignore
name: CanUseDependentTransaction
containingTypeName: SystemTransactionFixture
- conversion: Ignore
name: CanUseSessionWithManyDependentTransaction
containingTypeName: SystemTransactionFixture
- conversion: Copy
name: AfterTransactionCompletionProcess_EvictsFromCache
asyncExtensionMethods:
projectFiles:
- fileName: LinqExtensionMethods.cs
projectName: NHibernate
typeConversion:
- conversion: Ignore
name: ObjectAssert
- conversion: Ignore
name: LinqReadonlyTestsContext
- conversion: Ignore
name: MultiThreadRunner
- conversion: Ignore
name: PeVerifier
- conversion: Ignore
rule: IsTestCase
- conversion: Ignore
anyBaseTypeRule: IsTestCase
executionPhase: PostProviders
- conversion: Ignore
name: SyncOnlyCacheFixture
ignoreDocuments:
- filePathEndsWith: Linq/MathTests.cs
- filePathEndsWith: Linq/ExpressionSessionLeakTest.cs
- filePathEndsWith: Linq/NorthwindDbCreator.cs
ignoreSearchForAsyncCounterparts:
- name: Wait
containingTypeName: Task
- name: Prepare
containingTypeName: DbCommand
- name: Close
containingTypeName: DbConnection
- name: Close
containingTypeName: DbDataReader
cancellationTokens:
enabled: true
scanMethodBody: true
scanForMissingAsyncMembers:
- all: true
registerPlugin:
- type: AsyncGenerator.Core.Plugins.NUnitPlugin
parameters:
- name: createNewTypes
value: true
assemblyName: AsyncGenerator.Core
- type: AsyncGenerator.Core.Plugins.TransactionScopeAsyncFlowAdder
assemblyName: AsyncGenerator.Core
methodRules:
- filters:
- containingTypeName: IAutoFlushEventListener
- containingTypeName: IFlushEventListener
- containingTypeName: IDeleteEventListener
- containingTypeName: ISaveOrUpdateEventListener
- containingTypeName: IPostCollectionRecreateEventListener
- containingTypeName: IPostCollectionRemoveEventListener
- containingTypeName: IPostCollectionUpdateEventListener
- containingTypeName: IPostDeleteEventListener
- containingTypeName: IPostInsertEventListener
- containingTypeName: IPostUpdateEventListener
- containingTypeName: IPreCollectionRecreateEventListener
- containingTypeName: IPreCollectionRemoveEventListener
- containingTypeName: IPreCollectionUpdateEventListener
- containingTypeName: IPreDeleteEventListener
- containingTypeName: IPreInsertEventListener
- containingTypeName: IPreLoadEventListener
- containingTypeName: IPreUpdateEventListener
name: EventListener
- filters:
- containingType: NHibernate.Cache.ICache
name: Get
- containingType: NHibernate.Cache.ICache
name: Put
- containingType: NHibernate.Cache.ICache
name: Remove
- containingType: NHibernate.Cache.ICache
name: Clear
- containingType: NHibernate.Cache.ICache
name: Lock
- containingType: NHibernate.Cache.ICache
name: Unlock
name: Cache
- filters:
- containingType: NHibernate.Action.IAfterTransactionCompletionProcess
- containingType: NHibernate.Action.IBeforeTransactionCompletionProcess
- containingType: NHibernate.Action.EntityAction
name: BeforeTransactionCompletionProcessImpl
name: TransactionCompletion
- filters:
- containingNamespace: NHibernate
- containingType: NHibernate.Tool.hbm2ddl.SchemaUpdate
- containingType: NHibernate.Tool.hbm2ddl.SchemaValidator
- containingType: NHibernate.Tool.hbm2ddl.SchemaExport
- containingType: NHibernate.Linq.DmlExtensionMethods
- containingType: NHibernate.Linq.InsertBuilder<TSource, TTarget>
- containingType: NHibernate.Linq.UpdateBuilder<TSource>
- containingType: NHibernate.Multi.IQueryBatch
name: PubliclyExposedType
- filters:
- hasAttributeName: ObsoleteAttribute
name: Obsolete
typeRules:
- filters:
- containingAssemblyName: NHibernate
name: NHibernateAssembly
- filters:
- name: TestCase
name: IsTestCase