-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update EIP-6551: Preventing circular lock situation with initialize #7525
Conversation
…y adding initialize function which is called by token owner after ownership change and unlockcircularlock which transfer token ownership to previous owner
File
|
Thanks for the PR @Abhijaypaliwal! This is an interesting concept but seems very opinionated and may not be the best fit for including in the EIP reference implementation. Instead I'd recommend opening up a PR against the erc6551/reference repo with this functionality as an example in the examples folder. We can work together to polish it and then consider including it in the EIP document. |
sure @jaydenwindle i would do the same and we would work together for adding this functionality in near future. I am very much looking forward for this functionality! |
I'm closing based on the recommendation from #7525 (comment). Please feel free to re-open if you're still interested in pursuing! |
…178) <p>This PR was automatically created by Snyk using the credentials of a real user.</p><br /><h3>Snyk has created this PR to upgrade @typescript-eslint/eslint-plugin from 5.62.0 to 6.7.5.</h3> :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project. <hr/> *Warning:* This is a major version upgrade, and may be a breaking change. - The recommended version is **301 versions** ahead of your current version. - The recommended version was released **a month ago**, on 2023-10-09. <details> <summary><b>Release notes</b></summary> <br/> <details> <summary>Package name: <b>@typescript-eslint/eslint-plugin</b></summary> <ul> <li> <b>6.7.5</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.7.5">2023-10-09</a></br><h2><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.7.4...v6.7.5">6.7.5</a> (2023-10-09)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [prefer-string-starts-ends-with] only report slice/substring with correct range (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7712" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7712/hovercard">ethereum#7712</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/db40a0a83abf14237a7a9b3f75d869da26512292">db40a0a</a>)</li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.7.5-alpha.2</b> - 2023-10-08 </li> <li> <b>6.7.5-alpha.1</b> - 2023-10-08 </li> <li> <b>6.7.5-alpha.0</b> - 2023-10-02 </li> <li> <b>6.7.4</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.7.4">2023-10-02</a></br><h2><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.7.3...v6.7.4">6.7.4</a> (2023-10-02)</h2> <p><strong>Note:</strong> Version bump only for package @ typescript-eslint/typescript-eslint</p> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.7.4-alpha.0</b> - 2023-09-25 </li> <li> <b>6.7.3</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.7.3">2023-09-25</a></br><h2><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.7.2...v6.7.3">6.7.3</a> (2023-09-25)</h2> <h3>Bug Fixes</h3> <ul> <li><strong>utils:</strong> type portability with <code>RuleCreator</code>, fix <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7605" data-hovercard-type="issue" data-hovercard-url="/typescript-eslint/typescript-eslint/issues/7605/hovercard">ethereum#7605</a> (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7690" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7690/hovercard">ethereum#7690</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/4e235919811614006d6ebbb7906200ec1b04fbf6">4e23591</a>)</li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.7.3-alpha.9</b> - 2023-09-23 </li> <li> <b>6.7.3-alpha.8</b> - 2023-09-21 </li> <li> <b>6.7.3-alpha.7</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.6</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.5</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.4</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.3</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.2</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.1</b> - 2023-09-20 </li> <li> <b>6.7.3-alpha.0</b> - 2023-09-18 </li> <li> <b>6.7.2</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.7.2">2023-09-18</a></br><h2><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.7.1...v6.7.2">6.7.2</a> (2023-09-18)</h2> <p><strong>Note:</strong> Version bump only for package @ typescript-eslint/typescript-eslint</p> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.7.2-alpha.0</b> - 2023-09-18 </li> <li> <b>6.7.1-alpha.19</b> - 2023-09-17 </li> <li> <b>6.7.1-alpha.18</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.17</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.16</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.15</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.13</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.12</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.11</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.10</b> - 2023-09-16 </li> <li> <b>6.7.1-alpha.5</b> - 2023-09-15 </li> <li> <b>6.7.1-alpha.3</b> - 2023-09-11 </li> <li> <b>6.7.1-alpha.2</b> - 2023-09-11 </li> <li> <b>6.7.1-alpha.1</b> - 2023-09-11 </li> <li> <b>6.7.1-alpha.0</b> - 2023-09-11 </li> <li> <b>6.7.0</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.7.0">2023-09-11</a></br><h1><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.6.0...v6.7.0">6.7.0</a> (2023-09-11)</h1> <h3>Bug Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [no-restricted-imports] disallow side effect imports when allowTypeImports is enabled (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7560" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7560/hovercard">ethereum#7560</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/4908905e4ee2b533504fcba0c671aa869668df25">4908905</a>)</li> </ul> <h3>Features</h3> <ul> <li><strong>eslint-plugin:</strong> [await-thenable] added suggestion fixer (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7437" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7437/hovercard">ethereum#7437</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/b284370e1e95493764d2806cd45975201e02f374">b284370</a>)</li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.6.1-alpha.16</b> - 2023-09-11 </li> <li> <b>6.6.1-alpha.15</b> - 2023-09-10 </li> <li> <b>6.6.1-alpha.14</b> - 2023-09-10 </li> <li> <b>6.6.1-alpha.13</b> - 2023-09-09 </li> <li> <b>6.6.1-alpha.12</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.11</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.10</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.8</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.7</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.6</b> - 2023-09-08 </li> <li> <b>6.6.1-alpha.5</b> - 2023-09-07 </li> <li> <b>6.6.1-alpha.4</b> - 2023-09-07 </li> <li> <b>6.6.1-alpha.3</b> - 2023-09-07 </li> <li> <b>6.6.1-alpha.2</b> - 2023-09-05 </li> <li> <b>6.6.1-alpha.1</b> - 2023-09-05 </li> <li> <b>6.6.1-alpha.0</b> - 2023-09-04 </li> <li> <b>6.6.0</b> - <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases/tag/v6.6.0">2023-09-04</a></br><h1><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/v6.5.0...v6.6.0">6.6.0</a> (2023-09-04)</h1> <h3>Bug Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> [key-spacing] consider properties with parens and comments (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7525" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7525/hovercard">ethereum#7525</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/7012279b8510f9fcaee64b610d0a66e8e90f0865">7012279</a>)</li> </ul> <h3>Features</h3> <ul> <li><strong>rule-tester:</strong> allow to create empty tests (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/issues/7467" data-hovercard-type="pull_request" data-hovercard-url="/typescript-eslint/typescript-eslint/pull/7467/hovercard">ethereum#7467</a>) (<a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/654b35dcf3ed6dc302d993110b72a7709aafbebf">654b35d</a>)</li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning" rel="nofollow">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases" rel="nofollow">releases</a> on our website.</p> </li> <li> <b>6.5.1-alpha.22</b> - 2023-09-04 </li> <li> <b>6.5.1-alpha.21</b> - 2023-09-03 </li> <li> <b>6.5.1-alpha.20</b> - 2023-09-03 </li> <li> <b>6.5.1-alpha.19</b> - 2023-09-03 </li> <li> <b>6.5.1-alpha.18</b> - 2023-09-03 </li> <li> <b>6.5.1-alpha.17</b> - 2023-09-02 </li> <li> <b>6.5.1-alpha.16</b> - 2023-09-01 </li> <li> <b>6.5.1-alpha.15</b> - 2023-08-31 </li> <li> <b>6.5.1-alpha.14</b> - 2023-08-31 </li> <li> <b>6.5.1-alpha.13</b> - 2023-08-31 </li> <li> <b>6.5.1-alpha.11</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.10</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.9</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.8</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.7</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.6</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.5</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.4</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.2</b> - 2023-08-30 </li> <li> <b>6.5.1-alpha.0</b> - 2023-08-28 </li> <li> <b>6.5.0</b> - 2023-08-28 </li> <li> <b>6.4.2-alpha.12</b> - 2023-08-27 </li> <li> <b>6.4.2-alpha.11</b> - 2023-08-26 </li> <li> <b>6.4.2-alpha.10</b> - 2023-08-25 </li> <li> <b>6.4.2-alpha.9</b> - 2023-08-25 </li> <li> <b>6.4.2-alpha.8</b> - 2023-08-24 </li> <li> <b>6.4.2-alpha.7</b> - 2023-08-24 </li> <li> <b>6.4.2-alpha.5</b> - 2023-08-24 </li> <li> <b>6.4.2-alpha.4</b> - 2023-08-24 </li> <li> <b>6.4.2-alpha.3</b> - 2023-08-24 </li> <li> <b>6.4.2-alpha.2</b> - 2023-08-22 </li> <li> <b>6.4.2-alpha.1</b> - 2023-08-22 </li> <li> <b>6.4.2-alpha.0</b> - 2023-08-21 </li> <li> <b>6.4.1</b> - 2023-08-21 </li> <li> <b>6.4.1-alpha.18</b> - 2023-08-21 </li> <li> <b>6.4.1-alpha.17</b> - 2023-08-20 </li> <li> <b>6.4.1-alpha.16</b> - 2023-08-19 </li> <li> <b>6.4.1-alpha.15</b> - 2023-08-19 </li> <li> <b>6.4.1-alpha.14</b> - 2023-08-19 </li> <li> <b>6.4.1-alpha.13</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.12</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.11</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.10</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.9</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.8</b> - 2023-08-17 </li> <li> <b>6.4.1-alpha.7</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.6</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.5</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.4</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.3</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.2</b> - 2023-08-15 </li> <li> <b>6.4.1-alpha.1</b> - 2023-08-14 </li> <li> <b>6.4.1-alpha.0</b> - 2023-08-14 </li> <li> <b>6.4.0</b> - 2023-08-14 </li> <li> <b>6.3.1-alpha.21</b> - 2023-08-13 </li> <li> <b>6.3.1-alpha.20</b> - 2023-08-13 </li> <li> <b>6.3.1-alpha.19</b> - 2023-08-13 </li> <li> <b>6.3.1-alpha.18</b> - 2023-08-13 </li> <li> <b>6.3.1-alpha.17</b> - 2023-08-12 </li> <li> <b>6.3.1-alpha.16</b> - 2023-08-12 </li> <li> <b>6.3.1-alpha.15</b> - 2023-08-12 </li> <li> <b>6.3.1-alpha.14</b> - 2023-08-12 </li> <li> <b>6.3.1-alpha.13</b> - 2023-08-11 </li> <li> <b>6.3.1-alpha.12</b> - 2023-08-11 </li> <li> <b>6.3.1-alpha.10</b> - 2023-08-11 </li> <li> <b>6.3.1-alpha.9</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.8</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.7</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.6</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.5</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.4</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.3</b> - 2023-08-10 </li> <li> <b>6.3.1-alpha.2</b> - 2023-08-09 </li> <li> <b>6.3.1-alpha.1</b> - 2023-08-09 </li> <li> <b>6.3.1-alpha.0</b> - 2023-08-07 </li> <li> <b>6.3.0</b> - 2023-08-07 </li> <li> <b>6.2.2-alpha.23</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.21</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.20</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.18</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.14</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.13</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.12</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.11</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.10</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.9</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.8</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.7</b> - 2023-08-06 </li> <li> <b>6.2.2-alpha.6</b> - 2023-08-05 </li> <li> <b>6.2.2-alpha.5</b> - 2023-08-05 </li> <li> <b>6.2.2-alpha.4</b> - 2023-08-05 </li> <li> <b>6.2.2-alpha.3</b> - 2023-08-05 </li> <li> <b>6.2.2-alpha.2</b> - 2023-08-04 </li> <li> <b>6.2.2-alpha.1</b> - 2023-08-03 </li> <li> <b>6.2.2-alpha.0</b> - 2023-07-31 </li> <li> <b>6.2.1</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.32</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.31</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.30</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.29</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.28</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.27</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.26</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.25</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.22</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.21</b> - 2023-07-31 </li> <li> <b>6.2.1-alpha.20</b> - 2023-07-29 </li> <li> <b>6.2.1-alpha.19</b> - 2023-07-29 </li> <li> <b>6.2.1-alpha.18</b> - 2023-07-29 </li> <li> <b>6.2.1-alpha.17</b> - 2023-07-29 </li> <li> <b>6.2.1-alpha.16</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.15</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.14</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.13</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.12</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.11</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.10</b> - 2023-07-28 </li> <li> <b>6.2.1-alpha.9</b> - 2023-07-27 </li> <li> <b>6.2.1-alpha.8</b> - 2023-07-27 </li> <li> <b>6.2.1-alpha.7</b> - 2023-07-27 </li> <li> <b>6.2.1-alpha.6</b> - 2023-07-26 </li> <li> <b>6.2.1-alpha.5</b> - 2023-07-26 </li> <li> <b>6.2.1-alpha.3</b> - 2023-07-26 </li> <li> <b>6.2.1-alpha.2</b> - 2023-07-26 </li> <li> <b>6.2.1-alpha.1</b> - 2023-07-26 </li> <li> <b>6.2.1-alpha.0</b> - 2023-07-24 </li> <li> <b>6.2.0</b> - 2023-07-24 </li> <li> <b>6.1.1-alpha.20</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.19</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.18</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.17</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.16</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.15</b> - 2023-07-22 </li> <li> <b>6.1.1-alpha.14</b> - 2023-07-21 </li> <li> <b>6.1.1-alpha.13</b> - 2023-07-19 </li> <li> <b>6.1.1-alpha.12</b> - 2023-07-19 </li> <li> <b>6.1.1-alpha.11</b> - 2023-07-19 </li> <li> <b>6.1.1-alpha.10</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.9</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.8</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.7</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.6</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.5</b> - 2023-07-18 </li> <li> <b>6.1.1-alpha.4</b> - 2023-07-17 </li> <li> <b>6.1.1-alpha.3</b> - 2023-07-17 </li> <li> <b>6.1.1-alpha.2</b> - 2023-07-17 </li> <li> <b>6.1.1-alpha.1</b> - 2023-07-17 </li> <li> <b>6.1.1-alpha.0</b> - 2023-07-17 </li> <li> <b>6.1.0</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.35</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.33</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.32</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.31</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.30</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.28</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.26</b> - 2023-07-17 </li> <li> <b>6.0.1-alpha.25</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.24</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.23</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.22</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.20</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.19</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.18</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.17</b> - 2023-07-16 </li> <li> <b>6.0.1-alpha.14</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.12</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.11</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.10</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.9</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.8</b> - 2023-07-15 </li> <li> <b>6.0.1-alpha.7</b> - 2023-07-14 </li> <li> <b>6.0.1-alpha.6</b> - 2023-07-13 </li> <li> <b>6.0.1-alpha.5</b> - 2023-07-13 </li> <li> <b>6.0.1-alpha.4</b> - 2023-07-12 </li> <li> <b>6.0.1-alpha.3</b> - 2023-07-12 </li> <li> <b>6.0.1-alpha.2</b> - 2023-07-11 </li> <li> <b>6.0.1-alpha.1</b> - 2023-07-11 </li> <li> <b>6.0.1-alpha.0</b> - 2023-07-10 </li> <li> <b>6.0.0</b> - 2023-07-10 </li> <li> <b>6.0.0-alpha.180</b> - 2023-07-10 </li> <li> <b>6.0.0-alpha.175</b> - 2023-07-07 </li> <li> <b>6.0.0-alpha.174</b> - 2023-07-07 </li> <li> <b>6.0.0-alpha.173</b> - 2023-07-07 </li> <li> <b>6.0.0-alpha.172</b> - 2023-07-07 </li> <li> <b>6.0.0-alpha.165</b> - 2023-07-04 </li> <li> <b>6.0.0-alpha.163</b> - 2023-06-24 </li> <li> <b>6.0.0-alpha.162</b> - 2023-06-24 </li> <li> <b>6.0.0-alpha.161</b> - 2023-06-24 </li> <li> <b>6.0.0-alpha.160</b> - 2023-06-24 </li> <li> <b>6.0.0-alpha.159</b> - 2023-06-20 </li> <li> <b>6.0.0-alpha.158</b> - 2023-06-18 </li> <li> <b>6.0.0-alpha.138</b> - 2023-04-27 </li> <li> <b>6.0.0-alpha.137</b> - 2023-04-24 </li> <li> <b>6.0.0-alpha.136</b> - 2023-04-21 </li> <li> <b>6.0.0-alpha.135</b> - 2023-04-21 </li> <li> <b>6.0.0-alpha.134</b> - 2023-04-20 </li> <li> <b>6.0.0-alpha.133</b> - 2023-04-18 </li> <li> <b>6.0.0-alpha.132</b> - 2023-04-18 </li> <li> <b>6.0.0-alpha.131</b> - 2023-04-18 </li> <li> <b>6.0.0-alpha.130</b> - 2023-04-17 </li> <li> <b>6.0.0-alpha.129</b> - 2023-04-17 </li> <li> <b>6.0.0-alpha.128</b> - 2023-04-17 </li> <li> <b>6.0.0-alpha.127</b> - 2023-04-17 </li> <li> <b>6.0.0-alpha.126</b> - 2023-04-16 </li> <li> <b>6.0.0-alpha.125</b> - 2023-04-16 </li> <li> <b>6.0.0-alpha.124</b> - 2023-04-14 </li> <li> <b>6.0.0-alpha.121</b> - 2023-04-08 </li> <li> <b>6.0.0-alpha.120</b> - 2023-04-07 </li> <li> <b>6.0.0-alpha.119</b> - 2023-04-05 </li> <li> <b>6.0.0-alpha.118</b> - 2023-04-03 </li> <li> <b>6.0.0-alpha.117</b> - 2023-04-03 </li> <li> <b>6.0.0-alpha.113</b> - 2023-04-02 </li> <li> <b>6.0.0-alpha.112</b> - 2023-04-02 </li> <li> <b>6.0.0-alpha.111</b> - 2023-04-02 </li> <li> <b>6.0.0-alpha.110</b> - 2023-04-02 </li> <li> <b>6.0.0-alpha.109</b> - 2023-04-01 </li> <li> <b>6.0.0-alpha.107</b> - 2023-03-31 </li> <li> <b>6.0.0-alpha.106</b> - 2023-03-30 </li> <li> <b>6.0.0-alpha.104</b> - 2023-03-28 </li> <li> <b>6.0.0-alpha.103</b> - 2023-03-27 </li> <li> <b>6.0.0-alpha.102</b> - 2023-03-27 </li> <li> <b>6.0.0-alpha.101</b> - 2023-03-27 </li> <li> <b>6.0.0-alpha.100</b> - 2023-03-27 </li> <li> <b>6.0.0-alpha.99</b> - 2023-03-21 </li> <li> <b>6.0.0-alpha.98</b> - 2023-03-21 </li> <li> <b>6.0.0-alpha.97</b> - 2023-03-21 </li> <li> <b>6.0.0-alpha.96</b> - 2023-03-21 </li> <li> <b>6.0.0-alpha.95</b> - 2023-03-20 </li> <li> <b>6.0.0-alpha.94</b> - 2023-03-20 </li> <li> <b>6.0.0-alpha.93</b> - 2023-03-17 </li> <li> <b>6.0.0-alpha.92</b> - 2023-03-17 </li> <li> <b>6.0.0-alpha.91</b> - 2023-03-15 </li> <li> <b>6.0.0-alpha.90</b> - 2023-03-15 </li> <li> <b>6.0.0-alpha.81</b> - 2023-03-13 </li> <li> <b>6.0.0-alpha.80</b> - 2023-03-13 </li> <li> <b>6.0.0-alpha.79</b> - 2023-03-13 </li> <li> <b>6.0.0-alpha.78</b> - 2023-03-13 </li> <li> <b>6.0.0-alpha.77</b> - 2023-03-08 </li> <li> <b>6.0.0-alpha.76</b> - 2023-03-08 </li> <li> <b>6.0.0-alpha.75</b> - 2023-03-08 </li> <li> <b>6.0.0-alpha.69</b> - 2023-03-05 </li> <li> <b>6.0.0-alpha.68</b> - 2023-03-02 </li> <li> <b>6.0.0-alpha.66</b> - 2023-02-25 </li> <li> <b>6.0.0-alpha.65</b> - 2023-02-24 </li> <li> <b>6.0.0-alpha.64</b> - 2023-02-23 </li> <li> <b>6.0.0-alpha.61</b> - 2023-02-23 </li> <li> <b>6.0.0-alpha.60</b> - 2023-02-22 </li> <li> <b>6.0.0-alpha.59</b> - 2023-02-21 </li> <li> <b>6.0.0-alpha.58</b> - 2023-02-21 </li> <li> <b>5.62.1-alpha.0</b> - 2023-07-10 </li> <li> <b>5.62.0</b> - 2023-07-10 </li> </ul> from <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/releases">@typescript-eslint/eslint-plugin GitHub release notes</a> </details> </details> <details> <summary><b>Commit messages</b></summary> </br> <details> <summary>Package name: <b>@typescript-eslint/eslint-plugin</b></summary> <ul> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/36aecb6a836eb01307c35b42ca60f5a78496c339">36aecb6</a> chore: publish v6.7.5</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/d0729024869aebe5bd6fb1971e17a15ce645fdfe">d072902</a> docs(website): mention how rule options should be handled (ethereum#7713)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/db40a0a83abf14237a7a9b3f75d869da26512292">db40a0a</a> fix(eslint-plugin): [prefer-string-starts-ends-with] only report slice/substring with correct range (ethereum#7712)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/8f4d9391b76786790e13cb9ca3b6a0da04014636">8f4d939</a> docs: fix prefer-optional-chain example for the unsafe fixes option (ethereum#7711)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/d948dc4a21ad8e15eec152c0cf2fdda819ea4a3a">d948dc4</a> chore: publish v6.7.4</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/4a6d841f6def9944efc98016ec4c5740fa019f64">4a6d841</a> docs: fix broken anchor in Typed_Linting.mdx (ethereum#7701)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/91a3e0c85a8fb2001ad808362b437df0b90cce04">91a3e0c</a> chore: publish v6.7.3</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/4e235919811614006d6ebbb7906200ec1b04fbf6">4e23591</a> fix(utils): type portability with `RuleCreator`, fix ethereum#7605 (ethereum#7690)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/dec6cbed28fc2cf6c0be82b642de5b72fa18d172">dec6cbe</a> docs(eslint-plugin): replaced the Out-of-date TS error codes in eslint-recommended.ts with the supported-codes (ethereum#7590)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/d467e1470d6797fc53ce09576199b7e823a115ae">d467e14</a> chore(deps): update jest (ethereum#7682)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/e849b7e38d7b748ee37573f0356ace8871218ce9">e849b7e</a> chore(deps): update dependency @ types/node to v20.6.2 (ethereum#7679)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/e4b077600773ed1466b63510c3b08972210ba0d9">e4b0776</a> chore: fix generate-contributors path (ethereum#7671)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/f2b3d527791bfae3d4d337090e609f322199cd65">f2b3d52</a> chore(deps): update dependency @ types/json-schema to v7.0.13 (ethereum#7677)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/3a08c4a3379766810c177dad62aacea8d5de121e">3a08c4a</a> chore(deps): update dependency @ microsoft/api-extractor to v7.37.0 (ethereum#7668)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/dbbbb833fffe8aa81c08a322acb85d4ad98dbbb7">dbbbb83</a> chore(deps): update dependency @ swc/core to v1.3.85 (ethereum#7675)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/4aed4b6427b37fc276b8db414b47c683c4f58227">4aed4b6</a> chore(deps): update babel (ethereum#7667)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/2a2a76ad6540177af19cbb4194895496978d288a">2a2a76a</a> chore: correct casing of parser hash in blog post</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/ddb858981fd3ed72ff0c10fe9a2c1dc6c5bb1ed5">ddb8589</a> chore: publish v6.7.2</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/aefb2686a58b73a81b400c516d02b8e6194cbed4">aefb268</a> chore: publish v6.7.1</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/b18846358ad11b5ffe8951318e186f36eb0fab0c">b188463</a> chore(deps): update dependency @ types/semver to v7.5.2 (ethereum#7663)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/d0e8bdb05cdd85e664d0c6f5e6778a039ec86f6e">d0e8bdb</a> chore(deps): update dependency lerna to v7.3.0 (ethereum#7661)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/ded5d21bf5ee04591a0f8935772395dbbd588d1a">ded5d21</a> docs: blog post on parserOptions.project = true (ethereum#7368)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/9cb9211cb61ba1f479c5b9b5e3b4a09ebc88ef93">9cb9211</a> docs: recommend against eslint-plugin-prettier in formatting guide (ethereum#7639)</li> <li><a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/commit/c90651005b098c1e192775d80d2378dcc042c49f">c906510</a> chore(website): have start depend on website-eslint:build (ethereum#7638)</li> </ul> <a href="https://snyk.io/redirect/github/typescript-eslint/typescript-eslint/compare/cba0d113bba1bbcee69149c954dc6bd4c658c714...36aecb6a836eb01307c35b42ca60f5a78496c339">Compare</a> </details> </details> <hr/> **Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiI0NGFhNDBlYy05MDg3LTRkNzAtOTZjYi0wN2IyYmI3NzM0NTMiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6IjQ0YWE0MGVjLTkwODctNGQ3MC05NmNiLTA3YjJiYjc3MzQ1MyJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/woodpile37/project/f9f1a542-e77b-401b-9d83-577aad2ba722?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/woodpile37/project/f9f1a542-e77b-401b-9d83-577aad2ba722/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/woodpile37/project/f9f1a542-e77b-401b-9d83-577aad2ba722/settings/integration?pkg=@typescript-eslint/eslint-plugin&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades) <!--- (snyk:metadata:{"prId":"44aa40ec-9087-4d70-96cb-07b2bb773453","prPublicId":"44aa40ec-9087-4d70-96cb-07b2bb773453","dependencies":[{"name":"@typescript-eslint/eslint-plugin","from":"5.62.0","to":"6.7.5"}],"packageManager":"npm","type":"auto","projectUrl":"https://app.snyk.io/org/woodpile37/project/f9f1a542-e77b-401b-9d83-577aad2ba722?utm_source=github&utm_medium=referral&page=upgrade-pr","projectPublicId":"f9f1a542-e77b-401b-9d83-577aad2ba722","env":"prod","prType":"upgrade","vulns":[],"issuesToFix":[],"upgrade":[],"upgradeInfo":{"versionsDiff":301,"publishedDate":"2023-10-09T17:15:29.737Z"},"templateVariants":[],"hasFixes":false,"isMajorUpgrade":true,"isBreakingChange":true,"priorityScoreList":[]}) --->
Description
This pull request adds the
initialize
function for EIP-6551 as described in the guidelines. Theinitialize
function can be called by the owner after ownership change to set thecurrOwner
andprevOwner
variables. Additionally, theunlockCircularLock
function is introduced to handle situations of circular lock, allowing the previous owner to unlock it.Changes
Added Functions
initialize(uint256 tokenId) external
: Initializes thecurrOwner
andprevOwner
variables after ownership change.unlockCircularLock(uint256 tokenId) external
: Allows the previous owner to unlock the circular lock situation by calling this function.Modifications
ERC6551Account
contract to include the new variablescurrOwner
andprevOwner
.Tests
initialize
andunlockCircularLock
functions.Motivation
This enhancement is in line with the objectives of EIP-6551 and provides additional functionalities for handling ownership transitions and circular lock scenarios.
Usage
After ownership change, the new owner can call the
initialize
function to set the current owner (currOwner
) and previous owner (prevOwner
) variables.In cases of circular lock, the previous owner can use the
unlockCircularLock
function to release the lock.Issues
The
initialize
function could only be used to changepreviousOwner
. and this value could only be used for account recovery. however if new owner of Token transfer it to another owner without initialization, thepreviousOwner
is not changed, hence the recovery can be done by third last owner and he can call it without any restriction, which could be malicious.Checklist