Review of "CPU Power Manager" version 1

Details Page Preview

Manage your CPU's frequency scaling driver

Extension Homepage
https://github.com/andrzej-az/cpupower4

No comments.

FAQ

Files

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

All Versions

Version Status
1 Rejected

Previous Reviews on this Version

andrzej-az posted a review
JustPerfection rejected
1. Please remove `45.1`, `45.2` and `45.3` from `shell-version`. `45` is enough to support all minor versions of 45. 2. Bad schemas xml file: [EGO Review Guidelines: GSettings Schemas](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#gsettings-schemas) 3. You need to mention in the description that this extension is a fork of [the other extension](https://extensions.gnome.org/extension/945/cpu-power-manager/): [EGO Review Guidelines: Fork](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#metadata-json-must-be-well-formed) 4. Fork cannot have the same name as original: [EGO Review Guidelines: Fork](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#metadata-json-must-be-well-formed) 5. You already have `this.path` in the entry point. no need for: - line 41 `extension.js` - line 41 `src/baseindicator.js` - line 35 `src/utils.js` - line 50 `src/indicator.js` - line 41 `src/preferences.js` 6. Also null out in disable: ```js this.indicatorInstance = null; ``` [EGO Review Guidelines: Destroy](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#destroy-all-objects) 7. `lookupByUUID()` is a bad practice. When it's possible, I recommend to use `this` from the entry point instead. - line 39 `prefs.js` - line 644 `src/indicator.js` 8. Use `console.*` instead of `log()`: [Port Guide 45: Logging](https://gjs.guide/extensions/upgrading/gnome-shell-45.html#logging) 9. Please remove `src/prefs40` folder. 10. Please remove `src/convenience.js` since you have `this.getSettings()` in the entry point. 11. I recommend using `let` instead of `var`. 12. Don't call functions in global scope (line 32 `src/utils.js`). 13. Don't use sync spawn since that can freeze the shell process (line 32 `src/utils.js`): [GJS Guide: Subprocesses](https://gjs.guide/guides/gio/subprocesses.html#complete-examples) 14. You cannot import `Gtk` to the GNOME Shell process (line 31 `src/indicator.js`): [EGO Review Guidelines: import](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#do-not-import-gtk-libraries-in-gnome-shell) 15. Timeout should be removed on disable (line 128 and 131 `src/indicator.js`): [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 16. Please don't use deprecated modules (line 125 `src/preferences.js`): [EGO Review Guidelines: deprecated modules](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#do-not-use-deprecated-modules) 17. While I reviewed the scripts in the `tool` folder they can get approved as they are, I believe making them as a dependency for this extension is much better since they need sudo to run. If you need any help with your extension you can ask us on: - [GNOME Extensions Matrix Channel](https://matrix.to/#/#extensions:gnome.org) - IRC Bridge: irc://irc.gimpnet.org/shell-extensions