Review of "Dynamic Calendar, Clocks and Weather Icons [Reborn]" version 6

Details Page Preview

Let Calendar, Clocks and Weather icons show current date, time and weather. This is a fork of the original Dynamic Calendar, Clocks and Weather Icons extension.

Extension Homepage
https://github.com/thecalamityjoe87/dynamic-calendar-and-clocks-icons-reborn

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 4

Shexli found 4 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

  • extension.js:36
    GLib.file_get_contents(keyfilePath)
  • extension.js:179
    jsonFile.load_contents(null)

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

  • extension.js:49
    console.error('Error reading GNOME Weather temperature unit')
  • extension.js:50
    console.error(e)
  • extension.js:63
    console.error('Error reading GWeather4 temperature unit')
  • extension.js:64
    console.error(e)
  • extension.js:150
    console.error('Error cancelling existing tempUnitMonitor')
  • extension.js:151
    console.error(e)

EGO-L-005 warning

owned object references should be released in disable()

Owned references that are cleaned up in `disable()` should also be released with `null` or `undefined`.

Destroy all objects

  • extension.js:76
        settings = Me.getSettings
        ('org.gnome.shell.extensions.dynamic-calendar-and-clocks-icons-reborn')

EGO-L-003 warning

signals connected by extension should be disconnected in disable()

Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.

Disconnect all signals

  • extension.js:140
            tempUnitMonitor.connect('changed', () => {
                // Let the weatherClient update the icons immediately
                weatherClient.emit('changed');
            })

All Versions

Version Status
6 Active
5 Active
4 Rejected
3 Active
2 Inactive
1 Inactive

Previous Reviews on this Version

fmuellner active