Review of "Wetterkurve" version 1

Details Page Preview

A compact three-day weather chart for up to three saved locations

Extension Homepage
https://github.com/vibecodingwean/wetterkurve

No comments.

FAQ

Files

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

Shexli (experimental) warning 5

Shexli found 5 issues that may need reviewer attention.

EGO-P-006 warning

unnecessary build and translation artifacts should not be shipped

Compiled GSettings schemas should not be shipped for 45+ packages.

Don't include unnecessary files

  • schemas/gschemas.compiled
    schemas/gschemas.compiled

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:461
            this._bigIcon = new St.Icon({
                gicon: this._weatherIcon('unknown'),
                icon_size: 42,
                style_class: 'mw-big-icon',
            })
  • extension.js:501
    this._chart = new ForecastChart()
  • extension.js:404
            this._locationBar = new St.BoxLayout({
                style_class: 'mw-location-bar',
                x_expand: true,
            })
  • extension.js:408
            this._locationTabs = new St.BoxLayout({
                style_class: 'mw-location-tabs',
                x_expand: true,
            })
  • extension.js:380
            this._panelIcon = new St.Icon({
                gicon: this._weatherIcon('unknown'),
                icon_size: 17,
                style_class: 'mw-panel-icon',
            })
  • extension.js:467
            this._refreshButton = new St.Button({
                label: '↻',
                style_class: 'mw-refresh-button',
                can_focus: true,
                accessible_name: this._t('refreshWeather'),
            })
  • extension.js:413
            this._removeLocationButton = new St.Button({
                label: '−',
                style_class: 'mw-location-remove-button',
                can_focus: true,
                visible: false,
            })
  • extension.js:424
            this._searchBox = new St.BoxLayout({
                vertical: true,
                style_class: 'mw-search-box',
                x_expand: true,
                visible: false,
            })
  • extension.js:430
            this._searchEntry = new St.Entry({
                hint_text: this._t('searchLocation'),
                can_focus: true,
                style_class: 'mw-search-entry',
                x_expand: true,
            })
  • extension.js:442
            this._searchResults = new St.BoxLayout({
                vertical: true,
                style_class: 'mw-search-results',
                x_expand: true,
            })

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:461
            this._bigIcon = new St.Icon({
                gicon: this._weatherIcon('unknown'),
                icon_size: 42,
                style_class: 'mw-big-icon',
            })
  • extension.js:404
            this._locationBar = new St.BoxLayout({
                style_class: 'mw-location-bar',
                x_expand: true,
            })
  • extension.js:408
            this._locationTabs = new St.BoxLayout({
                style_class: 'mw-location-tabs',
                x_expand: true,
            })
  • extension.js:380
            this._panelIcon = new St.Icon({
                gicon: this._weatherIcon('unknown'),
                icon_size: 17,
                style_class: 'mw-panel-icon',
            })
  • extension.js:467
            this._refreshButton = new St.Button({
                label: '↻',
                style_class: 'mw-refresh-button',
                can_focus: true,
                accessible_name: this._t('refreshWeather'),
            })
  • extension.js:413
            this._removeLocationButton = new St.Button({
                label: '−',
                style_class: 'mw-location-remove-button',
                can_focus: true,
                visible: false,
            })
  • extension.js:424
            this._searchBox = new St.BoxLayout({
                vertical: true,
                style_class: 'mw-search-box',
                x_expand: true,
                visible: false,
            })
  • extension.js:430
            this._searchEntry = new St.Entry({
                hint_text: this._t('searchLocation'),
                can_focus: true,
                style_class: 'mw-search-entry',
                x_expand: true,
            })
  • extension.js:442
            this._searchResults = new St.BoxLayout({
                vertical: true,
                style_class: 'mw-search-results',
                x_expand: true,
            })

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:510
            this._indicator.menu.connect('open-state-changed', (_menu, isOpen) => {
                if (isOpen && GLib.get_monotonic_time() / 1e6 - this._lastUpdated >
                    STALE_SECONDS)
                    this._refresh();
            })

EGO-L-008 warning

Soup.Session instances should be aborted during cleanup

Soup.Session instances should be aborted during cleanup.

Soup.Session.abort

  • extension.js:322
            this._session = new Soup.Session({
                user_agent: `${this.metadata.name}/1`,
                timeout: 20,
            })

All Versions

Version Status
2 Unreviewed
1 Rejected

Previous Reviews on this Version

JustPerfection waiting for author
Where is the git URL? Is this code generated by AI? If so, we have a rule for that: [EGO Review Guidelines: AI](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#extensions-must-not-be-ai-generated)
vibecodingwean posted a review
Hey, Source code: https://github.com/vibecodingwean/wetterkurve AI was used as a development aid. I am the maintainer, have reviewed the submitted code, and can maintain it. regards
vibecodingwean auto- rejected
Auto-rejected because of new version 2 was uploaded