Review of "Show External IP" version 17

Details Page Preview

Displays your external IP in the Toolbar, including Country flag, sends a system notification if IP changed. Shows also IP history with Export and an image of the approximate location. This extension is handy for those who work at different locations or with different VPNs to quickly see your public IP and country. Clipboard Access: Used to copy IP addresses, locations, and network details from the extension menu to your clipboard.

Extension Homepage
https://github.com/cwittenberg/thisipcan.cyou

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) manual_review 1

Shexli found 1 issue that may need reviewer attention.

EGO-A-005 manual_review

extensions should not access the clipboard directly

Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.

Review Guidelines

  • extension.js:82
    St.Clipboard.get_default()
  • history.js:238
    St.Clipboard.get_default()

All Versions

Previous Reviews on this Version

JustPerfection rejected
1. Please use `connectObject()` and `disconnectObject()` so it is easier to track for cleanup. 2. Please remove version from the import: - line 9 `extension.js` - line 1 and 3 `prefs.js` 3. Please add to the description that this extension is using clipboard: [EGO Review Guidelines: Clipboard](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#clipboard-access-must-be-declared) 4. Move to enable and null it out in disable (line 220, 240 `extension.js`). 5. Remove unnecessary try-catch wrappers around source removes. 6. `this.disabled` is a bad practice. Please remove that. If timeout is a concern, remove the timeout first thing in disable. 7. Bad practice to hold different timeout ids in one property (line 494, 502 `extension.js`). Also, timeout should be removed before line 494. 8. Timeout should be removed on destroy and also before creating a new one (line 191 `history.js`): [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 9. Remove files and folders: - `flags` - `img` - `maps/52.3702157_4.8951679_12.png` [EGO Review Guidelines: unnecessary files](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#don-t-include-unnecessary-files) You can also add `donations` to the `metadata.json`, so people can donate to you if they want: [Extension Anatomy: donations](https://gjs.guide/extensions/overview/anatomy.html#donations)