Review of "Wallpicker" version 4

Details Page Preview

A lightweight and elegant GNOME Shell Extension to easily pick and manage your wallpapers right from the top bar.

Extension Homepage
https://github.com/OMARxKHALID/Wallpicker

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) warning 3

Shexli found 3 issues that may need reviewer attention.

EGO-X-004 warning

extensions should avoid synchronous file IO in shell code

Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.

File Operations

  • utils.js:146
    GLib.file_get_contents(STATS_FILE)
  • utils.js:220
    GLib.file_get_contents(FAVORITES_FILE)

EGO-A-004 warning

extension files should not contain excessive ungated console logging

File contains 6 ungated console.log/warn/error calls (threshold: 5).

No excessive logging

  • utils.js:110
    console.error(`[${APP_NAME}] saveFileAsync ${path}: ${e.message}`)
  • utils.js:168
    console.error(`[${APP_NAME}] _saveStats: ${e.message}`)
  • utils.js:184
    console.error(`[${APP_NAME}] flushStats: ${e.message}`)
  • utils.js:210
    console.error(`[${APP_NAME}] recordUse: ${e.message}`)
  • utils.js:233
    console.error(`[${APP_NAME}] saveFavorites: ${e.message}`)
  • utils.js:280
    console.error(`[${APP_NAME}] setWallpaper: ${e.message}`)

EGO-L-004 warning

main loop sources should be removed in disable()

Main loop sources assigned in `enable()` are missing matching removals in `disable()` or its helper methods.

Remove main loop sources

  • extension.js:160
            GLib.idle_add(GLib.PRIORITY_DEFAULT, () => {
              try {
                win.activate(global.get_current_time());
              } catch (_) {}
              return GLib.SOURCE_REMOVE;
            })

All Versions

Version Status
4 Active
3 Rejected
2 Rejected
1 Rejected

Previous Reviews on this Version

dlandau active
Please check the shexli messages for next time