@snowbridge/contract-types 0.4.4 → 0.4.5-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,4672 +3,6 @@
3
3
  > rm -rf src && rm -rf dist && cd ../../../contracts && forge build && cd ../web/packages/contract-types && pnpm typechain && tsc --build --force
4
4
 
5
5
  No files changed, compilation skipped
6
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
7
- --> src/upgrade/Gateway202602.sol:5:8
8
- |
9
- 5 | import "../Gateway.sol";
10
- | ^^^^^^^^^^^^^^^^
11
- |
12
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
13
-
14
- note[mixed-case-variable]: mutable variables should use mixedCase
15
- --> src/v2/IGateway.sol:23:30
16
- |
17
- 23 | function agentOf(bytes32 agentID) external view returns (address);
18
- | ^^^^^^^ help: consider using: `agentId`
19
- |
20
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
21
-
22
- note[mixed-case-variable]: mutable variables should use mixedCase
23
- --> src/v2/IGateway.sol:30:32
24
- |
25
- 30 | event AgentCreated(bytes32 agentID, address agent);
26
- | ^^^^^^^ help: consider using: `agentId`
27
- |
28
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
29
-
30
- note[mixed-case-function]: function names should use mixedCase
31
- --> src/v2/IGateway.sol:52:14
32
- |
33
- 52 | function v2_submit(
34
- | ^^^^^^^^^ help: consider using: `v2Submit`
35
- |
36
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
37
-
38
- note[mixed-case-function]: function names should use mixedCase
39
- --> src/v2/IGateway.sol:82:14
40
- |
41
- 82 | function v2_sendMessage(
42
- | ^^^^^^^^^^^^^^ help: consider using: `v2SendMessage`
43
- |
44
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
45
-
46
- note[mixed-case-function]: function names should use mixedCase
47
- --> src/v2/IGateway.sol:97:14
48
- |
49
- 97 | function v2_registerToken(
50
- | ^^^^^^^^^^^^^^^^ help: consider using: `v2RegisterToken`
51
- |
52
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
53
-
54
- note[mixed-case-function]: function names should use mixedCase
55
- --> src/v2/IGateway.sol:106:14
56
- |
57
- 106 | function v2_createAgent(bytes32 id) external;
58
- | ^^^^^^^^^^^^^^ help: consider using: `v2CreateAgent`
59
- |
60
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
61
-
62
- note[mixed-case-function]: function names should use mixedCase
63
- --> src/v2/IGateway.sol:109:14
64
- |
65
- 109 | function v2_outboundNonce() external view returns (uint64);
66
- | ^^^^^^^^^^^^^^^^ help: consider using: `v2OutboundNonce`
67
- |
68
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
69
-
70
- note[mixed-case-function]: function names should use mixedCase
71
- --> src/v2/IGateway.sol:112:14
72
- |
73
- 112 | function v2_isDispatched(uint64 nonce) external view returns (bool);
74
- | ^^^^^^^^^^^^^^^ help: consider using: `v2IsDispatched`
75
- |
76
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
77
-
78
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
79
- --> src/upgrade/Gateway202509.sol:5:8
80
- |
81
- 5 | import "../Gateway.sol";
82
- | ^^^^^^^^^^^^^^^^
83
- |
84
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
85
-
86
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
87
- --> test/MMRProof.t.sol:35:26
88
- |
89
- 35 | fixtureData = vm.readFile(path).parseRaw("");
90
- | ^^^^^^^^
91
- |
92
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
93
-
94
- note[mixed-case-function]: function names should use mixedCase
95
- --> src/v1/Types.sol:13:10
96
- |
97
- 13 | function ParaIDEq(ParaID a, ParaID b) pure returns (bool) {
98
- | ^^^^^^^^ help: consider using: `paraIdEq`
99
- |
100
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
101
-
102
- note[mixed-case-function]: function names should use mixedCase
103
- --> src/v1/Types.sol:17:10
104
- |
105
- 17 | function ParaIDNe(ParaID a, ParaID b) pure returns (bool) {
106
- | ^^^^^^^^ help: consider using: `paraIdNe`
107
- |
108
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
109
-
110
- note[mixed-case-variable]: mutable variables should use mixedCase
111
- --> src/v1/Types.sol:21:22
112
- |
113
- 21 | function into(ParaID paraID) pure returns (ChannelID) {
114
- | ^^^^^^ help: consider using: `paraId`
115
- |
116
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
117
-
118
- note[mixed-case-function]: function names should use mixedCase
119
- --> src/v1/Types.sol:29:10
120
- |
121
- 29 | function ChannelIDEq(ChannelID a, ChannelID b) pure returns (bool) {
122
- | ^^^^^^^^^^^ help: consider using: `channelIdEq`
123
- |
124
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
125
-
126
- note[mixed-case-function]: function names should use mixedCase
127
- --> src/v1/Types.sol:33:10
128
- |
129
- 33 | function ChannelIDNe(ChannelID a, ChannelID b) pure returns (bool) {
130
- | ^^^^^^^^^^^ help: consider using: `channelIdNe`
131
- |
132
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
133
-
134
- note[mixed-case-variable]: mutable variables should use mixedCase
135
- --> src/v1/Types.sol:53:15
136
- |
137
- 53 | ChannelID channelID;
138
- | ^^^^^^^^^ help: consider using: `channelId`
139
- |
140
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
141
-
142
- note[mixed-case-variable]: mutable variables should use mixedCase
143
- --> src/v1/Types.sol:108:13
144
- |
145
- 108 | bytes32 agentID;
146
- | ^^^^^^^ help: consider using: `agentId`
147
- |
148
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
149
-
150
- note[mixed-case-variable]: mutable variables should use mixedCase
151
- --> src/v1/Types.sol:153:13
152
- |
153
- 153 | bytes32 agentID;
154
- | ^^^^^^^ help: consider using: `agentId`
155
- |
156
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
157
-
158
- note[mixed-case-variable]: mutable variables should use mixedCase
159
- --> src/v1/Types.sol:165:13
160
- |
161
- 165 | bytes32 foreignTokenID;
162
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
163
- |
164
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
165
-
166
- note[mixed-case-variable]: mutable variables should use mixedCase
167
- --> src/v1/Types.sol:177:13
168
- |
169
- 177 | bytes32 foreignTokenID;
170
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
171
- |
172
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
173
-
174
- note[mixed-case-variable]: mutable variables should use mixedCase
175
- --> src/Gateway.sol:249:47
176
- |
177
- 249 | function channelOperatingModeOf(ChannelID channelID) external view returns (OperatingMode) {
178
- | ^^^^^^^^^ help: consider using: `channelId`
179
- |
180
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
181
-
182
- note[mixed-case-variable]: mutable variables should use mixedCase
183
- --> src/Gateway.sol:253:40
184
- |
185
- 253 | function channelNoncesOf(ChannelID channelID) external view returns (uint64, uint64) {
186
- | ^^^^^^^^^ help: consider using: `channelId`
187
- |
188
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
189
-
190
- note[mixed-case-variable]: mutable variables should use mixedCase
191
- --> src/interfaces/IGatewayBase.sol:34:50
192
- |
193
- 34 | event ForeignTokenRegistered(bytes32 indexed tokenID, address token);
194
- | ^^^^^^^ help: consider using: `tokenId`
195
- |
196
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
197
-
198
- note[unused-import]: unused imports should be removed
199
- --> test/MMRProof.t.sol:5:9
200
- |
201
- 5 | import {console} from "forge-std/console.sol";
202
- | ^^^^^^^
203
- |
204
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
205
-
206
- note[unused-import]: unused imports should be removed
207
- --> src/v1/Types.sol:5:9
208
- |
209
- 5 | import {TokenInfo, OperatingMode} from "../types/Common.sol";
210
- | ^^^^^^^^^
211
- |
212
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
213
-
214
- note[unused-import]: unused imports should be removed
215
- --> src/v1/Types.sol:6:9
216
- |
217
- 6 | import {MultiAddress} from "./MultiAddress.sol";
218
- | ^^^^^^^^^^^^
219
- |
220
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
221
-
222
- note[mixed-case-variable]: mutable variables should use mixedCase
223
- --> src/Gateway.sol:257:30
224
- |
225
- 257 | function agentOf(bytes32 agentID)
226
- | ^^^^^^^ help: consider using: `agentId`
227
- |
228
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
229
-
230
- note[mixed-case-function]: function names should use mixedCase
231
- --> src/Gateway.sol:287:14
232
- |
233
- 287 | function queryForeignTokenID(address token) external view returns (bytes32) {
234
- | ^^^^^^^^^^^^^^^^^^^ help: consider using: `queryForeignTokenId`
235
- |
236
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
237
-
238
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
239
- --> test/mocks/BeefyClientMock.sol:6:8
240
- |
241
- 6 | import "forge-std/console.sol";
242
- | ^^^^^^^^^^^^^^^^^^^^^^^
243
- |
244
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
245
-
246
- note[unused-import]: unused imports should be removed
247
- --> src/Initializer.sol:5:9
248
- |
249
- 5 | import {AgentExecutor} from "./AgentExecutor.sol";
250
- | ^^^^^^^^^^^^^
251
- |
252
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
253
-
254
- note[unused-import]: unused imports should be removed
255
- --> src/Initializer.sol:7:24
256
- |
257
- 7 | import {OperatingMode, ParaID, TokenInfo, Channel, ChannelID} from "./Types.sol";
258
- | ^^^^^^
259
- |
260
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
261
-
262
- note[unused-import]: unused imports should be removed
263
- --> src/Initializer.sol:7:52
264
- |
265
- 7 | import {OperatingMode, ParaID, TokenInfo, Channel, ChannelID} from "./Types.sol";
266
- | ^^^^^^^^^
267
- |
268
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
269
-
270
- note[unused-import]: unused imports should be removed
271
- --> src/Initializer.sol:16:18
272
- |
273
- 16 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
274
- | ^^^^^^^
275
- |
276
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
277
-
278
- note[unused-import]: unused imports should be removed
279
- --> src/Initializer.sol:16:27
280
- |
281
- 16 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
282
- | ^^^^^^^
283
- |
284
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
285
-
286
- note[mixed-case-function]: function names should use mixedCase
287
- --> src/v2/Calls.sol:139:14
288
- |
289
- 139 | function _handleAssetERC20(address token, uint128 amount) internal returns (Asset memory) {
290
- | ^^^^^^^^^^^^^^^^^ help: consider using: `_handleAssetErc20`
291
- |
292
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
293
-
294
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
295
- --> src/interfaces/IERC20Metadata.sol:7:8
296
- |
297
- 7 | import "./IERC20.sol";
298
- | ^^^^^^^^^^^^^^
299
- |
300
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
301
-
302
- note[mixed-case-variable]: mutable variables should use mixedCase
303
- --> src/v1/Handlers.sol:119:41
304
- |
305
- 119 | function mintForeignToken(ChannelID channelID, bytes calldata data) external {
306
- | ^^^^^^^^^ help: consider using: `channelId`
307
- |
308
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
309
-
310
- note[mixed-case-function]: function names should use mixedCase
311
- --> test/mocks/BeefyClientMock.sol:29:14
312
- |
313
- 29 | function encodeCommitment_public(Commitment calldata commitment)
314
- | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `encodeCommitmentPublic`
315
- |
316
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
317
-
318
- note[mixed-case-function]: function names should use mixedCase
319
- --> test/mocks/BeefyClientMock.sol:45:14
320
- |
321
- 45 | function initialize_public(
322
- | ^^^^^^^^^^^^^^^^^ help: consider using: `initializePublic`
323
- |
324
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
325
-
326
- note[unused-import]: unused imports should be removed
327
- --> src/v1/Handlers.sol:13:9
328
- |
329
- 13 | import {AgentExecutor} from "../AgentExecutor.sol";
330
- | ^^^^^^^^^^^^^
331
- |
332
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
333
-
334
- note[unused-import]: unused imports should be removed
335
- --> src/l2-integration/SnowbridgeL1Adaptor.sol:7:21
336
- |
337
- 7 | import {ISpokePool, IMessageHandler} from "./interfaces/ISpokePool.sol";
338
- | ^^^^^^^^^^^^^^^
339
- |
340
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
341
-
342
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
343
- --> test/Math.t.sol:4:8
344
- |
345
- 4 | import "forge-std/Test.sol";
346
- | ^^^^^^^^^^^^^^^^^^^^
347
- |
348
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
349
-
350
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
351
- --> test/Math.t.sol:5:8
352
- |
353
- 5 | import "forge-std/console.sol";
354
- | ^^^^^^^^^^^^^^^^^^^^^^^
355
- |
356
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
357
-
358
- note[mixed-case-function]: function names should use mixedCase
359
- --> test/mocks/BeefyClientMock.sol:89:14
360
- |
361
- 89 | function computeNumRequiredSignatures_public(
362
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `computeNumRequiredSignaturesPublic`
363
- |
364
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
365
-
366
- note[mixed-case-function]: function names should use mixedCase
367
- --> test/mocks/BeefyClientMock.sol:97:14
368
- |
369
- 97 | function computeQuorum_public(uint256 numValidators) public pure returns (uint256) {
370
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `computeQuorumPublic`
371
- |
372
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
373
-
374
- note[mixed-case-function]: function names should use mixedCase
375
- --> test/mocks/BeefyClientMock.sol:101:14
376
- |
377
- 101 | function computeMaxRequiredSignatures_public(uint256 numValidators)
378
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `computeMaxRequiredSignaturesPublic`
379
- |
380
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
381
-
382
- note[mixed-case-function]: function names should use mixedCase
383
- --> test/mocks/BeefyClientMock.sol:113:14
384
- |
385
- 113 | function createTicketID_public(address relayer, bytes32 commitmentHash)
386
- | ^^^^^^^^^^^^^^^^^^^^^ help: consider using: `createTicketIdPublic`
387
- |
388
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
389
-
390
- note[unused-import]: unused imports should be removed
391
- --> test/mocks/BeefyClientMock.sol:5:9
392
- |
393
- 5 | import {Uint16Array, createUint16Array} from "../../src/utils/Uint16Array.sol";
394
- | ^^^^^^^^^^^
395
- |
396
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
397
-
398
- note[unused-import]: unused imports should be removed
399
- --> src/l2-integration/SnowbridgeL1Adaptor.sol:8:24
400
- |
401
- 8 | import {DepositParams, Instructions, Call} from "./Types.sol";
402
- | ^^^^^^^^^^^^
403
- |
404
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
405
-
406
- note[unused-import]: unused imports should be removed
407
- --> src/l2-integration/SnowbridgeL1Adaptor.sol:8:38
408
- |
409
- 8 | import {DepositParams, Instructions, Call} from "./Types.sol";
410
- | ^^^^
411
- |
412
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
413
-
414
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
415
- --> src/utils/Uint16Array.sol:67:20
416
- |
417
- 67 | uint8 inside = uint8(index) & 0x0F;
418
- | ^^^^^^^^^^^^
419
- |
420
- = note: consider disabling this lint if you're certain the cast is safe
421
-
422
- // casting to 'uint8' is safe because [explain why]
423
- // forge-lint: disable-next-line(unsafe-typecast)
424
-
425
-
426
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
427
-
428
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
429
- --> src/utils/Uint16Array.sol:86:20
430
- |
431
- 86 | uint8 inside = uint8(index) & 0x0F;
432
- | ^^^^^^^^^^^^
433
- |
434
- = note: consider disabling this lint if you're certain the cast is safe
435
-
436
- // casting to 'uint8' is safe because [explain why]
437
- // forge-lint: disable-next-line(unsafe-typecast)
438
-
439
-
440
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
441
-
442
- note[unused-import]: unused imports should be removed
443
- --> src/v2/Calls.sol:29:9
444
- |
445
- 29 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
446
- | ^^^^^^^
447
- |
448
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
449
-
450
- note[unused-import]: unused imports should be removed
451
- --> src/v2/Calls.sol:29:18
452
- |
453
- 29 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
454
- | ^^^^^^^
455
- |
456
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
457
-
458
- note[unused-import]: unused imports should be removed
459
- --> src/v2/Calls.sol:29:27
460
- |
461
- 29 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
462
- | ^^^^^^^
463
- |
464
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
465
-
466
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
467
- --> test/mocks/FeeOnTransferToken.sol:8:30
468
- |
469
- 8 | uint256 public immutable feeBps;
470
- | ^^^^^^ help: consider using: `FEE_BPS`
471
- |
472
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
473
-
474
- note[pascal-case-struct]: structs should use PascalCase
475
- --> src/Verification.sol:24:12
476
- |
477
- 24 | struct MMRLeafPartial {
478
- | ^^^^^^^^^^^^^^ help: consider using: `MmrLeafPartial`
479
- |
480
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#pascal-case-struct
481
-
482
- note[mixed-case-variable]: mutable variables should use mixedCase
483
- --> src/Verification.sol:28:16
484
- |
485
- 28 | uint64 nextAuthoritySetID;
486
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `nextAuthoritySetId`
487
- |
488
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
489
-
490
- note[mixed-case-variable]: mutable variables should use mixedCase
491
- --> src/Verification.sol:51:16
492
- |
493
- 51 | bytes4 consensusEngineID;
494
- | ^^^^^^^^^^^^^^^^^ help: consider using: `consensusEngineId`
495
- |
496
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
497
-
498
- note[mixed-case-variable]: mutable variables should use mixedCase
499
- --> src/Gateway.sol:314:37
500
- |
501
- 314 | function tokenAddressOf(bytes32 tokenID) external view returns (address) {
502
- | ^^^^^^^ help: consider using: `tokenId`
503
- |
504
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
505
-
506
- note[mixed-case-function]: function names should use mixedCase
507
- --> src/Gateway.sol:323:14
508
- |
509
- 323 | function v1_handleAgentExecute(bytes calldata data) external onlySelf {
510
- | ^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleAgentExecute`
511
- |
512
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
513
-
514
- note[mixed-case-function]: function names should use mixedCase
515
- --> src/Gateway.sol:328:14
516
- |
517
- 328 | function v1_handleUpgrade(bytes calldata data) external onlySelf {
518
- | ^^^^^^^^^^^^^^^^ help: consider using: `v1HandleUpgrade`
519
- |
520
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
521
-
522
- note[mixed-case-function]: function names should use mixedCase
523
- --> src/Gateway.sol:333:14
524
- |
525
- 333 | function v1_handleSetOperatingMode(bytes calldata data) external onlySelf {
526
- | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetOperatingMode`
527
- |
528
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
529
-
530
- note[mixed-case-function]: function names should use mixedCase
531
- --> src/Gateway.sol:338:14
532
- |
533
- 338 | function v1_handleSetTokenTransferFees(bytes calldata data) external onlySelf {
534
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetTokenTransferFees`
535
- |
536
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
537
-
538
- note[mixed-case-function]: function names should use mixedCase
539
- --> src/Gateway.sol:343:14
540
- |
541
- 343 | function v1_handleSetPricingParameters(bytes calldata data) external onlySelf {
542
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetPricingParameters`
543
- |
544
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
545
-
546
- note[mixed-case-function]: function names should use mixedCase
547
- --> src/Gateway.sol:348:14
548
- |
549
- 348 | function v1_handleUnlockNativeToken(bytes calldata data) external onlySelf {
550
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleUnlockNativeToken`
551
- |
552
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
553
-
554
- note[mixed-case-function]: function names should use mixedCase
555
- --> src/Gateway.sol:353:14
556
- |
557
- 353 | function v1_handleRegisterForeignToken(bytes calldata data) external onlySelf {
558
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleRegisterForeignToken`
559
- |
560
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
561
-
562
- note[mixed-case-function]: function names should use mixedCase
563
- --> src/Gateway.sol:358:14
564
- |
565
- 358 | function v1_handleMintForeignToken(ChannelID channelID, bytes calldata data)
566
- | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleMintForeignToken`
567
- |
568
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
569
-
570
- note[mixed-case-variable]: mutable variables should use mixedCase
571
- --> src/Gateway.sol:358:50
572
- |
573
- 358 | function v1_handleMintForeignToken(ChannelID channelID, bytes calldata data)
574
- | ^^^^^^^^^ help: consider using: `channelId`
575
- |
576
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
577
-
578
- note[mixed-case-function]: function names should use mixedCase
579
- --> src/Gateway.sol:384:14
580
- |
581
- 384 | function v1_transactionBaseGas() internal pure returns (uint256) {
582
- | ^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1TransactionBaseGas`
583
- |
584
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
585
-
586
- note[mixed-case-function]: function names should use mixedCase
587
- --> src/Gateway.sol:400:14
588
- |
589
- 400 | function v2_submit(
590
- | ^^^^^^^^^ help: consider using: `v2Submit`
591
- |
592
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
593
-
594
- note[mixed-case-function]: function names should use mixedCase
595
- --> src/Gateway.sol:437:14
596
- |
597
- 437 | function v2_outboundNonce() external view returns (uint64) {
598
- | ^^^^^^^^^^^^^^^^ help: consider using: `v2OutboundNonce`
599
- |
600
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
601
-
602
- note[mixed-case-function]: function names should use mixedCase
603
- --> src/Gateway.sol:441:14
604
- |
605
- 441 | function v2_isDispatched(uint64 nonce) external view returns (bool) {
606
- | ^^^^^^^^^^^^^^^ help: consider using: `v2IsDispatched`
607
- |
608
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
609
-
610
- note[mixed-case-function]: function names should use mixedCase
611
- --> src/Gateway.sol:446:14
612
- |
613
- 446 | function v2_sendMessage(
614
- | ^^^^^^^^^^^^^^ help: consider using: `v2SendMessage`
615
- |
616
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
617
-
618
- note[mixed-case-function]: function names should use mixedCase
619
- --> src/Gateway.sol:457:14
620
- |
621
- 457 | function v2_registerToken(
622
- | ^^^^^^^^^^^^^^^^ help: consider using: `v2RegisterToken`
623
- |
624
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
625
-
626
- note[mixed-case-function]: function names should use mixedCase
627
- --> src/Gateway.sol:468:14
628
- |
629
- 468 | function v2_createAgent(bytes32 id) external {
630
- | ^^^^^^^^^^^^^^ help: consider using: `v2CreateAgent`
631
- |
632
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
633
-
634
- note[mixed-case-function]: function names should use mixedCase
635
- --> src/Gateway.sol:476:14
636
- |
637
- 476 | function v2_dispatch(CommandV2[] calldata commands, bytes32 origin, uint64 nonce)
638
- | ^^^^^^^^^^^ help: consider using: `v2Dispatch`
639
- |
640
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
641
-
642
- note[mixed-case-function]: function names should use mixedCase
643
- --> src/Gateway.sol:499:14
644
- |
645
- 499 | function v2_dispatchCommand(CommandV2 calldata command, bytes32 origin)
646
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `v2DispatchCommand`
647
- |
648
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
649
-
650
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
651
- --> src/utils/ScaleCodec.sol:114:37
652
- |
653
- 114 | return abi.encodePacked(uint8(value << 2));
654
- | ^^^^^^^^^^^^^^^^^
655
- |
656
- = note: consider disabling this lint if you're certain the cast is safe
657
-
658
- // casting to 'uint8' is safe because [explain why]
659
- // forge-lint: disable-next-line(unsafe-typecast)
660
-
661
-
662
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
663
-
664
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
665
- --> src/utils/ScaleCodec.sol:131:37
666
- |
667
- 131 | return abi.encodePacked(uint8(value << 2));
668
- | ^^^^^^^^^^^^^^^^^
669
- |
670
- = note: consider disabling this lint if you're certain the cast is safe
671
-
672
- // casting to 'uint8' is safe because [explain why]
673
- // forge-lint: disable-next-line(unsafe-typecast)
674
-
675
-
676
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
677
-
678
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
679
- --> src/utils/ScaleCodec.sol:138:30
680
- |
681
- 138 | uint16 encoded = uint16(value << 2) | 0x01;
682
- | ^^^^^^^^^^^^^^^^^^
683
- |
684
- = note: consider disabling this lint if you're certain the cast is safe
685
-
686
- // casting to 'uint16' is safe because [explain why]
687
- // forge-lint: disable-next-line(unsafe-typecast)
688
-
689
-
690
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
691
-
692
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
693
- --> src/utils/ScaleCodec.sol:147:31
694
- |
695
- 147 | uint32 encoded = (uint32(value) << 2) | 0x02;
696
- | ^^^^^^^^^^^^^
697
- |
698
- = note: consider disabling this lint if you're certain the cast is safe
699
-
700
- // casting to 'uint32' is safe because [explain why]
701
- // forge-lint: disable-next-line(unsafe-typecast)
702
-
703
-
704
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
705
-
706
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
707
- --> src/utils/ScaleCodec.sol:180:29
708
- |
709
- 180 | buf[i] = bytes1(uint8(current & 0xFF));
710
- | ^^^^^^^^^^^^^^^^^^^^^
711
- |
712
- = note: consider disabling this lint if you're certain the cast is safe
713
-
714
- // casting to 'uint8' is safe because [explain why]
715
- // forge-lint: disable-next-line(unsafe-typecast)
716
-
717
-
718
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
719
-
720
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
721
- --> src/utils/ScaleCodec.sol:199:33
722
- |
723
- 199 | return encodeCompactU32(uint32(value));
724
- | ^^^^^^^^^^^^^
725
- |
726
- = note: consider disabling this lint if you're certain the cast is safe
727
-
728
- // casting to 'uint32' is safe because [explain why]
729
- // forge-lint: disable-next-line(unsafe-typecast)
730
-
731
-
732
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
733
-
734
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
735
- --> test/Uint16Array.t.sol:4:8
736
- |
737
- 4 | import "forge-std/Test.sol";
738
- | ^^^^^^^^^^^^^^^^^^^^
739
- |
740
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
741
-
742
- note[mixed-case-variable]: mutable variables should use mixedCase
743
- --> src/Verification.sol:108:16
744
- |
745
- 108 | bytes4 encodedParaID,
746
- | ^^^^^^^^^^^^^ help: consider using: `encodedParaId`
747
- |
748
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
749
-
750
- note[mixed-case-function]: function names should use mixedCase
751
- --> test/mocks/MockGateway.sol:27:14
752
- |
753
- 27 | function v1_handleAgentExecute_public(bytes calldata params) external {
754
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleAgentExecutePublic`
755
- |
756
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
757
-
758
- note[mixed-case-function]: function names should use mixedCase
759
- --> test/mocks/MockGateway.sol:31:14
760
- |
761
- 31 | function v1_handleUpgrade_public(bytes calldata params) external {
762
- | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleUpgradePublic`
763
- |
764
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
765
-
766
- note[mixed-case-function]: function names should use mixedCase
767
- --> test/mocks/MockGateway.sol:35:14
768
- |
769
- 35 | function v1_handleSetOperatingMode_public(bytes calldata params) external {
770
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetOperatingModePublic`
771
- |
772
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
773
-
774
- note[mixed-case-function]: function names should use mixedCase
775
- --> test/mocks/MockGateway.sol:39:14
776
- |
777
- 39 | function v1_handleSetTokenTransferFees_public(bytes calldata params) external {
778
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetTokenTransferFeesPublic`
779
- |
780
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
781
-
782
- note[mixed-case-function]: function names should use mixedCase
783
- --> test/mocks/MockGateway.sol:43:14
784
- |
785
- 43 | function v1_handleSetPricingParameters_public(bytes calldata params) external {
786
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleSetPricingParametersPublic`
787
- |
788
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
789
-
790
- note[mixed-case-variable]: mutable variables should use mixedCase
791
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:38:17
792
- |
793
- 38 | address L2_SPOKE_POOL_ADDRESS;
794
- | ^^^^^^^^^^^^^^^^^^^^^ help: consider using: `l2SpokePoolAddress`
795
- |
796
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
797
-
798
- note[mixed-case-variable]: mutable variables should use mixedCase
799
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:39:17
800
- |
801
- 39 | address MULTI_CALL_HANDLER_ADDRESS;
802
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `multiCallHandlerAddress`
803
- |
804
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
805
-
806
- note[mixed-case-variable]: mutable variables should use mixedCase
807
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:40:17
808
- |
809
- 40 | address GATEWAY_V2_ADDRESS;
810
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `gatewayV2Address`
811
- |
812
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
813
-
814
- note[mixed-case-variable]: mutable variables should use mixedCase
815
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:41:17
816
- |
817
- 41 | address WETH9_ADDRESS;
818
- | ^^^^^^^^^^^^^ help: consider using: `weth9Address`
819
- |
820
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
821
-
822
- note[mixed-case-variable]: mutable variables should use mixedCase
823
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:42:17
824
- |
825
- 42 | address L2_WETH9_ADDRESS;
826
- | ^^^^^^^^^^^^^^^^ help: consider using: `l2Weth9Address`
827
- |
828
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
829
-
830
- note[mixed-case-variable]: mutable variables should use mixedCase
831
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:43:17
832
- |
833
- 43 | address UNISWAP_ROUTER_ADDRESS;
834
- | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `uniswapRouterAddress`
835
- |
836
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
837
-
838
- warning[incorrect-shift]: the order of args in a shift operation is incorrect
839
- --> src/utils/SparseBitmap.sol:12:20
840
- |
841
- 12 | uint256 mask = 1 << (index & 0xff);
842
- | ^^^^^^^^^^^^^^^^^^^
843
- |
844
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#incorrect-shift
845
-
846
- warning[incorrect-shift]: the order of args in a shift operation is incorrect
847
- --> src/utils/SparseBitmap.sol:18:20
848
- |
849
- 18 | uint256 mask = 1 << (index & 0xff);
850
- | ^^^^^^^^^^^^^^^^^^^
851
- |
852
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#incorrect-shift
853
-
854
- note[unused-import]: unused imports should be removed
855
- --> src/Gateway.sol:8:9
856
- |
857
- 8 | import {AgentExecutor} from "./AgentExecutor.sol";
858
- | ^^^^^^^^^^^^^
859
- |
860
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
861
-
862
- note[unused-import]: unused imports should be removed
863
- --> src/Gateway.sol:29:9
864
- |
865
- 29 | import {Upgrade} from "./Upgrade.sol";
866
- | ^^^^^^^
867
- |
868
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
869
-
870
- note[unused-import]: unused imports should be removed
871
- --> src/Gateway.sol:41:9
872
- |
873
- 41 | import {PricingStorage} from "./storage/PricingStorage.sol";
874
- | ^^^^^^^^^^^^^^
875
- |
876
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
877
-
878
- note[unused-import]: unused imports should be removed
879
- --> src/Gateway.sol:44:18
880
- |
881
- 44 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
882
- | ^^^^^^^
883
- |
884
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
885
-
886
- note[unused-import]: unused imports should be removed
887
- --> src/Gateway.sol:44:27
888
- |
889
- 44 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
890
- | ^^^^^^^
891
- |
892
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
893
-
894
- note[unwrapped-modifier-logic]: wrap modifier logic to reduce code size
895
- --> src/Gateway.sol:57:5
896
- |
897
- 57 | / modifier onlySelf() {
898
- 58 | | if (msg.sender != address(this)) {
899
- 59 | | revert IGatewayBase.Unauthorized();
900
- ... |
901
- 62 | | }
902
- | |_____^
903
- |
904
- help: wrap modifier logic to reduce code size
905
- |
906
- 57 ~ modifier onlySelf() {
907
- 58 + _onlySelf();
908
- 59 + _;
909
- 60 + }
910
- 61 +
911
- 62 + function _onlySelf() internal {
912
- 63 + if (msg.sender != address(this)) {
913
- 64 + revert IGatewayBase.Unauthorized();
914
- 65 + }
915
- 66 + }
916
- |
917
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unwrapped-modifier-logic
918
-
919
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
920
- --> src/Gateway.sol:158:28
921
- |
922
- 158 | bytes32 leafHash = keccak256(abi.encode(message));
923
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
924
- |
925
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
926
-
927
- note[unused-import]: unused imports should be removed
928
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:7:5
929
- |
930
- 7 | SPOKE_POOL as SEPOLIA_SPOKE_POOL,
931
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
932
- |
933
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
934
-
935
- note[unused-import]: unused imports should be removed
936
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL2Adaptor.s.sol:17:5
937
- |
938
- 17 | SPOKE_POOL as MAINNET_SPOKE_POOL,
939
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
940
- |
941
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
942
-
943
- note[mixed-case-function]: function names should use mixedCase
944
- --> test/mocks/MockGateway.sol:47:14
945
- |
946
- 47 | function v1_handleUnlockNativeToken_public(bytes calldata params) external {
947
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleUnlockNativeTokenPublic`
948
- |
949
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
950
-
951
- note[mixed-case-function]: function names should use mixedCase
952
- --> test/mocks/MockGateway.sol:51:14
953
- |
954
- 51 | function v1_handleRegisterForeignToken_public(bytes calldata params) external {
955
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleRegisterForeignTokenPublic`
956
- |
957
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
958
-
959
- note[mixed-case-function]: function names should use mixedCase
960
- --> test/mocks/MockGateway.sol:55:14
961
- |
962
- 55 | function v1_handleMintForeignToken_public(ChannelID channelID, bytes calldata params)
963
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `v1HandleMintForeignTokenPublic`
964
- |
965
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
966
-
967
- note[mixed-case-variable]: mutable variables should use mixedCase
968
- --> test/mocks/MockGateway.sol:55:57
969
- |
970
- 55 | function v1_handleMintForeignToken_public(ChannelID channelID, bytes calldata params)
971
- | ^^^^^^^^^ help: consider using: `channelId`
972
- |
973
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
974
-
975
- note[mixed-case-function]: function names should use mixedCase
976
- --> test/mocks/MockGateway.sol:65:14
977
- |
978
- 65 | function prank_registerNativeToken(address token) external {
979
- | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `prankRegisterNativeToken`
980
- |
981
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
982
-
983
- note[mixed-case-function]: function names should use mixedCase
984
- --> test/mocks/MockGateway.sol:69:14
985
- |
986
- 69 | function prank_registerForeignToken(
987
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `prankRegisterForeignToken`
988
- |
989
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
990
-
991
- note[mixed-case-variable]: mutable variables should use mixedCase
992
- --> test/mocks/MockGateway.sol:70:17
993
- |
994
- 70 | bytes32 foreignTokenID,
995
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
996
- |
997
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
998
-
999
- note[mixed-case-variable]: mutable variables should use mixedCase
1000
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:40:17
1001
- |
1002
- 40 | address USDC_ADDRESS;
1003
- | ^^^^^^^^^^^^ help: consider using: `usdcAddress`
1004
- |
1005
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1006
-
1007
- note[mixed-case-variable]: mutable variables should use mixedCase
1008
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:41:17
1009
- |
1010
- 41 | address L2_USDC_ADDRESS;
1011
- | ^^^^^^^^^^^^^^^ help: consider using: `l2UsdcAddress`
1012
- |
1013
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1014
-
1015
- note[mixed-case-variable]: mutable variables should use mixedCase
1016
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:42:17
1017
- |
1018
- 42 | uint256 L2_CHAIN_ID;
1019
- | ^^^^^^^^^^^ help: consider using: `l2ChainId`
1020
- |
1021
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1022
-
1023
- note[mixed-case-variable]: mutable variables should use mixedCase
1024
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:43:16
1025
- |
1026
- 43 | uint32 TIME_BUFFER;
1027
- | ^^^^^^^^^^^ help: consider using: `timeBuffer`
1028
- |
1029
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1030
-
1031
- note[unused-import]: unused imports should be removed
1032
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:4:17
1033
- |
1034
- 4 | import {Script, console} from "forge-std/Script.sol";
1035
- | ^^^^^^^
1036
- |
1037
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1038
-
1039
- note[unused-import]: unused imports should be removed
1040
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:8:9
1041
- |
1042
- 8 | import {ISpokePool} from "../../../../src/l2-integration/interfaces/ISpokePool.sol";
1043
- | ^^^^^^^^^^
1044
- |
1045
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1046
-
1047
- note[unused-import]: unused imports should be removed
1048
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:9:24
1049
- |
1050
- 9 | import {DepositParams, SendParams} from "../../../../src/l2-integration/Types.sol";
1051
- | ^^^^^^^^^^
1052
- |
1053
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1054
-
1055
- note[unused-import]: unused imports should be removed
1056
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:14:5
1057
- |
1058
- 14 | CHAIN_ID as SEPOLIA_CHAIN_ID,
1059
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1060
- |
1061
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1062
-
1063
- note[unused-import]: unused imports should be removed
1064
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:19:5
1065
- |
1066
- 19 | ARBITRUM_WETH9 as SEPOLIA_ARBITRUM_WETH9
1067
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1068
- |
1069
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1070
-
1071
- note[unused-import]: unused imports should be removed
1072
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:24:5
1073
- |
1074
- 24 | CHAIN_ID as MAINNET_CHAIN_ID,
1075
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1076
- |
1077
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1078
-
1079
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
1080
- --> scripts/l2-integration/across/test/TestSnowbridgeL1Adaptor.s.sol:100:9
1081
- |
1082
- 100 | IERC20(params.inputToken).transfer(l1SnowbridgeAdaptor, params.inputAmount);
1083
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1084
- |
1085
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
1086
-
1087
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1088
- --> src/v2/Types.sol:28:20
1089
- |
1090
- 28 | uint8 constant Upgrade = 0;
1091
- | ^^^^^^^ help: consider using: `UPGRADE`
1092
- |
1093
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1094
-
1095
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1096
- --> src/v2/Types.sol:30:20
1097
- |
1098
- 30 | uint8 constant SetOperatingMode = 1;
1099
- | ^^^^^^^^^^^^^^^^ help: consider using: `SET_OPERATING_MODE`
1100
- |
1101
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1102
-
1103
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1104
- --> src/v2/Types.sol:32:20
1105
- |
1106
- 32 | uint8 constant UnlockNativeToken = 2;
1107
- | ^^^^^^^^^^^^^^^^^ help: consider using: `UNLOCK_NATIVE_TOKEN`
1108
- |
1109
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1110
-
1111
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1112
- --> src/v2/Types.sol:34:20
1113
- |
1114
- 34 | uint8 constant RegisterForeignToken = 3;
1115
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `REGISTER_FOREIGN_TOKEN`
1116
- |
1117
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1118
-
1119
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1120
- --> src/v2/Types.sol:36:20
1121
- |
1122
- 36 | uint8 constant MintForeignToken = 4;
1123
- | ^^^^^^^^^^^^^^^^ help: consider using: `MINT_FOREIGN_TOKEN`
1124
- |
1125
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1126
-
1127
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1128
- --> src/v2/Types.sol:38:20
1129
- |
1130
- 38 | uint8 constant CallContract = 5;
1131
- | ^^^^^^^^^^^^ help: consider using: `CALL_CONTRACT`
1132
- |
1133
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1134
-
1135
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1136
- --> src/v2/Types.sol:68:20
1137
- |
1138
- 68 | uint8 constant Raw = 0;
1139
- | ^^^ help: consider using: `RAW`
1140
- |
1141
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1142
-
1143
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1144
- --> src/v2/Types.sol:70:20
1145
- |
1146
- 70 | uint8 constant CreateAsset = 1;
1147
- | ^^^^^^^^^^^ help: consider using: `CREATE_ASSET`
1148
- |
1149
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1150
-
1151
- note[mixed-case-function]: function names should use mixedCase
1152
- --> src/v2/Types.sol:81:10
1153
- |
1154
- 81 | function makeRawXCM(bytes memory xcm) pure returns (Xcm memory) {
1155
- | ^^^^^^^^^^ help: consider using: `makeRawXcm`
1156
- |
1157
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
1158
-
1159
- note[mixed-case-function]: function names should use mixedCase
1160
- --> src/v2/Types.sol:85:10
1161
- |
1162
- 85 | function makeCreateAssetXCM(address token, Network network) pure returns (Xcm memory) {
1163
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `makeCreateAssetXcm`
1164
- |
1165
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
1166
-
1167
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1168
- --> src/v2/Types.sol:98:20
1169
- |
1170
- 98 | uint8 constant NativeTokenERC20 = 0;
1171
- | ^^^^^^^^^^^^^^^^ help: consider using: `NATIVE_TOKEN_ERC20`
1172
- |
1173
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1174
-
1175
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1176
- --> src/v2/Types.sol:99:20
1177
- |
1178
- 99 | uint8 constant ForeignTokenERC20 = 1;
1179
- | ^^^^^^^^^^^^^^^^^ help: consider using: `FOREIGN_TOKEN_ERC20`
1180
- |
1181
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1182
-
1183
- note[pascal-case-struct]: structs should use PascalCase
1184
- --> src/v2/Types.sol:103:8
1185
- |
1186
- 103 | struct AsNativeTokenERC20 {
1187
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `AsNativeTokenErc20`
1188
- |
1189
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#pascal-case-struct
1190
-
1191
- note[pascal-case-struct]: structs should use PascalCase
1192
- --> src/v2/Types.sol:109:8
1193
- |
1194
- 109 | struct AsForeignTokenERC20 {
1195
- | ^^^^^^^^^^^^^^^^^^^ help: consider using: `AsForeignTokenErc20`
1196
- |
1197
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#pascal-case-struct
1198
-
1199
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1200
- --> test/Uint16Array.t.sol:5:8
1201
- |
1202
- 5 | import "forge-std/console.sol";
1203
- | ^^^^^^^^^^^^^^^^^^^^^^^
1204
- |
1205
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1206
-
1207
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
1208
- --> src/Gateway.sol:412:28
1209
- |
1210
- 412 | bytes32 leafHash = keccak256(abi.encode(message));
1211
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1212
- |
1213
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
1214
-
1215
- warning[incorrect-shift]: the order of args in a shift operation is incorrect
1216
- --> src/utils/Math.sol:82:60
1217
- |
1218
- 82 | return result + (unsignedRoundsUp(rounding) && 1 << result < value ? 1 : 0);
1219
- | ^^^^^^^^^^^
1220
- |
1221
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#incorrect-shift
1222
-
1223
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
1224
- --> src/Token.sol:17:30
1225
- |
1226
- 17 | address public immutable gateway;
1227
- | ^^^^^^^ help: consider using: `GATEWAY`
1228
- |
1229
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
1230
-
1231
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
1232
- --> src/Token.sol:18:28
1233
- |
1234
- 18 | uint8 public immutable decimals;
1235
- | ^^^^^^^^ help: consider using: `DECIMALS`
1236
- |
1237
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
1238
-
1239
- note[mixed-case-variable]: mutable variables should use mixedCase
1240
- --> src/Verification.sol:205:53
1241
- |
1242
- 205 | function createParachainHeaderMerkleLeaf(bytes4 encodedParaID, ParachainHeader calldata header)
1243
- | ^^^^^^^^^^^^^ help: consider using: `encodedParaId`
1244
- |
1245
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1246
-
1247
- note[mixed-case-variable]: mutable variables should use mixedCase
1248
- --> src/Verification.sol:214:43
1249
- |
1250
- 214 | function createParachainHeader(bytes4 encodedParaID, ParachainHeader calldata header)
1251
- | ^^^^^^^^^^^^^ help: consider using: `encodedParaId`
1252
- |
1253
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1254
-
1255
- note[mixed-case-function]: function names should use mixedCase
1256
- --> src/Verification.sol:243:14
1257
- |
1258
- 243 | function createMMRLeaf(MMRLeafPartial memory leaf, bytes32 parachainHeadsRoot)
1259
- | ^^^^^^^^^^^^^ help: consider using: `createMmrLeaf`
1260
- |
1261
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
1262
-
1263
- note[mixed-case-variable]: mutable variables should use mixedCase
1264
- --> test/Uint16Array.t.sol:98:16
1265
- |
1266
- 98 | uint16 new_value = counters.get(index);
1267
- | ^^^^^^^^^ help: consider using: `newValue`
1268
- |
1269
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1270
-
1271
- note[unused-import]: unused imports should be removed
1272
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:4:17
1273
- |
1274
- 4 | import {Script, console} from "forge-std/Script.sol";
1275
- | ^^^^^^^
1276
- |
1277
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1278
-
1279
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1280
- --> test/ScaleCodec.t.sol:4:8
1281
- |
1282
- 4 | import "forge-std/Test.sol";
1283
- | ^^^^^^^^^^^^^^^^^^^^
1284
- |
1285
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1286
-
1287
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1288
- --> test/ScaleCodec.t.sol:5:8
1289
- |
1290
- 5 | import "forge-std/console.sol";
1291
- | ^^^^^^^^^^^^^^^^^^^^^^^
1292
- |
1293
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1294
-
1295
- note[unused-import]: unused imports should be removed
1296
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:6:9
1297
- |
1298
- 6 | import {WETH9} from "canonical-weth/WETH9.sol";
1299
- | ^^^^^
1300
- |
1301
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1302
-
1303
- note[unused-import]: unused imports should be removed
1304
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:9:9
1305
- |
1306
- 9 | import {ISpokePool} from "../../../../src/l2-integration/interfaces/ISpokePool.sol";
1307
- | ^^^^^^^^^^
1308
- |
1309
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1310
-
1311
- note[unused-import]: unused imports should be removed
1312
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:18:5
1313
- |
1314
- 18 | BASE_CHAIN_ID as SEPOLIA_BASE_CHAIN_ID,
1315
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1316
- |
1317
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1318
-
1319
- note[unused-import]: unused imports should be removed
1320
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:20:5
1321
- |
1322
- 20 | BASE_WETH9 as SEPOLIA_BASE_WETH9,
1323
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1324
- |
1325
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1326
-
1327
- note[unused-import]: unused imports should be removed
1328
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:25:5
1329
- |
1330
- 25 | ARBITRUM_CHAIN_ID as SEPOLIA_ARBITRUM_CHAIN_ID,
1331
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1332
- |
1333
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1334
-
1335
- note[unused-import]: unused imports should be removed
1336
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:26:5
1337
- |
1338
- 26 | ARBITRUM_WETH9 as SEPOLIA_ARBITRUM_WETH9
1339
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1340
- |
1341
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1342
-
1343
- note[unused-import]: unused imports should be removed
1344
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:33:5
1345
- |
1346
- 33 | BASE_CHAIN_ID as MAINNET_BASE_CHAIN_ID,
1347
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1348
- |
1349
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1350
-
1351
- note[unused-import]: unused imports should be removed
1352
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:35:5
1353
- |
1354
- 35 | BASE_WETH9 as MAINNET_BASE_WETH9,
1355
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1356
- |
1357
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1358
-
1359
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1360
- --> test/BeefyClientAdvanced.t.sol:3:8
1361
- |
1362
- 3 | import "forge-std/Test.sol";
1363
- | ^^^^^^^^^^^^^^^^^^^^
1364
- |
1365
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1366
-
1367
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
1368
- --> src/utils/Bitfield.sol:181:34
1369
- |
1370
- 181 | return self[element].bit(uint8(index)) == 1;
1371
- | ^^^^^^^^^^^^
1372
- |
1373
- = note: consider disabling this lint if you're certain the cast is safe
1374
-
1375
- // casting to 'uint8' is safe because [explain why]
1376
- // forge-lint: disable-next-line(unsafe-typecast)
1377
-
1378
-
1379
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
1380
-
1381
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
1382
- --> src/utils/Bitfield.sol:186:46
1383
- |
1384
- 186 | self[element] = self[element].setBit(uint8(index));
1385
- | ^^^^^^^^^^^^
1386
- |
1387
- = note: consider disabling this lint if you're certain the cast is safe
1388
-
1389
- // casting to 'uint8' is safe because [explain why]
1390
- // forge-lint: disable-next-line(unsafe-typecast)
1391
-
1392
-
1393
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
1394
-
1395
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
1396
- --> src/utils/Bitfield.sol:191:48
1397
- |
1398
- 191 | self[element] = self[element].clearBit(uint8(index));
1399
- | ^^^^^^^^^^^^
1400
- |
1401
- = note: consider disabling this lint if you're certain the cast is safe
1402
-
1403
- // casting to 'uint8' is safe because [explain why]
1404
- // forge-lint: disable-next-line(unsafe-typecast)
1405
-
1406
-
1407
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
1408
-
1409
- note[unwrapped-modifier-logic]: wrap modifier logic to reduce code size
1410
- --> src/Token.sol:37:5
1411
- |
1412
- 37 | / modifier onlyGateway() {
1413
- 38 | | if (msg.sender != gateway) {
1414
- 39 | | revert Unauthorized();
1415
- ... |
1416
- 42 | | }
1417
- | |_____^
1418
- |
1419
- help: wrap modifier logic to reduce code size
1420
- |
1421
- 37 ~ modifier onlyGateway() {
1422
- 38 + _onlyGateway();
1423
- 39 + _;
1424
- 40 + }
1425
- 41 +
1426
- 42 + function _onlyGateway() internal {
1427
- 43 + if (msg.sender != gateway) {
1428
- 44 + revert Unauthorized();
1429
- 45 + }
1430
- 46 + }
1431
- |
1432
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unwrapped-modifier-logic
1433
-
1434
- note[mixed-case-variable]: mutable variables should use mixedCase
1435
- --> src/v2/Types.sol:110:13
1436
- |
1437
- 110 | bytes32 foreignID;
1438
- | ^^^^^^^^^ help: consider using: `foreignId`
1439
- |
1440
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1441
-
1442
- note[mixed-case-variable]: mutable variables should use mixedCase
1443
- --> src/v2/Types.sol:121:35
1444
- |
1445
- 121 | function makeForeignAsset(bytes32 foreignID, uint128 amount) pure returns (Asset memory) {
1446
- | ^^^^^^^^^ help: consider using: `foreignId`
1447
- |
1448
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1449
-
1450
- note[mixed-case-variable]: mutable variables should use mixedCase
1451
- --> src/v2/Types.sol:159:13
1452
- |
1453
- 159 | bytes32 foreignTokenID;
1454
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
1455
- |
1456
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1457
-
1458
- note[mixed-case-variable]: mutable variables should use mixedCase
1459
- --> src/v2/Types.sol:171:13
1460
- |
1461
- 171 | bytes32 foreignTokenID;
1462
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
1463
- |
1464
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1465
-
1466
- note[unused-import]: unused imports should be removed
1467
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:39:5
1468
- |
1469
- 39 | ARBITRUM_CHAIN_ID as MAINNET_ARBITRUM_CHAIN_ID,
1470
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1471
- |
1472
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1473
-
1474
- note[unused-import]: unused imports should be removed
1475
- --> scripts/l2-integration/across/test/TestSnowbridgeL2Adaptor.s.sol:40:5
1476
- |
1477
- 40 | ARBITRUM_WETH9 as MAINNET_ARBITRUM_WETH9,
1478
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1479
- |
1480
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1481
-
1482
- note[unused-import]: unused imports should be removed
1483
- --> src/Types.sol:5:9
1484
- |
1485
- 5 | import {TokenInfo, OperatingMode} from "./types/Common.sol";
1486
- | ^^^^^^^^^
1487
- |
1488
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1489
-
1490
- note[unused-import]: unused imports should be removed
1491
- --> src/Types.sol:5:20
1492
- |
1493
- 5 | import {TokenInfo, OperatingMode} from "./types/Common.sol";
1494
- | ^^^^^^^^^^^^^
1495
- |
1496
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1497
-
1498
- note[unused-import]: unused imports should be removed
1499
- --> src/Types.sol:6:9
1500
- |
1501
- 6 | import {UD60x18} from "prb/math/src/UD60x18.sol";
1502
- | ^^^^^^^
1503
- |
1504
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1505
-
1506
- note[unused-import]: unused imports should be removed
1507
- --> src/Types.sol:8:5
1508
- |
1509
- 8 | ParaID,
1510
- | ^^^^^^
1511
- |
1512
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1513
-
1514
- note[unused-import]: unused imports should be removed
1515
- --> src/Types.sol:9:5
1516
- |
1517
- 9 | ChannelID,
1518
- | ^^^^^^^^^
1519
- |
1520
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1521
-
1522
- note[mixed-case-function]: function names should use mixedCase
1523
- --> test/mocks/MockGateway.sol:124:14
1524
- |
1525
- 124 | function exposed_v1_transactionBaseGas() external pure returns (uint256) {
1526
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `exposedV1TransactionBaseGas`
1527
- |
1528
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
1529
-
1530
- note[unused-import]: unused imports should be removed
1531
- --> src/Verification.sol:8:9
1532
- |
1533
- 8 | import {SubstrateTypes} from "./SubstrateTypes.sol";
1534
- | ^^^^^^^^^^^^^^
1535
- |
1536
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1537
-
1538
- note[unused-import]: unused imports should be removed
1539
- --> src/v2/Handlers.sol:13:9
1540
- |
1541
- 13 | import {IGatewayV2} from "./IGateway.sol";
1542
- | ^^^^^^^^^^
1543
- |
1544
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1545
-
1546
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1547
- --> src/upgrade/Gateway202601.sepolia.sol:5:8
1548
- |
1549
- 5 | import "../Gateway.sol";
1550
- | ^^^^^^^^^^^^^^^^
1551
- |
1552
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1553
-
1554
- note[unused-import]: unused imports should be removed
1555
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:4:17
1556
- |
1557
- 4 | import {Script, console} from "forge-std/Script.sol";
1558
- | ^^^^^^^
1559
- |
1560
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1561
-
1562
- note[unused-import]: unused imports should be removed
1563
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:5:9
1564
- |
1565
- 5 | import {IERC20} from "openzeppelin/token/ERC20/IERC20.sol";
1566
- | ^^^^^^
1567
- |
1568
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1569
-
1570
- note[unused-import]: unused imports should be removed
1571
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:6:9
1572
- |
1573
- 6 | import {WETH9} from "canonical-weth/WETH9.sol";
1574
- | ^^^^^
1575
- |
1576
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1577
-
1578
- note[unused-import]: unused imports should be removed
1579
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:9:9
1580
- |
1581
- 9 | import {ISpokePool} from "../../../../src/l2-integration/interfaces/ISpokePool.sol";
1582
- | ^^^^^^^^^^
1583
- |
1584
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1585
-
1586
- note[unused-import]: unused imports should be removed
1587
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:10:36
1588
- |
1589
- 10 | import {DepositParams, SendParams, SwapParams} from "../../../../src/l2-integration/Types.sol";
1590
- | ^^^^^^^^^^
1591
- |
1592
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1593
-
1594
- note[unused-import]: unused imports should be removed
1595
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:13:5
1596
- |
1597
- 13 | BASE_CHAIN_ID as SEPOLIA_BASE_CHAIN_ID,
1598
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1599
- |
1600
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1601
-
1602
- note[unused-import]: unused imports should be removed
1603
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:14:5
1604
- |
1605
- 14 | WETH9 as SEPOLIA_WETH9,
1606
- | ^^^^^^^^^^^^^^^^^^^^^^
1607
- |
1608
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1609
-
1610
- note[unused-import]: unused imports should be removed
1611
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:15:5
1612
- |
1613
- 15 | BASE_WETH9 as SEPOLIA_BASE_WETH9,
1614
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1615
- |
1616
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1617
-
1618
- note[unused-import]: unused imports should be removed
1619
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:20:5
1620
- |
1621
- 20 | BASE_CHAIN_ID as MAINNET_BASE_CHAIN_ID,
1622
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1623
- |
1624
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1625
-
1626
- note[unused-import]: unused imports should be removed
1627
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:21:5
1628
- |
1629
- 21 | WETH9 as MAINNET_WETH9,
1630
- | ^^^^^^^^^^^^^^^^^^^^^^
1631
- |
1632
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1633
-
1634
- note[unused-import]: unused imports should be removed
1635
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:22:5
1636
- |
1637
- 22 | BASE_WETH9 as MAINNET_BASE_WETH9,
1638
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1639
- |
1640
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1641
-
1642
- note[unused-import]: unused imports should be removed
1643
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:24:5
1644
- |
1645
- 24 | ARBITRUM_CHAIN_ID as MAINNET_ARBITRUM_CHAIN_ID,
1646
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1647
- |
1648
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1649
-
1650
- note[unused-import]: unused imports should be removed
1651
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorNativeEther.s.sol:25:5
1652
- |
1653
- 25 | ARBITRUM_WETH9 as MAINNET_ARBITRUM_WETH9
1654
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1655
- |
1656
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1657
-
1658
- note[mixed-case-variable]: mutable variables should use mixedCase
1659
- --> test/BeefyClientAdvanced.t.sol:30:13
1660
- |
1661
- 30 | uint256 validator0PK;
1662
- | ^^^^^^^^^^^^ help: consider using: `validator0Pk`
1663
- |
1664
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1665
-
1666
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
1667
- --> test/BeefyClientAdvanced.t.sol:34:22
1668
- |
1669
- 34 | bytes32 constant MMRRoot =
1670
- | ^^^^^^^ help: consider using: `MMR_ROOT`
1671
- |
1672
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
1673
-
1674
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1675
- --> src/upgrade/Gateway202602.sepolia.sol:5:8
1676
- |
1677
- 5 | import "../Gateway.sol";
1678
- | ^^^^^^^^^^^^^^^^
1679
- |
1680
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1681
-
1682
- note[unused-import]: unused imports should be removed
1683
- --> test/mocks/MockGateway.sol:7:20
1684
- |
1685
- 7 | import {ChannelID, ParaID, OperatingMode} from "../../src/Types.sol";
1686
- | ^^^^^^
1687
- |
1688
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1689
-
1690
- note[unused-import]: unused imports should be removed
1691
- --> test/mocks/MockGateway.sol:7:28
1692
- |
1693
- 7 | import {ChannelID, ParaID, OperatingMode} from "../../src/Types.sol";
1694
- | ^^^^^^^^^^^^^
1695
- |
1696
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1697
-
1698
- note[unused-import]: unused imports should be removed
1699
- --> test/mocks/MockGateway.sol:11:9
1700
- |
1701
- 11 | import {IInitializable} from "../../src/interfaces/IInitializable.sol";
1702
- | ^^^^^^^^^^^^^^
1703
- |
1704
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1705
-
1706
- note[unused-import]: unused imports should be removed
1707
- --> src/Types.sol:10:5
1708
- |
1709
- 10 | Channel,
1710
- | ^^^^^^^
1711
- |
1712
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1713
-
1714
- note[unused-import]: unused imports should be removed
1715
- --> src/Types.sol:11:5
1716
- |
1717
- 11 | InboundMessage as InboundMessageV1,
1718
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1719
- |
1720
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1721
-
1722
- note[unused-import]: unused imports should be removed
1723
- --> src/Types.sol:12:5
1724
- |
1725
- 12 | Command as CommandV1,
1726
- | ^^^^^^^^^^^^^^^^^^^^
1727
- |
1728
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1729
-
1730
- note[unused-import]: unused imports should be removed
1731
- --> src/Types.sol:13:5
1732
- |
1733
- 13 | MultiAddress
1734
- | ^^^^^^^^^^^^
1735
- |
1736
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1737
-
1738
- note[unused-import]: unused imports should be removed
1739
- --> src/Types.sol:15:9
1740
- |
1741
- 15 | import {CallsV1} from "./v1/Calls.sol";
1742
- | ^^^^^^^
1743
- |
1744
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1745
-
1746
- note[unused-import]: unused imports should be removed
1747
- --> src/Types.sol:16:9
1748
- |
1749
- 16 | import {HandlersV1} from "./v1/Handlers.sol";
1750
- | ^^^^^^^^^^
1751
- |
1752
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1753
-
1754
- note[unused-import]: unused imports should be removed
1755
- --> src/Types.sol:17:9
1756
- |
1757
- 17 | import {IGatewayV1} from "./v1/IGateway.sol";
1758
- | ^^^^^^^^^^
1759
- |
1760
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1761
-
1762
- note[unused-import]: unused imports should be removed
1763
- --> src/Types.sol:20:5
1764
- |
1765
- 20 | InboundMessage as InboundMessageV2, Command as CommandV2, CommandKind
1766
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1767
- |
1768
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1769
-
1770
- note[unused-import]: unused imports should be removed
1771
- --> src/Types.sol:20:41
1772
- |
1773
- 20 | InboundMessage as InboundMessageV2, Command as CommandV2, CommandKind
1774
- | ^^^^^^^^^^^^^^^^^^^^
1775
- |
1776
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1777
-
1778
- note[unused-import]: unused imports should be removed
1779
- --> src/Types.sol:20:63
1780
- |
1781
- 20 | InboundMessage as InboundMessageV2, Command as CommandV2, CommandKind
1782
- | ^^^^^^^^^^^
1783
- |
1784
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1785
-
1786
- note[unused-import]: unused imports should be removed
1787
- --> src/Types.sol:22:9
1788
- |
1789
- 22 | import {CallsV2} from "./v2/Calls.sol";
1790
- | ^^^^^^^
1791
- |
1792
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1793
-
1794
- note[unused-import]: unused imports should be removed
1795
- --> src/Types.sol:23:9
1796
- |
1797
- 23 | import {HandlersV2} from "./v2/Handlers.sol";
1798
- | ^^^^^^^^^^
1799
- |
1800
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1801
-
1802
- note[unused-import]: unused imports should be removed
1803
- --> src/Types.sol:24:9
1804
- |
1805
- 24 | import {IGatewayV2} from "./v2/IGateway.sol";
1806
- | ^^^^^^^^^^
1807
- |
1808
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
1809
-
1810
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1811
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:4:8
1812
- |
1813
- 4 | import "forge-std/Script.sol";
1814
- | ^^^^^^^^^^^^^^^^^^^^^^
1815
- |
1816
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1817
-
1818
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1819
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:5:8
1820
- |
1821
- 5 | import "forge-std/console.sol";
1822
- | ^^^^^^^^^^^^^^^^^^^^^^^
1823
- |
1824
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1825
-
1826
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
1827
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:6:8
1828
- |
1829
- 6 | import "openzeppelin/token/ERC20/IERC20.sol";
1830
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1831
- |
1832
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
1833
-
1834
- note[mixed-case-variable]: mutable variables should use mixedCase
1835
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:19:17
1836
- |
1837
- 19 | address USDC = 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48;
1838
- | ^^^^ help: consider using: `usdc`
1839
- |
1840
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1841
-
1842
- note[mixed-case-variable]: mutable variables should use mixedCase
1843
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:21:17
1844
- |
1845
- 21 | address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
1846
- | ^^^^ help: consider using: `weth`
1847
- |
1848
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1849
-
1850
- note[mixed-case-variable]: mutable variables should use mixedCase
1851
- --> scripts/l2-integration/across/test/TestUniswap.s.sol:23:16
1852
- |
1853
- 23 | uint24 POOL_FEE = 500; // 0.05%
1854
- | ^^^^^^^^ help: consider using: `poolFee`
1855
- |
1856
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1857
-
1858
- note[mixed-case-variable]: mutable variables should use mixedCase
1859
- --> test/BeefyClient.t.sol:42:12
1860
- |
1861
- 42 | bytes2 mmrRootID = bytes2("mh");
1862
- | ^^^^^^^^^ help: consider using: `mmrRootId`
1863
- |
1864
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1865
-
1866
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
1867
- --> src/Verification.sol:193:24
1868
- |
1869
- 193 | bytes1(uint8(DIGEST_ITEM_OTHER)),
1870
- | ^^^^^^^^^^^^^^^^^^^^^^^^
1871
- |
1872
- = note: consider disabling this lint if you're certain the cast is safe
1873
-
1874
- // casting to 'uint8' is safe because [explain why]
1875
- // forge-lint: disable-next-line(unsafe-typecast)
1876
-
1877
-
1878
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
1879
-
1880
- note[mixed-case-variable]: mutable variables should use mixedCase
1881
- --> test/BeefyClientAdvanced.t.sol:90:17
1882
- |
1883
- 90 | bytes32 ticketID1 = beefyClient.createTicketID_public(honestRelayer1, commitmentHash);
1884
- | ^^^^^^^^^ help: consider using: `ticketId1`
1885
- |
1886
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1887
-
1888
- note[mixed-case-variable]: mutable variables should use mixedCase
1889
- --> test/BeefyClientAdvanced.t.sol:108:17
1890
- |
1891
- 108 | bytes32 ticketID2 = beefyClient.createTicketID_public(honestRelayer2, commitmentHash);
1892
- | ^^^^^^^^^ help: consider using: `ticketId2`
1893
- |
1894
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1895
-
1896
- note[mixed-case-variable]: mutable variables should use mixedCase
1897
- --> src/Agent.sol:19:25
1898
- |
1899
- 19 | constructor(bytes32 agentID) {
1900
- | ^^^^^^^ help: consider using: `agentId`
1901
- |
1902
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
1903
-
1904
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
1905
- --> src/Verification.sol:198:40
1906
- |
1907
- 198 | return bytes.concat(bytes1(uint8(DIGEST_ITEM_RUNTIME_ENVIRONMENT_UPDATED)));
1908
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1909
- |
1910
- = note: consider disabling this lint if you're certain the cast is safe
1911
-
1912
- // casting to 'uint8' is safe because [explain why]
1913
- // forge-lint: disable-next-line(unsafe-typecast)
1914
-
1915
-
1916
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
1917
-
1918
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
1919
- --> src/Verification.sol:211:16
1920
- |
1921
- 211 | return keccak256(createParachainHeader(encodedParaID, header));
1922
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1923
- |
1924
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
1925
-
1926
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
1927
- --> src/Verification.sol:257:16
1928
- |
1929
- 257 | return keccak256(encodedLeaf);
1930
- | ^^^^^^^^^^^^^^^^^^^^^^
1931
- |
1932
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
1933
-
1934
- note[named-struct-fields]: prefer initializing structs with named fields
1935
- --> test/Math.t.sol:20:13
1936
- |
1937
- 20 | Log2Test(0, 0),
1938
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 0, input: 0 })`
1939
- |
1940
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1941
-
1942
- note[named-struct-fields]: prefer initializing structs with named fields
1943
- --> test/Math.t.sol:21:13
1944
- |
1945
- 21 | Log2Test(0, 1),
1946
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 0, input: 1 })`
1947
- |
1948
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1949
-
1950
- note[named-struct-fields]: prefer initializing structs with named fields
1951
- --> test/Math.t.sol:22:13
1952
- |
1953
- 22 | Log2Test(1, 2),
1954
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 1, input: 2 })`
1955
- |
1956
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1957
-
1958
- note[named-struct-fields]: prefer initializing structs with named fields
1959
- --> test/Math.t.sol:23:13
1960
- |
1961
- 23 | Log2Test(2, 3),
1962
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 2, input: 3 })`
1963
- |
1964
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1965
-
1966
- note[named-struct-fields]: prefer initializing structs with named fields
1967
- --> test/Math.t.sol:24:13
1968
- |
1969
- 24 | Log2Test(2, 4),
1970
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 2, input: 4 })`
1971
- |
1972
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1973
-
1974
- note[named-struct-fields]: prefer initializing structs with named fields
1975
- --> test/Math.t.sol:25:13
1976
- |
1977
- 25 | Log2Test(3, 5),
1978
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 3, input: 5 })`
1979
- |
1980
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1981
-
1982
- note[named-struct-fields]: prefer initializing structs with named fields
1983
- --> test/Math.t.sol:26:13
1984
- |
1985
- 26 | Log2Test(3, 6),
1986
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 3, input: 6 })`
1987
- |
1988
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1989
-
1990
- note[named-struct-fields]: prefer initializing structs with named fields
1991
- --> test/Math.t.sol:27:13
1992
- |
1993
- 27 | Log2Test(3, 8),
1994
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 3, input: 8 })`
1995
- |
1996
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
1997
-
1998
- note[mixed-case-variable]: mutable variables should use mixedCase
1999
- --> src/BeefyClient.sol:73:16
2000
- |
2001
- 73 | uint64 validatorSetID;
2002
- | ^^^^^^^^^^^^^^ help: consider using: `validatorSetId`
2003
- |
2004
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2005
-
2006
- note[mixed-case-variable]: mutable variables should use mixedCase
2007
- --> src/BeefyClient.sol:85:16
2008
- |
2009
- 85 | bytes2 payloadID;
2010
- | ^^^^^^^^^ help: consider using: `payloadId`
2011
- |
2012
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2013
-
2014
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
2015
- --> test/BeefyClient.t.sol:59:47
2016
- |
2017
- 59 | string memory beefyCommitmentRaw = vm.readFile(beefyCommitmentFile);
2018
- | ^^^^^^^^
2019
- |
2020
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
2021
-
2022
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
2023
- --> test/BeefyClient.t.sol:75:49
2024
- |
2025
- 75 | string memory beefyValidatorSetRaw = vm.readFile(beefyValidatorSetFile);
2026
- | ^^^^^^^^
2027
- |
2028
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
2029
-
2030
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
2031
- --> test/BeefyClient.t.sol:98:42
2032
- |
2033
- 98 | string memory finalProofRaw = vm.readFile(finalProofFile);
2034
- | ^^^^^^^^
2035
- |
2036
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
2037
-
2038
- note[mixed-case-variable]: mutable variables should use mixedCase
2039
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:34:17
2040
- |
2041
- 34 | uint256 L2_CHAIN_ID;
2042
- | ^^^^^^^^^^^ help: consider using: `l2ChainId`
2043
- |
2044
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2045
-
2046
- note[mixed-case-variable]: mutable variables should use mixedCase
2047
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:35:16
2048
- |
2049
- 35 | uint32 TIME_BUFFER;
2050
- | ^^^^^^^^^^^ help: consider using: `timeBuffer`
2051
- |
2052
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2053
-
2054
- note[mixed-case-variable]: mutable variables should use mixedCase
2055
- --> test/BeefyClientAdvanced.t.sol:147:17
2056
- |
2057
- 147 | bytes32 PREVRANDAO = bytes32(
2058
- | ^^^^^^^^^^ help: consider using: `prevrandao`
2059
- |
2060
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2061
-
2062
- note[mixed-case-variable]: mutable variables should use mixedCase
2063
- --> src/storage/CoreStorage.sol:17:17
2064
- |
2065
- 17 | uint256 __gap;
2066
- | ^^^^^ help: consider using: `_gap`
2067
- |
2068
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2069
-
2070
- note[mixed-case-function]: function names should use mixedCase
2071
- --> src/SubstrateTypes.sol:19:14
2072
- |
2073
- 19 | function H160(address account) internal pure returns (bytes memory) {
2074
- | ^^^^ help: consider using: `h160`
2075
- |
2076
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2077
-
2078
- note[mixed-case-function]: function names should use mixedCase
2079
- --> src/SubstrateTypes.sol:23:14
2080
- |
2081
- 23 | function VecU8(bytes memory input) internal pure returns (bytes memory) {
2082
- | ^^^^^ help: consider using: `vecU8`
2083
- |
2084
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2085
-
2086
- note[mixed-case-function]: function names should use mixedCase
2087
- --> src/SubstrateTypes.sol:33:14
2088
- |
2089
- 33 | function None() internal pure returns (bytes memory) {
2090
- | ^^^^ help: consider using: `none`
2091
- |
2092
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2093
-
2094
- note[mixed-case-function]: function names should use mixedCase
2095
- --> src/SubstrateTypes.sol:42:14
2096
- |
2097
- 42 | function SendTokenToAssetHubAddress32(
2098
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAssetHubAddress32`
2099
- |
2100
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2101
-
2102
- note[mixed-case-function]: function names should use mixedCase
2103
- --> src/SubstrateTypes.sol:61:14
2104
- |
2105
- 61 | function SendTokenToAddress32(
2106
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAddress32`
2107
- |
2108
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2109
-
2110
- note[mixed-case-variable]: mutable variables should use mixedCase
2111
- --> src/SubstrateTypes.sol:63:16
2112
- |
2113
- 63 | ParaID paraID,
2114
- | ^^^^^^ help: consider using: `paraId`
2115
- |
2116
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2117
-
2118
- note[mixed-case-variable]: mutable variables should use mixedCase
2119
- --> test/BeefyClientAdvanced.t.sol:392:58
2120
- |
2121
- 392 | function _buildCommitment(uint32 blockNumber, uint64 validatorSetID, bytes32 mmrRoot)
2122
- | ^^^^^^^^^^^^^^ help: consider using: `validatorSetId`
2123
- |
2124
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2125
-
2126
- note[pascal-case-struct]: structs should use PascalCase
2127
- --> src/BeefyClient.sol:125:12
2128
- |
2129
- 125 | struct MMRLeaf {
2130
- | ^^^^^^^ help: consider using: `MmrLeaf`
2131
- |
2132
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#pascal-case-struct
2133
-
2134
- note[unused-import]: unused imports should be removed
2135
- --> test/BeefyClientAdvanced.t.sol:9:9
2136
- |
2137
- 9 | import {SubstrateMerkleProof} from "../src/utils/SubstrateMerkleProof.sol";
2138
- | ^^^^^^^^^^^^^^^^^^^^
2139
- |
2140
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2141
-
2142
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2143
- --> test/BeefyClientAdvanced.t.sol:33:35
2144
- |
2145
- 33 | bytes2 constant MMR_ROOT_ID = bytes2("mh");
2146
- | ^^^^^^^^^^^^
2147
- |
2148
- = note: consider disabling this lint if you're certain the cast is safe
2149
-
2150
- // casting to 'bytes2' is safe because [explain why]
2151
- // forge-lint: disable-next-line(unsafe-typecast)
2152
-
2153
-
2154
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2155
-
2156
- note[mixed-case-function]: function names should use mixedCase
2157
- --> src/SubstrateTypes.sol:84:14
2158
- |
2159
- 84 | function SendTokenToAddress20(
2160
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAddress20`
2161
- |
2162
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2163
-
2164
- note[mixed-case-variable]: mutable variables should use mixedCase
2165
- --> src/SubstrateTypes.sol:86:16
2166
- |
2167
- 86 | ParaID paraID,
2168
- | ^^^^^^ help: consider using: `paraId`
2169
- |
2170
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2171
-
2172
- note[named-struct-fields]: prefer initializing structs with named fields
2173
- --> test/Math.t.sol:28:13
2174
- |
2175
- 28 | Log2Test(4, 9),
2176
- | ^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 4, input: 9 })`
2177
- |
2178
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2179
-
2180
- note[unused-import]: unused imports should be removed
2181
- --> test/mocks/MockGateway.sol:13:9
2182
- |
2183
- 13 | import {UD60x18} from "prb/math/src/UD60x18.sol";
2184
- | ^^^^^^^
2185
- |
2186
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2187
-
2188
- note[unused-import]: unused imports should be removed
2189
- --> test/mocks/MockGateway.sol:18:9
2190
- |
2191
- 18 | import {AgentExecutor} from "../../src/AgentExecutor.sol";
2192
- | ^^^^^^^^^^^^^
2193
- |
2194
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2195
-
2196
- note[mixed-case-variable]: mutable variables should use mixedCase
2197
- --> src/storage/AssetsStorage.sol:13:16
2198
- |
2199
- 13 | ParaID assetHubParaID;
2200
- | ^^^^^^^^^^^^^^ help: consider using: `assetHubParaId`
2201
- |
2202
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2203
-
2204
- note[mixed-case-variable]: mutable variables should use mixedCase
2205
- --> src/storage/AssetsStorage.sol:19:17
2206
- |
2207
- 19 | uint256 __obsolete_1;
2208
- | ^^^^^^^^^^^^ help: consider using: `_obsolete1`
2209
- |
2210
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2211
-
2212
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2213
- --> test/BeefyClientAdvanced.t.sol:58:60
2214
- |
2215
- 58 | BeefyClient.ValidatorSet({id: VSET_ID, length: uint128(VSET_LEN), root: vsetRoot});
2216
- | ^^^^^^^^^^^^^^^^^
2217
- |
2218
- = note: consider disabling this lint if you're certain the cast is safe
2219
-
2220
- // casting to 'uint128' is safe because [explain why]
2221
- // forge-lint: disable-next-line(unsafe-typecast)
2222
-
2223
-
2224
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2225
-
2226
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
2227
- --> test/BeefyClient.t.sol:103:47
2228
- |
2229
- 103 | string memory fiatShamirProofRaw = vm.readFile(fiatShamirProofFile);
2230
- | ^^^^^^^^
2231
- |
2232
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
2233
-
2234
- note[mixed-case-function]: function names should use mixedCase
2235
- --> src/SubstrateTypes.sol:106:14
2236
- |
2237
- 106 | function SendForeignTokenToAssetHubAddress32(
2238
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAssetHubAddress32`
2239
- |
2240
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2241
-
2242
- note[mixed-case-variable]: mutable variables should use mixedCase
2243
- --> src/SubstrateTypes.sol:107:17
2244
- |
2245
- 107 | bytes32 tokenID,
2246
- | ^^^^^^^ help: consider using: `tokenId`
2247
- |
2248
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2249
-
2250
- note[mixed-case-function]: function names should use mixedCase
2251
- --> src/SubstrateTypes.sol:125:14
2252
- |
2253
- 125 | function SendForeignTokenToAddress32(
2254
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAddress32`
2255
- |
2256
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2257
-
2258
- note[mixed-case-variable]: mutable variables should use mixedCase
2259
- --> src/SubstrateTypes.sol:126:17
2260
- |
2261
- 126 | bytes32 tokenID,
2262
- | ^^^^^^^ help: consider using: `tokenId`
2263
- |
2264
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2265
-
2266
- note[mixed-case-variable]: mutable variables should use mixedCase
2267
- --> src/SubstrateTypes.sol:127:16
2268
- |
2269
- 127 | ParaID paraID,
2270
- | ^^^^^^ help: consider using: `paraId`
2271
- |
2272
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2273
-
2274
- note[mixed-case-function]: function names should use mixedCase
2275
- --> src/SubstrateTypes.sol:148:14
2276
- |
2277
- 148 | function SendForeignTokenToAddress20(
2278
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAddress20`
2279
- |
2280
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2281
-
2282
- note[mixed-case-variable]: mutable variables should use mixedCase
2283
- --> src/SubstrateTypes.sol:149:17
2284
- |
2285
- 149 | bytes32 tokenID,
2286
- | ^^^^^^^ help: consider using: `tokenId`
2287
- |
2288
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2289
-
2290
- note[mixed-case-variable]: mutable variables should use mixedCase
2291
- --> src/SubstrateTypes.sol:150:16
2292
- |
2293
- 150 | ParaID paraID,
2294
- | ^^^^^^ help: consider using: `paraId`
2295
- |
2296
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2297
-
2298
- note[mixed-case-variable]: mutable variables should use mixedCase
2299
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:36:17
2300
- |
2301
- 36 | address L2_WETH9;
2302
- | ^^^^^^^^ help: consider using: `l2Weth9`
2303
- |
2304
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2305
-
2306
- note[unused-import]: unused imports should be removed
2307
- --> test/mocks/ReantrantAttacker.sol:7:9
2308
- |
2309
- 7 | import {console} from "forge-std/console.sol";
2310
- | ^^^^^^^
2311
- |
2312
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2313
-
2314
- note[mixed-case-variable]: mutable variables should use mixedCase
2315
- --> src/Functions.sol:31:34
2316
- |
2317
- 31 | function ensureAgent(bytes32 agentID) internal view returns (address agent) {
2318
- | ^^^^^^^ help: consider using: `agentId`
2319
- |
2320
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2321
-
2322
- note[mixed-case-variable]: mutable variables should use mixedCase
2323
- --> src/Functions.sol:39:38
2324
- |
2325
- 39 | function ensureChannel(ChannelID channelID) internal view returns (Channel storage ch) {
2326
- | ^^^^^^^^^ help: consider using: `channelId`
2327
- |
2328
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2329
-
2330
- note[mixed-case-variable]: mutable variables should use mixedCase
2331
- --> src/BeefyClient.sol:133:16
2332
- |
2333
- 133 | uint64 nextAuthoritySetID;
2334
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `nextAuthoritySetId`
2335
- |
2336
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2337
-
2338
- note[mixed-case-variable]: mutable variables should use mixedCase
2339
- --> src/BeefyClient.sol:171:20
2340
- |
2341
- 171 | bytes32 public latestMMRRoot;
2342
- | ^^^^^^^^^^^^^ help: consider using: `latestMmrRoot`
2343
- |
2344
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2345
-
2346
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
2347
- --> src/BeefyClient.sol:203:30
2348
- |
2349
- 203 | uint256 public immutable randaoCommitDelay;
2350
- | ^^^^^^^^^^^^^^^^^ help: consider using: `RANDAO_COMMIT_DELAY`
2351
- |
2352
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
2353
-
2354
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
2355
- --> src/BeefyClient.sol:211:30
2356
- |
2357
- 211 | uint256 public immutable randaoCommitExpiration;
2358
- | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `RANDAO_COMMIT_EXPIRATION`
2359
- |
2360
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
2361
-
2362
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
2363
- --> src/BeefyClient.sol:217:30
2364
- |
2365
- 217 | uint256 public immutable minNumRequiredSignatures;
2366
- | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `MIN_NUM_REQUIRED_SIGNATURES`
2367
- |
2368
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
2369
-
2370
- note[screaming-snake-case-immutable]: immutables should use SCREAMING_SNAKE_CASE
2371
- --> src/BeefyClient.sol:224:30
2372
- |
2373
- 224 | uint256 public immutable fiatShamirRequiredSignatures;
2374
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `FIAT_SHAMIR_REQUIRED_SIGNATURES`
2375
- |
2376
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-immutable
2377
-
2378
- note[unused-import]: unused imports should be removed
2379
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:4:17
2380
- |
2381
- 4 | import {Script, console} from "forge-std/Script.sol";
2382
- | ^^^^^^^
2383
- |
2384
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2385
-
2386
- note[unused-import]: unused imports should be removed
2387
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:5:9
2388
- |
2389
- 5 | import {IERC20} from "openzeppelin/token/ERC20/IERC20.sol";
2390
- | ^^^^^^
2391
- |
2392
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2393
-
2394
- note[unused-import]: unused imports should be removed
2395
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:8:9
2396
- |
2397
- 8 | import {ISpokePool} from "../../../../src/l2-integration/interfaces/ISpokePool.sol";
2398
- | ^^^^^^^^^^
2399
- |
2400
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2401
-
2402
- note[unused-import]: unused imports should be removed
2403
- --> scripts/l2-integration/across/test/TestSnowbridgeL1AdaptorNativeEther.s.sol:9:24
2404
- |
2405
- 9 | import {DepositParams, SendParams} from "../../../../src/l2-integration/Types.sol";
2406
- | ^^^^^^^^^^
2407
- |
2408
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2409
-
2410
- note[mixed-case-variable]: mutable variables should use mixedCase
2411
- --> src/Functions.sol:122:17
2412
- |
2413
- 122 | bytes32 foreignTokenID,
2414
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
2415
- |
2416
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2417
-
2418
- note[mixed-case-variable]: mutable variables should use mixedCase
2419
- --> src/Functions.sol:142:39
2420
- |
2421
- 142 | function mintForeignToken(bytes32 foreignTokenID, address recipient, uint128 amount)
2422
- | ^^^^^^^^^^^^^^ help: consider using: `foreignTokenId`
2423
- |
2424
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2425
-
2426
- note[mixed-case-function]: function names should use mixedCase
2427
- --> test/BeefyClient.t.sol:163:14
2428
- |
2429
- 163 | function decodeMMRLeaf(string memory beefyCommitmentRaw) internal {
2430
- | ^^^^^^^^^^^^^ help: consider using: `decodeMmrLeaf`
2431
- |
2432
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2433
-
2434
- note[mixed-case-variable]: mutable variables should use mixedCase
2435
- --> src/BeefyClient.sol:349:17
2436
- |
2437
- 349 | bytes32 ticketID = createTicketID(msg.sender, commitmentHash);
2438
- | ^^^^^^^^ help: consider using: `ticketId`
2439
- |
2440
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2441
-
2442
- note[mixed-case-variable]: mutable variables should use mixedCase
2443
- --> src/BeefyClient.sol:394:17
2444
- |
2445
- 394 | bytes32 ticketID = createTicketID(msg.sender, commitmentHash);
2446
- | ^^^^^^^^ help: consider using: `ticketId`
2447
- |
2448
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2449
-
2450
- note[mixed-case-variable]: mutable variables should use mixedCase
2451
- --> src/BeefyClient.sol:397:14
2452
- |
2453
- 397 | bool is_next_session = false;
2454
- | ^^^^^^^^^^^^^^^ help: consider using: `isNextSession`
2455
- |
2456
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2457
-
2458
- note[mixed-case-variable]: mutable variables should use mixedCase
2459
- --> src/BeefyClient.sol:412:17
2460
- |
2461
- 412 | bytes32 newMMRRoot = ensureProvidesMMRRoot(commitment);
2462
- | ^^^^^^^^^^ help: consider using: `newMmrRoot`
2463
- |
2464
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2465
-
2466
- note[mixed-case-function]: function names should use mixedCase
2467
- --> src/BeefyClient.sol:446:14
2468
- |
2469
- 446 | function verifyMMRLeafProof(bytes32 leafHash, bytes32[] calldata proof, uint256 proofOrder)
2470
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `verifyMmrLeafProof`
2471
- |
2472
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2473
-
2474
- note[mixed-case-variable]: mutable variables should use mixedCase
2475
- --> src/v1/IGateway.sol:20:27
2476
- |
2477
- 20 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bool success
2478
- | ^^^^^^^^^ help: consider using: `channelId`
2479
- |
2480
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2481
-
2482
- note[mixed-case-variable]: mutable variables should use mixedCase
2483
- --> src/v1/IGateway.sol:20:68
2484
- |
2485
- 20 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bool success
2486
- | ^^^^^^^^^ help: consider using: `messageId`
2487
- |
2488
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2489
-
2490
- note[mixed-case-variable]: mutable variables should use mixedCase
2491
- --> src/v1/IGateway.sol:25:27
2492
- |
2493
- 25 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bytes payload
2494
- | ^^^^^^^^^ help: consider using: `channelId`
2495
- |
2496
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2497
-
2498
- note[mixed-case-variable]: mutable variables should use mixedCase
2499
- --> test/mocks/VerificationWrapper.sol:8:16
2500
- |
2501
- 8 | bytes4 encodedParachainID,
2502
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `encodedParachainId`
2503
- |
2504
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2505
-
2506
- note[mixed-case-variable]: mutable variables should use mixedCase
2507
- --> src/Functions.sol:154:44
2508
- |
2509
- 154 | function _ensureTokenAddressOf(bytes32 tokenID) internal view returns (address) {
2510
- | ^^^^^^^ help: consider using: `tokenId`
2511
- |
2512
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2513
-
2514
- note[named-struct-fields]: prefer initializing structs with named fields
2515
- --> test/Math.t.sol:29:13
2516
- |
2517
- 29 | Log2Test(4, 12),
2518
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 4, input: 12 })`
2519
- |
2520
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2521
-
2522
- note[named-struct-fields]: prefer initializing structs with named fields
2523
- --> test/Math.t.sol:30:13
2524
- |
2525
- 30 | Log2Test(4, 16),
2526
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 4, input: 16 })`
2527
- |
2528
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2529
-
2530
- note[named-struct-fields]: prefer initializing structs with named fields
2531
- --> test/Math.t.sol:31:13
2532
- |
2533
- 31 | Log2Test(5, 17),
2534
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 5, input: 17 })`
2535
- |
2536
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2537
-
2538
- note[named-struct-fields]: prefer initializing structs with named fields
2539
- --> test/Math.t.sol:32:13
2540
- |
2541
- 32 | Log2Test(5, 24),
2542
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 5, input: 24 })`
2543
- |
2544
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2545
-
2546
- note[named-struct-fields]: prefer initializing structs with named fields
2547
- --> test/Math.t.sol:33:13
2548
- |
2549
- 33 | Log2Test(5, 32),
2550
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 5, input: 32 })`
2551
- |
2552
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2553
-
2554
- note[named-struct-fields]: prefer initializing structs with named fields
2555
- --> test/Math.t.sol:34:13
2556
- |
2557
- 34 | Log2Test(6, 33),
2558
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 6, input: 33 })`
2559
- |
2560
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2561
-
2562
- note[mixed-case-variable]: mutable variables should use mixedCase
2563
- --> src/BeefyClient.sol:546:14
2564
- |
2565
- 546 | bool is_next_session = false;
2566
- | ^^^^^^^^^^^^^^^ help: consider using: `isNextSession`
2567
- |
2568
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2569
-
2570
- note[mixed-case-variable]: mutable variables should use mixedCase
2571
- --> src/BeefyClient.sol:565:17
2572
- |
2573
- 565 | bytes32 newMMRRoot = ensureProvidesMMRRoot(commitment);
2574
- | ^^^^^^^^^^ help: consider using: `newMmrRoot`
2575
- |
2576
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2577
-
2578
- note[mixed-case-function]: function names should use mixedCase
2579
- --> src/BeefyClient.sol:598:14
2580
- |
2581
- 598 | function createTicketID(address account, bytes32 commitmentHash)
2582
- | ^^^^^^^^^^^^^^ help: consider using: `createTicketId`
2583
- |
2584
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2585
-
2586
- note[mixed-case-variable]: mutable variables should use mixedCase
2587
- --> src/v1/IGateway.sol:25:68
2588
- |
2589
- 25 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bytes payload
2590
- | ^^^^^^^^^ help: consider using: `messageId`
2591
- |
2592
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2593
-
2594
- note[mixed-case-variable]: mutable variables should use mixedCase
2595
- --> src/v1/IGateway.sol:32:47
2596
- |
2597
- 32 | event AgentFundsWithdrawn(bytes32 indexed agentID, address indexed recipient, uint256 amount);
2598
- | ^^^^^^^ help: consider using: `agentId`
2599
- |
2600
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2601
-
2602
- note[mixed-case-variable]: mutable variables should use mixedCase
2603
- --> src/v1/IGateway.sol:42:30
2604
- |
2605
- 42 | function agentOf(bytes32 agentID) external view returns (address);
2606
- | ^^^^^^^ help: consider using: `agentId`
2607
- |
2608
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2609
-
2610
- note[mixed-case-variable]: mutable variables should use mixedCase
2611
- --> src/v1/IGateway.sol:44:47
2612
- |
2613
- 44 | function channelOperatingModeOf(ChannelID channelID) external view returns (OperatingMode);
2614
- | ^^^^^^^^^ help: consider using: `channelId`
2615
- |
2616
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2617
-
2618
- note[mixed-case-variable]: mutable variables should use mixedCase
2619
- --> src/v1/IGateway.sol:46:40
2620
- |
2621
- 46 | function channelNoncesOf(ChannelID channelID) external view returns (uint64, uint64);
2622
- | ^^^^^^^^^ help: consider using: `channelId`
2623
- |
2624
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2625
-
2626
- note[mixed-case-variable]: mutable variables should use mixedCase
2627
- --> test/BeefyClient.t.sol:167:16
2628
- |
2629
- 167 | uint64 nextAuthoritySetID =
2630
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `nextAuthoritySetId`
2631
- |
2632
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2633
-
2634
- note[mixed-case-variable]: mutable variables should use mixedCase
2635
- --> src/types/Common.sol:14:13
2636
- |
2637
- 14 | bytes32 foreignID;
2638
- | ^^^^^^^^^ help: consider using: `foreignId`
2639
- |
2640
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2641
-
2642
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2643
- --> test/BeefyClientAdvanced.t.sol:60:64
2644
- |
2645
- 60 | BeefyClient.ValidatorSet({id: VSET_ID + 1, length: uint128(VSET_LEN), root: vsetRoot});
2646
- | ^^^^^^^^^^^^^^^^^
2647
- |
2648
- = note: consider disabling this lint if you're certain the cast is safe
2649
-
2650
- // casting to 'uint128' is safe because [explain why]
2651
- // forge-lint: disable-next-line(unsafe-typecast)
2652
-
2653
-
2654
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2655
-
2656
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2657
- --> test/BeefyClientAdvanced.t.sol:114:34
2658
- |
2659
- 114 | assertLe(nRequiredAfter, uint32(quorum), "N must be capped at quorum");
2660
- | ^^^^^^^^^^^^^^
2661
- |
2662
- = note: consider disabling this lint if you're certain the cast is safe
2663
-
2664
- // casting to 'uint32' is safe because [explain why]
2665
- // forge-lint: disable-next-line(unsafe-typecast)
2666
-
2667
-
2668
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2669
-
2670
- note[mixed-case-function]: function names should use mixedCase
2671
- --> src/v1/IGateway.sol:86:14
2672
- |
2673
- 86 | function queryForeignTokenID(address token) external view returns (bytes32);
2674
- | ^^^^^^^^^^^^^^^^^^^ help: consider using: `queryForeignTokenId`
2675
- |
2676
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2677
-
2678
- note[mixed-case-variable]: mutable variables should use mixedCase
2679
- --> src/BeefyClient.sol:655:17
2680
- |
2681
- 655 | bytes32 ticketID,
2682
- | ^^^^^^^^ help: consider using: `ticketId`
2683
- |
2684
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2685
-
2686
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
2687
- --> test/Agent.t.sol:4:8
2688
- |
2689
- 4 | import "forge-std/Test.sol";
2690
- | ^^^^^^^^^^^^^^^^^^^^
2691
- |
2692
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
2693
-
2694
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
2695
- --> test/Agent.t.sol:5:8
2696
- |
2697
- 5 | import "forge-std/console.sol";
2698
- | ^^^^^^^^^^^^^^^^^^^^^^^
2699
- |
2700
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
2701
-
2702
- note[unused-import]: unused imports should be removed
2703
- --> src/types/Common.sol:5:9
2704
- |
2705
- 5 | import {UD60x18} from "prb/math/src/UD60x18.sol";
2706
- | ^^^^^^^
2707
- |
2708
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2709
-
2710
- note[named-struct-fields]: prefer initializing structs with named fields
2711
- --> test/Math.t.sol:35:13
2712
- |
2713
- 35 | Log2Test(6, 48),
2714
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 6, input: 48 })`
2715
- |
2716
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2717
-
2718
- note[named-struct-fields]: prefer initializing structs with named fields
2719
- --> test/Math.t.sol:36:13
2720
- |
2721
- 36 | Log2Test(6, 64),
2722
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 6, input: 64 })`
2723
- |
2724
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2725
-
2726
- note[named-struct-fields]: prefer initializing structs with named fields
2727
- --> test/Math.t.sol:37:13
2728
- |
2729
- 37 | Log2Test(7, 65),
2730
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 7, input: 65 })`
2731
- |
2732
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2733
-
2734
- note[named-struct-fields]: prefer initializing structs with named fields
2735
- --> test/Math.t.sol:38:13
2736
- |
2737
- 38 | Log2Test(7, 96),
2738
- | ^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 7, input: 96 })`
2739
- |
2740
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2741
-
2742
- note[named-struct-fields]: prefer initializing structs with named fields
2743
- --> test/Math.t.sol:39:13
2744
- |
2745
- 39 | Log2Test(7, 128),
2746
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 7, input: 128 })`
2747
- |
2748
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2749
-
2750
- note[named-struct-fields]: prefer initializing structs with named fields
2751
- --> test/Math.t.sol:40:13
2752
- |
2753
- 40 | Log2Test(8, 129),
2754
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 8, input: 129 })`
2755
- |
2756
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2757
-
2758
- note[named-struct-fields]: prefer initializing structs with named fields
2759
- --> test/Math.t.sol:41:13
2760
- |
2761
- 41 | Log2Test(8, 192),
2762
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 8, input: 192 })`
2763
- |
2764
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2765
-
2766
- note[screaming-snake-case-const]: constants should use SCREAMING_SNAKE_CASE
2767
- --> test/utils/ForkTestFixtures.sol:33:24
2768
- |
2769
- 33 | Vm public constant vm = Vm(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D);
2770
- | ^^ help: consider using: `VM`
2771
- |
2772
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#screaming-snake-case-const
2773
-
2774
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
2775
- --> test/utils/ForkTestFixtures.sol:73:33
2776
- |
2777
- 73 | string memory data = vm.readFile(string.concat(vm.projectRoot(), fixturePath));
2778
- | ^^^^^^^^
2779
- |
2780
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
2781
-
2782
- note[unused-import]: unused imports should be removed
2783
- --> test/BeefyClient.t.sol:11:9
2784
- |
2785
- 11 | import {ScaleCodec} from "../src/utils/ScaleCodec.sol";
2786
- | ^^^^^^^^^^
2787
- |
2788
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
2789
-
2790
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2791
- --> test/BeefyClient.t.sol:42:24
2792
- |
2793
- 42 | bytes2 mmrRootID = bytes2("mh");
2794
- | ^^^^^^^^^^^^
2795
- |
2796
- = note: consider disabling this lint if you're certain the cast is safe
2797
-
2798
- // casting to 'bytes2' is safe because [explain why]
2799
- // forge-lint: disable-next-line(unsafe-typecast)
2800
-
2801
-
2802
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2803
-
2804
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
2805
- --> src/TokenLib.sol:76:26
2806
- |
2807
- 76 | bytes32 digest = keccak256(
2808
- | __________________________^
2809
- 77 | | abi.encodePacked(
2810
- 78 | | hex"1901",
2811
- 79 | | _domainSeparator(tokenName),
2812
- ... |
2813
- 86 | | );
2814
- | |_________^
2815
- |
2816
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
2817
-
2818
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
2819
- --> src/TokenLib.sol:99:16
2820
- |
2821
- 99 | return keccak256(
2822
- | ________________^
2823
- 100 | | abi.encode(
2824
- 101 | | DOMAIN_TYPEHASH,
2825
- 102 | | keccak256(bytes(name)),
2826
- ... |
2827
- 107 | | );
2828
- | |_________^
2829
- |
2830
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
2831
-
2832
- note[mixed-case-function]: function names should use mixedCase
2833
- --> src/BeefyClient.sol:776:14
2834
- |
2835
- 776 | function ensureProvidesMMRRoot(Commitment calldata commitment)
2836
- | ^^^^^^^^^^^^^^^^^^^^^ help: consider using: `ensureProvidesMmrRoot`
2837
- |
2838
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
2839
-
2840
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2841
- --> test/BeefyClientAdvanced.t.sol:300:36
2842
- |
2843
- 300 | leaf.nextAuthoritySetLen = uint32(VSET_LEN);
2844
- | ^^^^^^^^^^^^^^^^
2845
- |
2846
- = note: consider disabling this lint if you're certain the cast is safe
2847
-
2848
- // casting to 'uint32' is safe because [explain why]
2849
- // forge-lint: disable-next-line(unsafe-typecast)
2850
-
2851
-
2852
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2853
-
2854
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
2855
- --> test/BeefyClientAdvanced.t.sol:352:36
2856
- |
2857
- 352 | leaf.nextAuthoritySetLen = uint32(VSET_LEN);
2858
- | ^^^^^^^^^^^^^^^^
2859
- |
2860
- = note: consider disabling this lint if you're certain the cast is safe
2861
-
2862
- // casting to 'uint32' is safe because [explain why]
2863
- // forge-lint: disable-next-line(unsafe-typecast)
2864
-
2865
-
2866
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
2867
-
2868
- note[mixed-case-variable]: mutable variables should use mixedCase
2869
- --> src/v1/IGateway.sol:108:37
2870
- |
2871
- 108 | function tokenAddressOf(bytes32 tokenID) external view returns (address);
2872
- | ^^^^^^^ help: consider using: `tokenId`
2873
- |
2874
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2875
-
2876
- note[mixed-case-variable]: mutable variables should use mixedCase
2877
- --> test/utils/ForkTestFixtures.sol:132:15
2878
- |
2879
- 132 | bytes consensusEngineID;
2880
- | ^^^^^^^^^^^^^^^^^ help: consider using: `consensusEngineId`
2881
- |
2882
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
2883
-
2884
- note[named-struct-fields]: prefer initializing structs with named fields
2885
- --> test/Math.t.sol:42:13
2886
- |
2887
- 42 | Log2Test(8, 256),
2888
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 8, input: 256 })`
2889
- |
2890
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2891
-
2892
- note[named-struct-fields]: prefer initializing structs with named fields
2893
- --> test/Math.t.sol:43:13
2894
- |
2895
- 43 | Log2Test(9, 257),
2896
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 9, input: 257 })`
2897
- |
2898
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2899
-
2900
- note[named-struct-fields]: prefer initializing structs with named fields
2901
- --> test/Math.t.sol:44:13
2902
- |
2903
- 44 | Log2Test(9, 384),
2904
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 9, input: 384 })`
2905
- |
2906
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2907
-
2908
- note[named-struct-fields]: prefer initializing structs with named fields
2909
- --> test/Math.t.sol:45:13
2910
- |
2911
- 45 | Log2Test(9, 512),
2912
- | ^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 9, input: 512 })`
2913
- |
2914
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2915
-
2916
- note[named-struct-fields]: prefer initializing structs with named fields
2917
- --> test/Math.t.sol:46:13
2918
- |
2919
- 46 | Log2Test(10, 513),
2920
- | ^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 10, input: 513 })`
2921
- |
2922
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2923
-
2924
- note[named-struct-fields]: prefer initializing structs with named fields
2925
- --> test/Math.t.sol:47:13
2926
- |
2927
- 47 | Log2Test(10, 768),
2928
- | ^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 10, input: 768 })`
2929
- |
2930
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2931
-
2932
- note[named-struct-fields]: prefer initializing structs with named fields
2933
- --> test/Math.t.sol:48:13
2934
- |
2935
- 48 | Log2Test(10, 1024),
2936
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 10, input: 1024 })`
2937
- |
2938
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2939
-
2940
- note[named-struct-fields]: prefer initializing structs with named fields
2941
- --> test/Math.t.sol:49:13
2942
- |
2943
- 49 | Log2Test(11, 1025),
2944
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 11, input: 1025 })`
2945
- |
2946
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2947
-
2948
- note[named-struct-fields]: prefer initializing structs with named fields
2949
- --> test/Math.t.sol:50:13
2950
- |
2951
- 50 | Log2Test(11, 1536),
2952
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 11, input: 1536 })`
2953
- |
2954
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2955
-
2956
- note[named-struct-fields]: prefer initializing structs with named fields
2957
- --> test/Math.t.sol:51:13
2958
- |
2959
- 51 | Log2Test(11, 2048),
2960
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 11, input: 2048 })`
2961
- |
2962
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2963
-
2964
- note[named-struct-fields]: prefer initializing structs with named fields
2965
- --> test/Math.t.sol:52:13
2966
- |
2967
- 52 | Log2Test(12, 2049),
2968
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 12, input: 2049 })`
2969
- |
2970
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2971
-
2972
- note[named-struct-fields]: prefer initializing structs with named fields
2973
- --> test/Math.t.sol:53:13
2974
- |
2975
- 53 | Log2Test(12, 3072),
2976
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 12, input: 3072 })`
2977
- |
2978
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2979
-
2980
- note[named-struct-fields]: prefer initializing structs with named fields
2981
- --> test/Math.t.sol:54:13
2982
- |
2983
- 54 | Log2Test(12, 4096),
2984
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 12, input: 4096 })`
2985
- |
2986
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2987
-
2988
- note[named-struct-fields]: prefer initializing structs with named fields
2989
- --> test/Math.t.sol:55:13
2990
- |
2991
- 55 | Log2Test(13, 4097),
2992
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 13, input: 4097 })`
2993
- |
2994
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
2995
-
2996
- note[named-struct-fields]: prefer initializing structs with named fields
2997
- --> test/Math.t.sol:56:13
2998
- |
2999
- 56 | Log2Test(13, 6144),
3000
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 13, input: 6144 })`
3001
- |
3002
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3003
-
3004
- note[named-struct-fields]: prefer initializing structs with named fields
3005
- --> test/Math.t.sol:57:13
3006
- |
3007
- 57 | Log2Test(13, 8192),
3008
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 13, input: 8192 })`
3009
- |
3010
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3011
-
3012
- note[named-struct-fields]: prefer initializing structs with named fields
3013
- --> test/Math.t.sol:58:13
3014
- |
3015
- 58 | Log2Test(14, 8193),
3016
- | ^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 14, input: 8193 })`
3017
- |
3018
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3019
-
3020
- note[named-struct-fields]: prefer initializing structs with named fields
3021
- --> test/Math.t.sol:59:13
3022
- |
3023
- 59 | Log2Test(14, 12_288),
3024
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 14, input: 12_288 })`
3025
- |
3026
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3027
-
3028
- note[named-struct-fields]: prefer initializing structs with named fields
3029
- --> test/Math.t.sol:60:13
3030
- |
3031
- 60 | Log2Test(14, 16_384),
3032
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 14, input: 16_384 })`
3033
- |
3034
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3035
-
3036
- note[named-struct-fields]: prefer initializing structs with named fields
3037
- --> test/Math.t.sol:61:13
3038
- |
3039
- 61 | Log2Test(15, 16_385),
3040
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 15, input: 16_385 })`
3041
- |
3042
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3043
-
3044
- note[named-struct-fields]: prefer initializing structs with named fields
3045
- --> test/Math.t.sol:62:13
3046
- |
3047
- 62 | Log2Test(15, 24_576),
3048
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 15, input: 24_576 })`
3049
- |
3050
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3051
-
3052
- note[named-struct-fields]: prefer initializing structs with named fields
3053
- --> test/Math.t.sol:63:13
3054
- |
3055
- 63 | Log2Test(15, 32_768),
3056
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 15, input: 32_768 })`
3057
- |
3058
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3059
-
3060
- note[named-struct-fields]: prefer initializing structs with named fields
3061
- --> test/Math.t.sol:64:13
3062
- |
3063
- 64 | Log2Test(16, 32_769),
3064
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 16, input: 32_769 })`
3065
- |
3066
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3067
-
3068
- note[named-struct-fields]: prefer initializing structs with named fields
3069
- --> test/Math.t.sol:65:13
3070
- |
3071
- 65 | Log2Test(16, 49_152),
3072
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 16, input: 49_152 })`
3073
- |
3074
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3075
-
3076
- note[mixed-case-variable]: mutable variables should use mixedCase
3077
- --> src/v1/Calls.sol:133:40
3078
- |
3079
- 133 | function channelNoncesOf(ChannelID channelID) external view returns (uint64, uint64) {
3080
- | ^^^^^^^^^ help: consider using: `channelId`
3081
- |
3082
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3083
-
3084
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
3085
- --> test/BeefyClient.t.sol:550:47
3086
- |
3087
- 550 | _payload[0] = BeefyClient.PayloadItem(bytes2("ab"), hex"000102");
3088
- | ^^^^^^^^^^^^
3089
- |
3090
- = note: consider disabling this lint if you're certain the cast is safe
3091
-
3092
- // casting to 'bytes2' is safe because [explain why]
3093
- // forge-lint: disable-next-line(unsafe-typecast)
3094
-
3095
-
3096
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
3097
-
3098
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3099
- --> test/SparseBitmap.t.sol:4:8
3100
- |
3101
- 4 | import "forge-std/Test.sol";
3102
- | ^^^^^^^^^^^^^^^^^^^^
3103
- |
3104
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3105
-
3106
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3107
- --> test/SparseBitmap.t.sol:5:8
3108
- |
3109
- 5 | import "forge-std/console.sol";
3110
- | ^^^^^^^^^^^^^^^^^^^^^^^
3111
- |
3112
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3113
-
3114
- note[mixed-case-variable]: mutable variables should use mixedCase
3115
- --> src/v1/Calls.sol:138:47
3116
- |
3117
- 138 | function channelOperatingModeOf(ChannelID channelID) external view returns (OperatingMode) {
3118
- | ^^^^^^^^^ help: consider using: `channelId`
3119
- |
3120
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3121
-
3122
- note[mixed-case-variable]: mutable variables should use mixedCase
3123
- --> src/v1/Calls.sol:144:37
3124
- |
3125
- 144 | function tokenAddressOf(bytes32 tokenID) external view returns (address) {
3126
- | ^^^^^^^ help: consider using: `tokenId`
3127
- |
3128
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3129
-
3130
- note[unused-import]: unused imports should be removed
3131
- --> test/utils/ForkTestFixtures.sol:5:9
3132
- |
3133
- 5 | import {Test} from "forge-std/Test.sol";
3134
- | ^^^^
3135
- |
3136
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3137
-
3138
- note[unused-import]: unused imports should be removed
3139
- --> test/utils/ForkTestFixtures.sol:7:9
3140
- |
3141
- 7 | import {console} from "forge-std/console.sol";
3142
- | ^^^^^^^
3143
- |
3144
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3145
-
3146
- note[unused-import]: unused imports should be removed
3147
- --> test/utils/ForkTestFixtures.sol:9:9
3148
- |
3149
- 9 | import {IUpgradable} from "../../src/interfaces/IUpgradable.sol";
3150
- | ^^^^^^^^^^^
3151
- |
3152
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3153
-
3154
- note[unused-import]: unused imports should be removed
3155
- --> test/utils/ForkTestFixtures.sol:12:5
3156
- |
3157
- 12 | UpgradeParams,
3158
- | ^^^^^^^^^^^^^
3159
- |
3160
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3161
-
3162
- note[unused-import]: unused imports should be removed
3163
- --> test/utils/ForkTestFixtures.sol:13:5
3164
- |
3165
- 13 | SetOperatingModeParams,
3166
- | ^^^^^^^^^^^^^^^^^^^^^^
3167
- |
3168
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3169
-
3170
- note[unused-import]: unused imports should be removed
3171
- --> test/utils/ForkTestFixtures.sol:14:5
3172
- |
3173
- 14 | OperatingMode,
3174
- | ^^^^^^^^^^^^^
3175
- |
3176
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3177
-
3178
- note[unused-import]: unused imports should be removed
3179
- --> test/utils/ForkTestFixtures.sol:15:5
3180
- |
3181
- 15 | RegisterForeignTokenParams,
3182
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^
3183
- |
3184
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3185
-
3186
- note[unused-import]: unused imports should be removed
3187
- --> test/utils/ForkTestFixtures.sol:17:5
3188
- |
3189
- 17 | ParaID,
3190
- | ^^^^^^
3191
- |
3192
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3193
-
3194
- note[unused-import]: unused imports should be removed
3195
- --> test/utils/ForkTestFixtures.sol:18:5
3196
- |
3197
- 18 | OperatingMode,
3198
- | ^^^^^^^^^^^^^
3199
- |
3200
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3201
-
3202
- note[unused-import]: unused imports should be removed
3203
- --> test/utils/ForkTestFixtures.sol:21:5
3204
- |
3205
- 21 | TokenInfo
3206
- | ^^^^^^^^^
3207
- |
3208
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3209
-
3210
- note[mixed-case-function]: function names should use mixedCase
3211
- --> src/BeefyClient.sol:819:14
3212
- |
3213
- 819 | function encodeMMRLeaf(MMRLeaf calldata leaf) internal pure returns (bytes memory) {
3214
- | ^^^^^^^^^^^^^ help: consider using: `encodeMmrLeaf`
3215
- |
3216
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3217
-
3218
- note[mixed-case-variable]: mutable variables should use mixedCase
3219
- --> src/BeefyClient.sol:853:17
3220
- |
3221
- 853 | bytes32 ticketID,
3222
- | ^^^^^^^^ help: consider using: `ticketId`
3223
- |
3224
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3225
-
3226
- note[mixed-case-variable]: mutable variables should use mixedCase
3227
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL1Adaptor.s.sol:16:17
3228
- |
3229
- 16 | address SPOKE_POOL_ADDRESS;
3230
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `spokePoolAddress`
3231
- |
3232
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3233
-
3234
- note[mixed-case-variable]: mutable variables should use mixedCase
3235
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL1Adaptor.s.sol:17:17
3236
- |
3237
- 17 | address BASE_MULTI_CALL_HANDLER_ADDRESS;
3238
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `baseMultiCallHandlerAddress`
3239
- |
3240
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3241
-
3242
- note[mixed-case-variable]: mutable variables should use mixedCase
3243
- --> scripts/l2-integration/across/deploy/DeploySnowbridgeL1Adaptor.s.sol:18:17
3244
- |
3245
- 18 | address WETH9_ADDRESS;
3246
- | ^^^^^^^^^^^^^ help: consider using: `weth9Address`
3247
- |
3248
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3249
-
3250
- note[mixed-case-variable]: mutable variables should use mixedCase
3251
- --> src/v1/Calls.sol:185:19
3252
- |
3253
- 185 | ChannelID channelID = ticket.dest.into();
3254
- | ^^^^^^^^^ help: consider using: `channelId`
3255
- |
3256
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3257
-
3258
- note[mixed-case-variable]: mutable variables should use mixedCase
3259
- --> src/v1/Calls.sol:216:17
3260
- |
3261
- 216 | bytes32 messageID = keccak256(abi.encodePacked(channelID, channel.outboundNonce));
3262
- | ^^^^^^^^^ help: consider using: `messageId`
3263
- |
3264
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3265
-
3266
- note[unused-import]: unused imports should be removed
3267
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:4:17
3268
- |
3269
- 4 | import {Script, console} from "forge-std/Script.sol";
3270
- | ^^^^^^^
3271
- |
3272
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3273
-
3274
- note[unused-import]: unused imports should be removed
3275
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:9:9
3276
- |
3277
- 9 | import {ISpokePool} from "../../../../src/l2-integration/interfaces/ISpokePool.sol";
3278
- | ^^^^^^^^^^
3279
- |
3280
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3281
-
3282
- note[unused-import]: unused imports should be removed
3283
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:10:36
3284
- |
3285
- 10 | import {DepositParams, SendParams, SwapParams} from "../../../../src/l2-integration/Types.sol";
3286
- | ^^^^^^^^^^
3287
- |
3288
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3289
-
3290
- note[unused-import]: unused imports should be removed
3291
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:13:5
3292
- |
3293
- 13 | BASE_CHAIN_ID as SEPOLIA_BASE_CHAIN_ID,
3294
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3295
- |
3296
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3297
-
3298
- note[unused-import]: unused imports should be removed
3299
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:21:5
3300
- |
3301
- 21 | BASE_CHAIN_ID as MAINNET_BASE_CHAIN_ID,
3302
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3303
- |
3304
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3305
-
3306
- note[unused-import]: unused imports should be removed
3307
- --> scripts/l2-integration/across/test/TestSnowbridgeL2AdaptorWeth.s.sol:25:5
3308
- |
3309
- 25 | ARBITRUM_CHAIN_ID as MAINNET_ARBITRUM_CHAIN_ID,
3310
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3311
- |
3312
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3313
-
3314
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
3315
- --> test/Bitfield.t.sol:21:16
3316
- |
3317
- 21 | vm.readFile(string.concat(vm.projectRoot(), "/test/data/beefy-validator-set.json"));
3318
- | ^^^^^^^^
3319
- |
3320
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
3321
-
3322
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3323
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:4:8
3324
- |
3325
- 4 | import "forge-std/Script.sol";
3326
- | ^^^^^^^^^^^^^^^^^^^^^^
3327
- |
3328
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3329
-
3330
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3331
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:5:8
3332
- |
3333
- 5 | import "forge-std/console.sol";
3334
- | ^^^^^^^^^^^^^^^^^^^^^^^
3335
- |
3336
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3337
-
3338
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3339
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:6:8
3340
- |
3341
- 6 | import "openzeppelin/token/ERC20/IERC20.sol";
3342
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3343
- |
3344
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3345
-
3346
- note[mixed-case-variable]: mutable variables should use mixedCase
3347
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:27:16
3348
- |
3349
- 27 | uint24 POOL_FEE = 500; // 0.05%
3350
- | ^^^^^^^^ help: consider using: `poolFee`
3351
- |
3352
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3353
-
3354
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
3355
- --> test/Bitfield.t.sol:131:16
3356
- |
3357
- 131 | vm.readFile(string.concat(vm.projectRoot(), "/test/data/beefy-validator-set.json"));
3358
- | ^^^^^^^^
3359
- |
3360
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
3361
-
3362
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
3363
- --> test/Bitfield.t.sol:150:16
3364
- |
3365
- 150 | vm.readFile(string.concat(vm.projectRoot(), "/test/data/beefy-validator-set.json"));
3366
- | ^^^^^^^^
3367
- |
3368
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
3369
-
3370
- note[named-struct-fields]: prefer initializing structs with named fields
3371
- --> test/Math.t.sol:66:13
3372
- |
3373
- 66 | Log2Test(16, 65_535)
3374
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `Log2Test({ result: 16, input: 65_535 })`
3375
- |
3376
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3377
-
3378
- note[unused-import]: unused imports should be removed
3379
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:7:9
3380
- |
3381
- 7 | import {WETH9} from "canonical-weth/WETH9.sol";
3382
- | ^^^^^
3383
- |
3384
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3385
-
3386
- note[unused-import]: unused imports should be removed
3387
- --> scripts/l2-integration/across/test/TestUniswapQuoter.s.sol:9:9
3388
- |
3389
- 9 | import {ISwapRouter} from "../interfaces/ISwapRouter.sol";
3390
- | ^^^^^^^^^^^
3391
- |
3392
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3393
-
3394
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
3395
- --> src/BeefyClient.sol:196:42
3396
- |
3397
- 196 | bytes2 public constant MMR_ROOT_ID = bytes2("mh");
3398
- | ^^^^^^^^^^^^
3399
- |
3400
- = note: consider disabling this lint if you're certain the cast is safe
3401
-
3402
- // casting to 'bytes2' is safe because [explain why]
3403
- // forge-lint: disable-next-line(unsafe-typecast)
3404
-
3405
-
3406
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
3407
-
3408
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3409
- --> test/Verification.t.sol:4:8
3410
- |
3411
- 4 | import "openzeppelin/utils/Strings.sol";
3412
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3413
- |
3414
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3415
-
3416
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3417
- --> test/Verification.t.sol:5:8
3418
- |
3419
- 5 | import "forge-std/Test.sol";
3420
- | ^^^^^^^^^^^^^^^^^^^^
3421
- |
3422
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3423
-
3424
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3425
- --> test/FiatShamirPaddingBitsGrind.t.sol:2:8
3426
- |
3427
- 2 | import "forge-std/Test.sol";
3428
- | ^^^^^^^^^^^^^^^^^^^^
3429
- |
3430
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3431
-
3432
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3433
- --> src/BeefyClient.sol:311:34
3434
- |
3435
- 311 | bytes32 commitmentHash = keccak256(encodeCommitment(commitment));
3436
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3437
- |
3438
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3439
-
3440
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3441
- --> src/BeefyClient.sol:393:34
3442
- |
3443
- 393 | bytes32 commitmentHash = keccak256(encodeCommitment(commitment));
3444
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3445
- |
3446
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3447
-
3448
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3449
- --> src/BeefyClient.sol:475:16
3450
- |
3451
- 475 | return keccak256(encodeCommitment(commitment));
3452
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3453
- |
3454
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3455
-
3456
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3457
- --> src/BeefyClient.sol:520:34
3458
- |
3459
- 520 | bytes32 commitmentHash = keccak256(encodeCommitment(commitment));
3460
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3461
- |
3462
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3463
-
3464
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3465
- --> src/BeefyClient.sol:567:34
3466
- |
3467
- 567 | bytes32 commitmentHash = keccak256(encodeCommitment(commitment));
3468
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3469
- |
3470
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3471
-
3472
- note[unused-import]: unused imports should be removed
3473
- --> scripts/upgrade/DeployGateway.sol:9:9
3474
- |
3475
- 9 | import {ParaID} from "../../src/Types.sol";
3476
- | ^^^^^^
3477
- |
3478
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3479
-
3480
- note[unused-import]: unused imports should be removed
3481
- --> test/Bitfield.t.sol:5:9
3482
- |
3483
- 5 | import {console} from "forge-std/console.sol";
3484
- | ^^^^^^^
3485
- |
3486
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3487
-
3488
- note[mixed-case-variable]: mutable variables should use mixedCase
3489
- --> test/FiatShamirPaddingBitsGrind.t.sol:48:17
3490
- |
3491
- 48 | bytes32 maliciousMMRRoot = keccak256("attacker-chosen-mmr-root");
3492
- | ^^^^^^^^^^^^^^^^ help: consider using: `maliciousMmrRoot`
3493
- |
3494
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3495
-
3496
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3497
- --> test/Token.t.sol:4:8
3498
- |
3499
- 4 | import "forge-std/Test.sol";
3500
- | ^^^^^^^^^^^^^^^^^^^^
3501
- |
3502
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3503
-
3504
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3505
- --> test/Token.t.sol:5:8
3506
- |
3507
- 5 | import "forge-std/console.sol";
3508
- | ^^^^^^^^^^^^^^^^^^^^^^^
3509
- |
3510
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3511
-
3512
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
3513
- --> test/FiatShamirPaddingBitsGrind.t.sol:30:54
3514
- |
3515
- 30 | BeefyClient.ValidatorSet({id: 1, length: uint128(N), root: vsetRoot});
3516
- | ^^^^^^^^^^
3517
- |
3518
- = note: consider disabling this lint if you're certain the cast is safe
3519
-
3520
- // casting to 'uint128' is safe because [explain why]
3521
- // forge-lint: disable-next-line(unsafe-typecast)
3522
-
3523
-
3524
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
3525
-
3526
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
3527
- --> test/FiatShamirPaddingBitsGrind.t.sol:32:54
3528
- |
3529
- 32 | BeefyClient.ValidatorSet({id: 2, length: uint128(N), root: vsetRoot});
3530
- | ^^^^^^^^^^
3531
- |
3532
- = note: consider disabling this lint if you're certain the cast is safe
3533
-
3534
- // casting to 'uint128' is safe because [explain why]
3535
- // forge-lint: disable-next-line(unsafe-typecast)
3536
-
3537
-
3538
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
3539
-
3540
- note[mixed-case-variable]: mutable variables should use mixedCase
3541
- --> src/v1/Calls.sol:325:17
3542
- |
3543
- 325 | bytes32 foreignID,
3544
- | ^^^^^^^^^ help: consider using: `foreignId`
3545
- |
3546
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3547
-
3548
- note[unsafe-cheatcode]: usage of unsafe cheatcodes that can perform dangerous operations
3549
- --> scripts/DeployLocal.sol:36:47
3550
- |
3551
- 36 | string memory beefyCheckpointRaw = vm.readFile(beefyCheckpointFile);
3552
- | ^^^^^^^^
3553
- |
3554
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-cheatcode
3555
-
3556
- note[mixed-case-variable]: mutable variables should use mixedCase
3557
- --> test/Token.t.sol:249:17
3558
- |
3559
- 249 | bytes32 PERMIT_TYPEHASH = keccak256(
3560
- | ^^^^^^^^^^^^^^^ help: consider using: `permitTypehash`
3561
- |
3562
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3563
-
3564
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3565
- --> src/BeefyClient.sol:767:32
3566
- |
3567
- 767 | bytes32 bitFieldHash = keccak256(abi.encodePacked(bitfield));
3568
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3569
- |
3570
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3571
-
3572
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3573
- --> test/GatewayV2.t.sol:118:8
3574
- |
3575
- 118 | import "./mocks/FeeOnTransferToken.sol";
3576
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3577
- |
3578
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3579
-
3580
- note[mixed-case-variable]: mutable variables should use mixedCase
3581
- --> test/GatewayV2.t.sol:142:20
3582
- |
3583
- 142 | bytes32 public dotTokenID;
3584
- | ^^^^^^^^^^ help: consider using: `dotTokenId`
3585
- |
3586
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3587
-
3588
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3589
- --> test/Verification.t.sol:6:8
3590
- |
3591
- 6 | import "forge-std/console.sol";
3592
- | ^^^^^^^^^^^^^^^^^^^^^^^
3593
- |
3594
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3595
-
3596
- note[mixed-case-variable]: mutable variables should use mixedCase
3597
- --> test/Verification.t.sol:18:19
3598
- |
3599
- 18 | bytes4 public encodedParachainID;
3600
- | ^^^^^^^^^^^^^^^^^^ help: consider using: `encodedParachainId`
3601
- |
3602
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3603
-
3604
- note[mixed-case-function]: function names should use mixedCase
3605
- --> test/SubstrateTypes.t.sol:10:14
3606
- |
3607
- 10 | function H160(address account) external pure returns (bytes memory) {
3608
- | ^^^^ help: consider using: `h160`
3609
- |
3610
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3611
-
3612
- note[mixed-case-function]: function names should use mixedCase
3613
- --> test/SubstrateTypes.t.sol:14:14
3614
- |
3615
- 14 | function VecU8(bytes calldata input) external pure returns (bytes memory) {
3616
- | ^^^^^ help: consider using: `vecU8`
3617
- |
3618
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3619
-
3620
- note[mixed-case-function]: function names should use mixedCase
3621
- --> test/SubstrateTypes.t.sol:18:14
3622
- |
3623
- 18 | function None() external pure returns (bytes memory) {
3624
- | ^^^^ help: consider using: `none`
3625
- |
3626
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3627
-
3628
- note[mixed-case-function]: function names should use mixedCase
3629
- --> test/SubstrateTypes.t.sol:22:14
3630
- |
3631
- 22 | function SendTokenToAssetHubAddress32(
3632
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAssetHubAddress32`
3633
- |
3634
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3635
-
3636
- note[unused-import]: unused imports should be removed
3637
- --> test/GatewayV2.t.sol:5:9
3638
- |
3639
- 5 | import {Strings} from "openzeppelin/utils/Strings.sol";
3640
- | ^^^^^^^
3641
- |
3642
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3643
-
3644
- note[unused-import]: unused imports should be removed
3645
- --> test/GatewayV2.t.sol:6:9
3646
- |
3647
- 6 | import {console} from "forge-std/console.sol";
3648
- | ^^^^^^^
3649
- |
3650
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3651
-
3652
- note[unused-import]: unused imports should be removed
3653
- --> test/GatewayV2.t.sol:8:9
3654
- |
3655
- 8 | import {BeefyClient} from "../src/BeefyClient.sol";
3656
- | ^^^^^^^^^^^
3657
- |
3658
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3659
-
3660
- note[unused-import]: unused imports should be removed
3661
- --> test/GatewayV2.t.sol:12:9
3662
- |
3663
- 12 | import {IInitializable} from "../src/interfaces/IInitializable.sol";
3664
- | ^^^^^^^^^^^^^^
3665
- |
3666
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3667
-
3668
- note[unused-import]: unused imports should be removed
3669
- --> test/GatewayV2.t.sol:13:9
3670
- |
3671
- 13 | import {IUpgradable} from "../src/interfaces/IUpgradable.sol";
3672
- | ^^^^^^^^^^^
3673
- |
3674
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3675
-
3676
- note[unused-import]: unused imports should be removed
3677
- --> test/GatewayV2.t.sol:14:9
3678
- |
3679
- 14 | import {Gateway} from "../src/Gateway.sol";
3680
- | ^^^^^^^
3681
- |
3682
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3683
-
3684
- note[unused-import]: unused imports should be removed
3685
- --> test/GatewayV2.t.sol:16:9
3686
- |
3687
- 16 | import {MockGatewayV2} from "./mocks/MockGatewayV2.sol";
3688
- | ^^^^^^^^^^^^^
3689
- |
3690
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3691
-
3692
- note[unused-import]: unused imports should be removed
3693
- --> test/GatewayV2.t.sol:21:9
3694
- |
3695
- 21 | import {Agent} from "../src/Agent.sol";
3696
- | ^^^^^
3697
- |
3698
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3699
-
3700
- note[unused-import]: unused imports should be removed
3701
- --> test/GatewayV2.t.sol:23:9
3702
- |
3703
- 23 | import {SubstrateTypes} from "./../src/SubstrateTypes.sol";
3704
- | ^^^^^^^^^^^^^^
3705
- |
3706
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3707
-
3708
- note[unused-import]: unused imports should be removed
3709
- --> test/GatewayV2.t.sol:24:24
3710
- |
3711
- 24 | import {OperatingMode, ParaID, CommandV2, CommandKind, InboundMessageV2} from "../src/Types.sol";
3712
- | ^^^^^^
3713
- |
3714
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3715
-
3716
- note[unused-import]: unused imports should be removed
3717
- --> test/GatewayV2.t.sol:26:9
3718
- |
3719
- 26 | import {NativeTransferFailed} from "../src/utils/SafeTransfer.sol";
3720
- | ^^^^^^^^^^^^^^^^^^^^
3721
- |
3722
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3723
-
3724
- note[unused-import]: unused imports should be removed
3725
- --> test/GatewayV2.t.sol:27:9
3726
- |
3727
- 27 | import {PricingStorage} from "../src/storage/PricingStorage.sol";
3728
- | ^^^^^^^^^^^^^^
3729
- |
3730
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3731
-
3732
- note[unused-import]: unused imports should be removed
3733
- --> test/GatewayV2.t.sol:29:9
3734
- |
3735
- 29 | import {TokenLib} from "../src/TokenLib.sol";
3736
- | ^^^^^^^^
3737
- |
3738
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3739
-
3740
- note[unused-import]: unused imports should be removed
3741
- --> test/GatewayV2.t.sol:46:5
3742
- |
3743
- 46 | Xcm,
3744
- | ^^^
3745
- |
3746
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3747
-
3748
- note[unused-import]: unused imports should be removed
3749
- --> test/GatewayV2.t.sol:51:5
3750
- |
3751
- 51 | AgentExecuteCommand,
3752
- | ^^^^^^^^^^^^^^^^^^^
3753
- |
3754
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3755
-
3756
- note[unused-import]: unused imports should be removed
3757
- --> test/GatewayV2.t.sol:52:5
3758
- |
3759
- 52 | InboundMessage,
3760
- | ^^^^^^^^^^^^^^
3761
- |
3762
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3763
-
3764
- note[unused-import]: unused imports should be removed
3765
- --> test/GatewayV2.t.sol:54:5
3766
- |
3767
- 54 | ParaID,
3768
- | ^^^^^^
3769
- |
3770
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3771
-
3772
- note[unused-import]: unused imports should be removed
3773
- --> test/GatewayV2.t.sol:55:5
3774
- |
3775
- 55 | Command
3776
- | ^^^^^^^
3777
- |
3778
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3779
-
3780
- note[unused-import]: unused imports should be removed
3781
- --> test/GatewayV2.t.sol:59:9
3782
- |
3783
- 59 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
3784
- | ^^^^^^^
3785
- |
3786
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3787
-
3788
- note[unused-import]: unused imports should be removed
3789
- --> test/GatewayV2.t.sol:59:27
3790
- |
3791
- 59 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
3792
- | ^^^^^^^
3793
- |
3794
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3795
-
3796
- note[mixed-case-variable]: mutable variables should use mixedCase
3797
- --> test/Token.t.sol:286:17
3798
- |
3799
- 286 | bytes32 PERMIT_TYPEHASH = keccak256(
3800
- | ^^^^^^^^^^^^^^^ help: consider using: `permitTypehash`
3801
- |
3802
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3803
-
3804
- note[mixed-case-function]: function names should use mixedCase
3805
- --> test/SubstrateTypes.t.sol:31:14
3806
- |
3807
- 31 | function SendTokenToAddress32(
3808
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAddress32`
3809
- |
3810
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3811
-
3812
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
3813
- --> src/BeefyClient.sol:845:30
3814
- |
3815
- 845 | bytes32 hashedLeaf = keccak256(abi.encodePacked(account));
3816
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3817
- |
3818
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
3819
-
3820
- note[unused-import]: unused imports should be removed
3821
- --> scripts/DeployLocal.sol:17:9
3822
- |
3823
- 17 | import {UD60x18, ud60x18} from "prb/math/src/UD60x18.sol";
3824
- | ^^^^^^^
3825
- |
3826
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
3827
-
3828
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
3829
- --> scripts/DeployLocal.sol:91:9
3830
- |
3831
- 91 | weth.transfer(user, 10 ether);
3832
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3833
- |
3834
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
3835
-
3836
- note[mixed-case-function]: function names should use mixedCase
3837
- --> test/SubstrateTypes.t.sol:44:14
3838
- |
3839
- 44 | function SendTokenToAddress20(
3840
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendTokenToAddress20`
3841
- |
3842
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3843
-
3844
- note[mixed-case-function]: function names should use mixedCase
3845
- --> test/SubstrateTypes.t.sol:57:14
3846
- |
3847
- 57 | function SendForeignTokenToAssetHubAddress32(
3848
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAssetHubAddress32`
3849
- |
3850
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3851
-
3852
- note[mixed-case-variable]: mutable variables should use mixedCase
3853
- --> test/SubstrateTypes.t.sol:58:17
3854
- |
3855
- 58 | bytes32 tokenID,
3856
- | ^^^^^^^ help: consider using: `tokenId`
3857
- |
3858
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3859
-
3860
- note[mixed-case-function]: function names should use mixedCase
3861
- --> test/SubstrateTypes.t.sol:68:14
3862
- |
3863
- 68 | function SendForeignTokenToAddress32(
3864
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAddress32`
3865
- |
3866
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3867
-
3868
- note[mixed-case-variable]: mutable variables should use mixedCase
3869
- --> test/SubstrateTypes.t.sol:69:17
3870
- |
3871
- 69 | bytes32 tokenID,
3872
- | ^^^^^^^ help: consider using: `tokenId`
3873
- |
3874
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3875
-
3876
- note[mixed-case-function]: function names should use mixedCase
3877
- --> test/SubstrateTypes.t.sol:81:14
3878
- |
3879
- 81 | function SendForeignTokenToAddress20(
3880
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `sendForeignTokenToAddress20`
3881
- |
3882
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-function
3883
-
3884
- note[mixed-case-variable]: mutable variables should use mixedCase
3885
- --> test/SubstrateTypes.t.sol:82:17
3886
- |
3887
- 82 | bytes32 tokenID,
3888
- | ^^^^^^^ help: consider using: `tokenId`
3889
- |
3890
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3891
-
3892
- note[named-struct-fields]: prefer initializing structs with named fields
3893
- --> test/GatewayV2.t.sol:257:13
3894
- |
3895
- 257 | RegisterForeignTokenParams(id, name, symbol, decimals);
3896
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `RegisterForeignTokenParams({ foreignTokenID: id, name: name, symbol: symbol, decimals: decimals })`
3897
- |
3898
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3899
-
3900
- note[named-struct-fields]: prefer initializing structs with named fields
3901
- --> test/GatewayV2.t.sol:271:48
3902
- |
3903
- 271 | MintForeignTokenParams memory params = MintForeignTokenParams(id, recipient, amount);
3904
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using named fields: `MintForeignTokenParams({ foreignTokenID: id, recipient: recipient, amount: amount })`
3905
- |
3906
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
3907
-
3908
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3909
- --> test/GatewayV1.t.sol:68:8
3910
- |
3911
- 68 | import "./mocks/HighGasToken.sol";
3912
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^
3913
- |
3914
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3915
-
3916
- note[mixed-case-variable]: mutable variables should use mixedCase
3917
- --> test/SubstrateTypes.t.sol:203:17
3918
- |
3919
- 203 | bytes32 tokenID = keccak256("tokenid");
3920
- | ^^^^^^^ help: consider using: `tokenId`
3921
- |
3922
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3923
-
3924
- note[mixed-case-variable]: mutable variables should use mixedCase
3925
- --> test/SubstrateTypes.t.sol:226:17
3926
- |
3927
- 226 | bytes32 tokenID = keccak256("t2");
3928
- | ^^^^^^^ help: consider using: `tokenId`
3929
- |
3930
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3931
-
3932
- note[mixed-case-variable]: mutable variables should use mixedCase
3933
- --> test/SubstrateTypes.t.sol:253:17
3934
- |
3935
- 253 | bytes32 tokenID = keccak256("t3");
3936
- | ^^^^^^^ help: consider using: `tokenId`
3937
- |
3938
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3939
-
3940
- note[unaliased-plain-import]: use named imports '{A, B}' or alias 'import ".." as X'
3941
- --> test/GatewayV1.t.sol:69:8
3942
- |
3943
- 69 | import "./mocks/FeeOnTransferToken.sol";
3944
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3945
- |
3946
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unaliased-plain-import
3947
-
3948
- note[mixed-case-variable]: mutable variables should use mixedCase
3949
- --> test/GatewayV1.t.sol:75:27
3950
- |
3951
- 75 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bool success
3952
- | ^^^^^^^^^ help: consider using: `channelId`
3953
- |
3954
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3955
-
3956
- note[mixed-case-variable]: mutable variables should use mixedCase
3957
- --> test/GatewayV1.t.sol:75:68
3958
- |
3959
- 75 | ChannelID indexed channelID, uint64 nonce, bytes32 indexed messageID, bool success
3960
- | ^^^^^^^^^ help: consider using: `messageId`
3961
- |
3962
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3963
-
3964
- note[mixed-case-variable]: mutable variables should use mixedCase
3965
- --> test/GatewayV1.t.sol:78:19
3966
- |
3967
- 78 | ParaID public bridgeHubParaID = ParaID.wrap(1013);
3968
- | ^^^^^^^^^^^^^^^ help: consider using: `bridgeHubParaId`
3969
- |
3970
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3971
-
3972
- note[mixed-case-variable]: mutable variables should use mixedCase
3973
- --> test/GatewayV1.t.sol:80:20
3974
- |
3975
- 80 | bytes32 public bridgeHubAgentID =
3976
- | ^^^^^^^^^^^^^^^^ help: consider using: `bridgeHubAgentId`
3977
- |
3978
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3979
-
3980
- note[mixed-case-variable]: mutable variables should use mixedCase
3981
- --> test/GatewayV1.t.sol:84:19
3982
- |
3983
- 84 | ParaID public assetHubParaID = ParaID.wrap(1000);
3984
- | ^^^^^^^^^^^^^^ help: consider using: `assetHubParaId`
3985
- |
3986
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3987
-
3988
- note[mixed-case-variable]: mutable variables should use mixedCase
3989
- --> test/GatewayV1.t.sol:85:20
3990
- |
3991
- 85 | bytes32 public assetHubAgentID =
3992
- | ^^^^^^^^^^^^^^^ help: consider using: `assetHubAgentId`
3993
- |
3994
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
3995
-
3996
- note[mixed-case-variable]: mutable variables should use mixedCase
3997
- --> test/Token.t.sol:317:17
3998
- |
3999
- 317 | bytes32 PERMIT_TYPEHASH = keccak256(
4000
- | ^^^^^^^^^^^^^^^ help: consider using: `permitTypehash`
4001
- |
4002
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4003
-
4004
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
4005
- --> test/GatewayV2.t.sol:977:75
4006
- |
4007
- 977 | token: address(0), recipient: address(recipient), amount: uint128(amt)
4008
- | ^^^^^^^^^^^^
4009
- |
4010
- = note: consider disabling this lint if you're certain the cast is safe
4011
-
4012
- // casting to 'uint128' is safe because [explain why]
4013
- // forge-lint: disable-next-line(unsafe-typecast)
4014
-
4015
-
4016
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
4017
-
4018
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
4019
- --> test/GatewayV2.t.sol:1001:74
4020
- |
4021
- 1001 | token: address(token), recipient: address(this), amount: uint128(tAmt)
4022
- | ^^^^^^^^^^^^^
4023
- |
4024
- = note: consider disabling this lint if you're certain the cast is safe
4025
-
4026
- // casting to 'uint128' is safe because [explain why]
4027
- // forge-lint: disable-next-line(unsafe-typecast)
4028
-
4029
-
4030
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
4031
-
4032
- note[mixed-case-variable]: mutable variables should use mixedCase
4033
- --> test/GatewayV1.t.sol:107:20
4034
- |
4035
- 107 | bytes32 public messageID = keccak256("cabbage");
4036
- | ^^^^^^^^^ help: consider using: `messageId`
4037
- |
4038
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4039
-
4040
- note[unused-import]: unused imports should be removed
4041
- --> src/v1/Calls.sol:14:9
4042
- |
4043
- 14 | import {AgentExecutor} from "../AgentExecutor.sol";
4044
- | ^^^^^^^^^^^^^
4045
- |
4046
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4047
-
4048
- note[unused-import]: unused imports should be removed
4049
- --> src/v1/Calls.sol:15:9
4050
- |
4051
- 15 | import {Agent} from "../Agent.sol";
4052
- | ^^^^^
4053
- |
4054
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4055
-
4056
- note[unused-import]: unused imports should be removed
4057
- --> src/v1/Calls.sol:16:9
4058
- |
4059
- 16 | import {Call} from "../utils/Call.sol";
4060
- | ^^^^
4061
- |
4062
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4063
-
4064
- note[unused-import]: unused imports should be removed
4065
- --> src/v1/Calls.sol:25:5
4066
- |
4067
- 25 | AgentExecuteCommand,
4068
- | ^^^^^^^^^^^^^^^^^^^
4069
- |
4070
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4071
-
4072
- note[unused-import]: unused imports should be removed
4073
- --> src/v1/Calls.sol:31:18
4074
- |
4075
- 31 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
4076
- | ^^^^^^^
4077
- |
4078
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4079
-
4080
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
4081
- --> test/GatewayV2.t.sol:1065:20
4082
- |
4083
- 1065 | m.origin = bytes32("x");
4084
- | ^^^^^^^^^^^^
4085
- |
4086
- = note: consider disabling this lint if you're certain the cast is safe
4087
-
4088
- // casting to 'bytes32' is safe because [explain why]
4089
- // forge-lint: disable-next-line(unsafe-typecast)
4090
-
4091
-
4092
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
4093
-
4094
- warning[unsafe-typecast]: typecasts that can truncate values should be checked
4095
- --> test/GatewayV2.t.sol:1146:23
4096
- |
4097
- 1146 | msgv.origin = bytes32("orig");
4098
- | ^^^^^^^^^^^^^^^
4099
- |
4100
- = note: consider disabling this lint if you're certain the cast is safe
4101
-
4102
- // casting to 'bytes32' is safe because [explain why]
4103
- // forge-lint: disable-next-line(unsafe-typecast)
4104
-
4105
-
4106
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unsafe-typecast
4107
-
4108
- note[mixed-case-variable]: mutable variables should use mixedCase
4109
- --> test/Token.t.sol:558:17
4110
- |
4111
- 558 | bytes32 PERMIT_TYPEHASH = keccak256(
4112
- | ^^^^^^^^^^^^^^^ help: consider using: `permitTypehash`
4113
- |
4114
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4115
-
4116
- note[mixed-case-variable]: mutable variables should use mixedCase
4117
- --> test/GatewayV1.t.sol:123:20
4118
- |
4119
- 123 | bytes32 public dotTokenID;
4120
- | ^^^^^^^^^^ help: consider using: `dotTokenId`
4121
- |
4122
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4123
-
4124
- note[mixed-case-variable]: mutable variables should use mixedCase
4125
- --> test/GatewayV1.t.sol:175:17
4126
- |
4127
- 175 | bytes32 agentID,
4128
- | ^^^^^^^ help: consider using: `agentId`
4129
- |
4130
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4131
-
4132
- note[mixed-case-variable]: mutable variables should use mixedCase
4133
- --> test/GatewayV1.t.sol:188:17
4134
- |
4135
- 188 | bytes32 agentID,
4136
- | ^^^^^^^ help: consider using: `agentId`
4137
- |
4138
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4139
-
4140
- note[asm-keccak256]: use of inefficient hashing mechanism; consider using inline assembly
4141
- --> src/v1/Calls.sol:216:29
4142
- |
4143
- 216 | bytes32 messageID = keccak256(abi.encodePacked(channelID, channel.outboundNonce));
4144
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4145
- |
4146
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#asm-keccak256
4147
-
4148
- note[mixed-case-variable]: mutable variables should use mixedCase
4149
- --> test/Token.t.sol:573:17
4150
- |
4151
- 573 | bytes32 DOMAIN_SEPARATOR = token.DOMAIN_SEPARATOR();
4152
- | ^^^^^^^^^^^^^^^^ help: consider using: `domainSeparator`
4153
- |
4154
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4155
-
4156
- note[mixed-case-variable]: mutable variables should use mixedCase
4157
- --> test/GatewayV1.t.sol:612:16
4158
- |
4159
- 612 | ParaID paraID = ParaID.wrap(1000);
4160
- | ^^^^^^ help: consider using: `paraId`
4161
- |
4162
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4163
-
4164
- note[mixed-case-variable]: mutable variables should use mixedCase
4165
- --> test/Token.t.sol:684:17
4166
- |
4167
- 684 | bytes32 PERMIT_TYPEHASH = keccak256(
4168
- | ^^^^^^^^^^^^^^^ help: consider using: `permitTypehash`
4169
- |
4170
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4171
-
4172
- note[mixed-case-variable]: mutable variables should use mixedCase
4173
- --> test/GatewayV1.t.sol:637:16
4174
- |
4175
- 637 | ParaID paraID = ParaID.wrap(1000);
4176
- | ^^^^^^ help: consider using: `paraId`
4177
- |
4178
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4179
-
4180
- note[unused-import]: unused imports should be removed
4181
- --> test/Token.t.sol:10:9
4182
- |
4183
- 10 | import {TokenLib} from "../src/TokenLib.sol";
4184
- | ^^^^^^^^
4185
- |
4186
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4187
-
4188
- note[mixed-case-variable]: mutable variables should use mixedCase
4189
- --> test/GatewayV1.t.sol:663:16
4190
- |
4191
- 663 | ParaID paraID = ParaID.wrap(1000);
4192
- | ^^^^^^ help: consider using: `paraId`
4193
- |
4194
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4195
-
4196
- note[mixed-case-variable]: mutable variables should use mixedCase
4197
- --> test/GatewayV1.t.sol:680:16
4198
- |
4199
- 680 | ParaID paraID = ParaID.wrap(1000);
4200
- | ^^^^^^ help: consider using: `paraId`
4201
- |
4202
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4203
-
4204
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4205
- --> test/Token.t.sol:63:9
4206
- |
4207
- 63 | token.transfer(receiver, transferAmount);
4208
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4209
- |
4210
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4211
-
4212
- note[mixed-case-variable]: mutable variables should use mixedCase
4213
- --> test/GatewayV1.t.sol:1002:20
4214
- |
4215
- 1002 | bytes32 public expectChannelIDBytes =
4216
- | ^^^^^^^^^^^^^^^^^^^^ help: consider using: `expectChannelIdBytes`
4217
- |
4218
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4219
-
4220
- note[mixed-case-variable]: mutable variables should use mixedCase
4221
- --> test/GatewayV1.t.sol:1006:16
4222
- |
4223
- 1006 | ParaID para_id = ParaID.wrap(1000);
4224
- | ^^^^^^^ help: consider using: `paraId`
4225
- |
4226
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4227
-
4228
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4229
- --> test/Token.t.sol:102:9
4230
- |
4231
- 102 | token.transferFrom(owner, receiver, transferAmount);
4232
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4233
- |
4234
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4235
-
4236
- note[mixed-case-variable]: mutable variables should use mixedCase
4237
- --> test/GatewayV1.t.sol:1007:19
4238
- |
4239
- 1007 | ChannelID channel_id = para_id.into();
4240
- | ^^^^^^^^^^ help: consider using: `channelId`
4241
- |
4242
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4243
-
4244
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4245
- --> test/Token.t.sol:140:9
4246
- |
4247
- 140 | token.transferFrom(owner, receiver, transferAmount);
4248
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4249
- |
4250
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4251
-
4252
- note[mixed-case-variable]: mutable variables should use mixedCase
4253
- --> test/GatewayV1.t.sol:1264:16
4254
- |
4255
- 1264 | ParaID paraID = ParaID.wrap(1000);
4256
- | ^^^^^^ help: consider using: `paraId`
4257
- |
4258
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#mixed-case-variable
4259
-
4260
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4261
- --> test/Token.t.sol:165:9
4262
- |
4263
- 165 | token.transferFrom(owner, address(0), amount);
4264
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4265
- |
4266
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4267
-
4268
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4269
- --> test/Token.t.sol:196:9
4270
- |
4271
- 196 | token.transferFrom(owner, receiver, transferAmount);
4272
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4273
- |
4274
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4275
-
4276
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4277
- --> test/Token.t.sol:205:9
4278
- |
4279
- 205 | token.transferFrom(owner, receiver, allowanceAmount);
4280
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4281
- |
4282
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4283
-
4284
- note[unused-import]: unused imports should be removed
4285
- --> test/GatewayV1.t.sol:5:9
4286
- |
4287
- 5 | import {Strings} from "openzeppelin/utils/Strings.sol";
4288
- | ^^^^^^^
4289
- |
4290
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4291
-
4292
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4293
- --> test/Token.t.sol:230:9
4294
- |
4295
- 230 | token.transferFrom(owner, receiver, allowanceAmount);
4296
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4297
- |
4298
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4299
-
4300
- note[unused-import]: unused imports should be removed
4301
- --> test/GatewayV1.t.sol:6:9
4302
- |
4303
- 6 | import {console} from "forge-std/console.sol";
4304
- | ^^^^^^^
4305
- |
4306
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4307
-
4308
- note[unused-import]: unused imports should be removed
4309
- --> test/GatewayV1.t.sol:8:9
4310
- |
4311
- 8 | import {BeefyClient} from "../src/BeefyClient.sol";
4312
- | ^^^^^^^^^^^
4313
- |
4314
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4315
-
4316
- note[unused-import]: unused imports should be removed
4317
- --> test/GatewayV1.t.sol:11:9
4318
- |
4319
- 11 | import {IInitializable} from "../src/interfaces/IInitializable.sol";
4320
- | ^^^^^^^^^^^^^^
4321
- |
4322
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4323
-
4324
- note[unused-import]: unused imports should be removed
4325
- --> test/GatewayV1.t.sol:20:9
4326
- |
4327
- 20 | import {Agent} from "../src/Agent.sol";
4328
- | ^^^^^
4329
- |
4330
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4331
-
4332
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4333
- --> test/Token.t.sol:503:9
4334
- |
4335
- 503 | token.transferFrom(owner, pool, swapAmount);
4336
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4337
- |
4338
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4339
-
4340
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4341
- --> test/Token.t.sol:528:9
4342
- |
4343
- 528 | token.transferFrom(owner, pool, firstSwapAmount);
4344
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4345
- |
4346
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4347
-
4348
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4349
- --> test/Token.t.sol:533:9
4350
- |
4351
- 533 | token.transferFrom(owner, pool, secondSwapAmount);
4352
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4353
- |
4354
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4355
-
4356
- note[unused-import]: unused imports should be removed
4357
- --> test/GatewayV1.t.sol:22:9
4358
- |
4359
- 22 | import {SubstrateTypes} from "./../src/SubstrateTypes.sol";
4360
- | ^^^^^^^^^^^^^^
4361
- |
4362
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4363
-
4364
- note[unused-import]: unused imports should be removed
4365
- --> test/GatewayV1.t.sol:24:5
4366
- |
4367
- 24 | Channel,
4368
- | ^^^^^^^
4369
- |
4370
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4371
-
4372
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4373
- --> test/Token.t.sol:588:9
4374
- |
4375
- 588 | token.transferFrom(userAddress, pool, permitAmount);
4376
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4377
- |
4378
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4379
-
4380
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4381
- --> test/Token.t.sol:619:13
4382
- |
4383
- 619 | token.transferFrom(owner, recipients[i], transferAmount);
4384
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4385
- |
4386
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4387
-
4388
- note[unused-import]: unused imports should be removed
4389
- --> test/GatewayV1.t.sol:33:9
4390
- |
4391
- 33 | import {PricingStorage} from "../src/storage/PricingStorage.sol";
4392
- | ^^^^^^^^^^^^^^
4393
- |
4394
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4395
-
4396
- note[unused-import]: unused imports should be removed
4397
- --> test/GatewayV1.t.sol:35:9
4398
- |
4399
- 35 | import {TokenLib} from "../src/TokenLib.sol";
4400
- | ^^^^^^^^
4401
- |
4402
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4403
-
4404
- note[unused-import]: unused imports should be removed
4405
- --> test/GatewayV1.t.sol:45:5
4406
- |
4407
- 45 | SetTokenTransferFeesParams,
4408
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^
4409
- |
4410
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4411
-
4412
- note[unused-import]: unused imports should be removed
4413
- --> test/GatewayV1.t.sol:46:5
4414
- |
4415
- 46 | SetPricingParametersParams,
4416
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^
4417
- |
4418
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4419
-
4420
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4421
- --> test/Token.t.sol:649:9
4422
- |
4423
- 649 | token.transferFrom(owner, pool, firstAmount);
4424
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4425
- |
4426
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4427
-
4428
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4429
- --> test/Token.t.sol:658:9
4430
- |
4431
- 658 | token.transferFrom(owner, pool, secondAmount);
4432
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4433
- |
4434
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4435
-
4436
- note[unused-import]: unused imports should be removed
4437
- --> test/GatewayV1.t.sol:67:27
4438
- |
4439
- 67 | import {UD60x18, ud60x18, convert} from "prb/math/src/UD60x18.sol";
4440
- | ^^^^^^^
4441
- |
4442
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#unused-import
4443
-
4444
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4445
- --> test/Token.t.sol:705:9
4446
- |
4447
- 705 | token.transferFrom(user, pool, amount1);
4448
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4449
- |
4450
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4451
-
4452
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4453
- --> test/Token.t.sol:706:9
4454
- |
4455
- 706 | token.transferFrom(user, pool2, amount2);
4456
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4457
- |
4458
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4459
-
4460
- note[named-struct-fields]: prefer initializing structs with named fields
4461
- --> test/GatewayV1.t.sol:253:17
4462
- |
4463
- 253 | / InboundMessage(
4464
- 254 | | assetHubParaID.into(),
4465
- 255 | | 1,
4466
- 256 | | command,
4467
- ... |
4468
- 261 | | messageID
4469
- 262 | | ),
4470
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4471
- |
4472
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4473
-
4474
- note[named-struct-fields]: prefer initializing structs with named fields
4475
- --> test/GatewayV1.t.sol:295:17
4476
- |
4477
- 295 | / InboundMessage(
4478
- 296 | | assetHubParaID.into(),
4479
- 297 | | 1,
4480
- 298 | | command,
4481
- ... |
4482
- 303 | | messageID
4483
- 304 | | ),
4484
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4485
- |
4486
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4487
-
4488
- note[named-struct-fields]: prefer initializing structs with named fields
4489
- --> test/GatewayV1.t.sol:332:17
4490
- |
4491
- 332 | / InboundMessage(
4492
- 333 | | assetHubParaID.into(),
4493
- 334 | | 1,
4494
- 335 | | command,
4495
- ... |
4496
- 340 | | messageID
4497
- 341 | | ),
4498
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4499
- |
4500
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4501
-
4502
- note[named-struct-fields]: prefer initializing structs with named fields
4503
- --> test/GatewayV1.t.sol:367:17
4504
- |
4505
- 367 | / InboundMessage(
4506
- 368 | | assetHubParaID.into(),
4507
- 369 | | 1,
4508
- 370 | | command,
4509
- ... |
4510
- 375 | | messageID
4511
- 376 | | ),
4512
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4513
- |
4514
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4515
-
4516
- note[named-struct-fields]: prefer initializing structs with named fields
4517
- --> test/GatewayV1.t.sol:395:17
4518
- |
4519
- 395 | / InboundMessage(
4520
- 396 | | assetHubParaID.into(),
4521
- 397 | | 1,
4522
- 398 | | command,
4523
- ... |
4524
- 403 | | messageID
4525
- 404 | | ),
4526
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4527
- |
4528
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4529
-
4530
- note[named-struct-fields]: prefer initializing structs with named fields
4531
- --> test/GatewayV1.t.sol:414:17
4532
- |
4533
- 414 | / InboundMessage(
4534
- 415 | | assetHubParaID.into(),
4535
- 416 | | 1,
4536
- 417 | | command,
4537
- ... |
4538
- 422 | | messageID
4539
- 423 | | ),
4540
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4541
- |
4542
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4543
-
4544
- note[named-struct-fields]: prefer initializing structs with named fields
4545
- --> test/GatewayV1.t.sol:440:17
4546
- |
4547
- 440 | / InboundMessage(
4548
- 441 | | ParaID.wrap(42).into(),
4549
- 442 | | 1,
4550
- 443 | | command,
4551
- ... |
4552
- 448 | | messageID
4553
- 449 | | ),
4554
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: ParaID.wrap(42).into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4555
- |
4556
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4557
-
4558
- note[named-struct-fields]: prefer initializing structs with named fields
4559
- --> test/GatewayV1.t.sol:468:17
4560
- |
4561
- 468 | / InboundMessage(
4562
- 469 | | assetHubParaID.into(),
4563
- 470 | | 1,
4564
- 471 | | command,
4565
- ... |
4566
- 476 | | messageID
4567
- 477 | | ),
4568
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4569
- |
4570
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4571
-
4572
- note[named-struct-fields]: prefer initializing structs with named fields
4573
- --> test/GatewayV1.t.sol:522:17
4574
- |
4575
- 522 | / InboundMessage(
4576
- 523 | | assetHubParaID.into(),
4577
- 524 | | 1,
4578
- 525 | | command,
4579
- ... |
4580
- 530 | | messageID
4581
- 531 | | ),
4582
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4583
- |
4584
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4585
-
4586
- note[named-struct-fields]: prefer initializing structs with named fields
4587
- --> test/GatewayV1.t.sol:565:17
4588
- |
4589
- 565 | / InboundMessage(
4590
- 566 | | assetHubParaID.into(),
4591
- 567 | | 1,
4592
- 568 | | command,
4593
- ... |
4594
- 573 | | messageID
4595
- 574 | | ),
4596
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: command, params: params, maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4597
- |
4598
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4599
-
4600
- note[named-struct-fields]: prefer initializing structs with named fields
4601
- --> test/GatewayV1.t.sol:739:17
4602
- |
4603
- 739 | / InboundMessage(
4604
- 740 | | assetHubParaID.into(),
4605
- 741 | | 1,
4606
- 742 | | CommandV1.Upgrade,
4607
- ... |
4608
- 747 | | messageID
4609
- 748 | | ),
4610
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: CommandV1.Upgrade, params: abi.encode(params), maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4611
- |
4612
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4613
-
4614
- note[named-struct-fields]: prefer initializing structs with named fields
4615
- --> test/GatewayV1.t.sol:802:17
4616
- |
4617
- 802 | / InboundMessage(
4618
- 803 | | assetHubParaID.into(),
4619
- 804 | | 1,
4620
- 805 | | CommandV1.SetOperatingMode,
4621
- ... |
4622
- 810 | | messageID
4623
- 811 | | ),
4624
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: CommandV1.SetOperatingMode, params: abi.encode(params), maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4625
- |
4626
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4627
-
4628
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4629
- --> test/GatewayV1.t.sol:1051:9
4630
- |
4631
- 1051 | token.transfer(address(assetHubAgent), 200);
4632
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4633
- |
4634
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4635
-
4636
- note[named-struct-fields]: prefer initializing structs with named fields
4637
- --> test/GatewayV1.t.sol:1071:17
4638
- |
4639
- 1071 | / InboundMessage(
4640
- 1072 | | assetHubParaID.into(),
4641
- 1073 | | 1,
4642
- 1074 | | CommandV1.RegisterForeignToken,
4643
- ... |
4644
- 1079 | | messageID
4645
- 1080 | | ),
4646
- | |_________________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: CommandV1.RegisterForeignToken, params: abi.encode(params), maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4647
- |
4648
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4649
-
4650
- warning[erc20-unchecked-transfer]: ERC20 'transfer' and 'transferFrom' calls should check the return value
4651
- --> test/GatewayV1.t.sol:1238:9
4652
- |
4653
- 1238 | token.transfer(address(assetHubAgent), 200);
4654
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4655
- |
4656
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#erc20-unchecked-transfer
4657
-
4658
- note[named-struct-fields]: prefer initializing structs with named fields
4659
- --> test/GatewayV1.t.sol:1304:13
4660
- |
4661
- 1304 | / InboundMessage(
4662
- 1305 | | assetHubParaID.into(),
4663
- 1306 | | 1,
4664
- 1307 | | CommandV1.UnlockNativeToken,
4665
- ... |
4666
- 1312 | | messageID
4667
- 1313 | | ),
4668
- | |_____________^ help: consider using named fields: `InboundMessage({ channelID: assetHubParaID.into(), nonce: 1, command: CommandV1.UnlockNativeToken, params: abi.encode(params), maxDispatchGas: maxDispatchGas, maxFeePerGas: maxRefund, reward: reward, id: messageID })`
4669
- |
4670
- = help: https://book.getfoundry.sh/reference/forge/forge-lint#named-struct-fields
4671
-
4672
6
 
4673
7
  > @snowbridge/contract-types@0.4.0 typechain /home/runner/work/snowbridge/snowbridge/web/packages/contract-types
4674
8
  > typechain --target ethers-v6 '../../../contracts/out/?(IERC20.sol|IERC20Metadata.sol|IGateway.sol|BeefyClient.sol|WETH9.sol|SnowbridgeL1Adaptor.sol|SnowbridgeL2Adaptor.sol|ISwapQuoter.sol|ISwapRouter.sol|ISwapLegacyRouter.sol)/!(*.abi).json' --out-dir src