Review of "Fedora Linux Update Indicator" version 45

Details Page Preview

GNOME Shell update indicator for Fedora Linux. This is based on Arch Linux Updates Indicator by Raphaƫl Rochet. This extension is not affiliated, funded, or in any way associated with Fedora brand and Red Hat Software.

Extension Homepage
https://github.com/purejava/fedora-update

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-L-002 warning

objects created by extension should be destroyed in disable()

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

Destroy all objects

  • extension.js:167
    this.checkNowMenuContainer = new PopupMenu.PopupMenuSection()
  • extension.js:166
    this.checkNowMenuItem = new PopupMenu.PopupMenuItem( _('Check now') )
  • extension.js:154
    this.checkingMenuItem = new PopupMenu.PopupBaseMenuItem( {reactive:false} )
  • extension.js:151
    this.managerMenuItem = new PopupMenu.PopupMenuItem(_('Open package manager'))
  • extension.js:144
    this.menuExpander = new PopupMenu.PopupSubMenuMenuItem('')
  • extension.js:145
    this.menuExpanderContainer = new St.BoxLayout({ vertical: true, style_class: 'fedora-updates-updates-list' })
  • extension.js:171
    this.timeCheckedMenu = new PopupMenu.PopupMenuItem( "-", {reactive:false} )
  • extension.js:150
    this.updateNowMenuItem = new PopupMenu.PopupMenuItem(_('Update now'))

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:202
    this._desktopSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.interface' })
  • extension.js:201
    this._settings = this._extension.getSettings()
  • extension.js:167
    this.checkNowMenuContainer = new PopupMenu.PopupMenuSection()
  • extension.js:166
    this.checkNowMenuItem = new PopupMenu.PopupMenuItem( _('Check now') )
  • extension.js:154
    this.checkingMenuItem = new PopupMenu.PopupBaseMenuItem( {reactive:false} )
  • extension.js:151
    this.managerMenuItem = new PopupMenu.PopupMenuItem(_('Open package manager'))
  • extension.js:144
    this.menuExpander = new PopupMenu.PopupSubMenuMenuItem('')
  • extension.js:145
    this.menuExpanderContainer = new St.BoxLayout({ vertical: true, style_class: 'fedora-updates-updates-list' })
  • extension.js:171
    this.timeCheckedMenu = new PopupMenu.PopupMenuItem( "-", {reactive:false} )
  • extension.js:150
    this.updateNowMenuItem = new PopupMenu.PopupMenuItem(_('Update now'))

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:751
    this._notifSource.connect('destroy', ()=>{this._notifSource = null;})
  • extension.js:762
    this._notification.connect('destroy', ()=>{this._notification = null;})
  • extension.js:185
    this.menu.connect('open-state-changed', this._onMenuOpened.bind(this))

All Versions

Previous Reviews on this Version

purejava posted a review
Implements https://github.com/purejava/fedora-update/pull/49
JustPerfection active