QA Report #108
Labels
bug
Something isn't working
old-submission-method
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
Typos
DNSSECImpl.sol: L105
Change
canonicalised
tocanonicalized
The same typo (
Authorises
/Authorizes
,Authorised
/authorised
, orUnauthorized
/unauthorised
) occurs in all 20 lines referenced below.Example: ReverseRegistrar.sol: L40:
IBaseRegistrar.sol: L20
ReverseRegistrar.sol: L40
ReverseRegistrar.sol: L46
ReverseRegistrar.sol: L80
ReverseRegistrar.sol: L126
NameWrapper.sol: L15
NameWrapper.sol: L152
NameWrapper.sol: L202
NameWrapper.sol: L224
NameWrapper.sol: L241
NameWrapper.sol: L266
NameWrapper.sol: L289
NameWrapper.sol: L315
NameWrapper.sol: L329
NameWrapper.sol: L350
NameWrapper.sol: L381
NameWrapper.sol: L421
NameWrapper.sol: L469
NameWrapper.sol: L475
NameWrapper.sol: L804
Change
authorised
toauthorized
. Similarly for other forms of the word. This assumes that a decision has been made to use standard American English throughout ENS.ETHRegistrarController.sol: L257
// check first few bytes are namehash
Change
check first
tocheck that first
ReverseRegistrar.sol: L156
Change
optimised
tooptimized
ERC1155Fuse.sol: L10
/* This contract is a variation on ERC1155 with the additions of _setData, getData and _canTransfer and ownerOf. _setData and getData allows the use of the other 96 bits next to the address of the owner for extra data. We use this to store 'fuses' that control permissions that can be burnt. 32 bits are used for the fuses themselves and 64 bits are used for the expiry of the name. When a name has expired, its fuses will be be set back to 0 */
Remove duplicate word
be
NameWrapper.sol: L534
Change
regsitry
toregistry
Long single line comment
For the sake of readability, comments over 79 characters, such as the one below, should wrap using multi-line comment syntax.
ERC1155Fuse.sol: L10
/* This contract is a variation on ERC1155 with the additions of _setData, getData and _canTransfer and ownerOf. _setData and getData allows the use of the other 96 bits next to the address of the owner for extra data. We use this to store 'fuses' that control permissions that can be burnt. 32 bits are used for the fuses themselves and 64 bits are used for the expiry of the name. When a name has expired, its fuses will be be set back to 0 */
Comments concerning unfinished work or open items
Comments such as the one below that contain TODOs or similar language should be addressed and modified or removed
DNSSECImpl.sol: L238
// TODO: Check key isn't expired, unless updating key itself
Named
return
variable not used when a function returnsThe existence of a named return variable that is never used (here,
newFuses
) is potentially perplexingINameWrapper.sol: L80-82
Missing
@param
statementsDNSSECImpl.sol: L179-183
@param
statement is missing forrrset
DNSSECImpl.sol: L228-238
@param
statement is missing forkeyrdata
. I've included the "TODO" comment here (which I mentioned earlier) which refers to the keyReverseRegistrar.sol: L72-79
@param
missing forresolver
. Theresolver
@param
is also missing in the two examples below:ReverseRegistrar.sol: L127-136
NameWrapper.sol: L397-404
NameWrapper.sol: L267-274
@param
missing forexpiry
Missing
require
revert stringA
require
message should be included to enable users to understand reason for failureRecommendation: Add a brief (<= 32 char) explanatory message to each of the lines below
BytesUtils.sol: L12
BytesUtils.sol: L146
BytesUtils.sol: L159
BytesUtils.sol: L172
BytesUtils.sol: L185
BytesUtils.sol: L199
BytesUtils.sol: L200
BytesUtils.sol: L235
BytesUtils.sol: L262
BytesUtils.sol: L268
BytesUtils.sol: L270
Owned.sol: L10
ETHRegistrarController.sol: L57
ETHRegistrarController.sol: L121
ETHRegistrarController.sol: L246
BytesUtil.sol: L13
The text was updated successfully, but these errors were encountered: