ifl0w / RandomWallpaperGnome3

Random Wallpapers for Gnome 3
MIT License
178 stars 42 forks source link

`this.session.send_and_read_async is not a function` #123

Closed canvural closed 2 years ago

canvural commented 2 years ago

Hello,

Yesterday the extension updated. And when I restarted my laptop, the extension stopped working.

I have this error:

image

I'm using Ubuntu 21.10 and Gnome 40.4.0

Let me know if you need more information or how can I debug this further.

ifl0w commented 2 years ago

Hello and thanks for the bug report!

From the latest comment on the extension page it seems that, the extension should work on Ubuntu 21.10 in general. So there has to be something different with your particular system.

The error suggests that the extension thinks libSoup 3 is available but some older version is loaded. Could you find out what version of libSoup is installed on your system? Also, make sure that the system is fully up to date and properly rebooted.

Are you comfortable with debugging the extension? Otherwise, I'll need to set up an Ubuntu installation myself.

flexbarence commented 2 years ago

This bug also affects me. When I run the extension and click on the "New Wallpaper" button on the GNOME shell top bar menu, I get the error. When I request a new wallpaper from within the settings applet, I get a new wallpaper. I'm also getting a message that says, "Ignoring length property that isn't a number at line 732, column 24."

ifl0w commented 2 years ago

Thanks for contributing! I know that the settings and the extension may load different versions of libSoup and the commit a36bd1a7a2e601a140b2ecef0d03443112261e64 should have solved that.

I'll try to debug Ubuntu as soon as possible, but since I do not run Ubuntu myself it might take a while until I find the time to set up a working dev environment. @pascallj Do you know whether your container environment for legacy does work with ubuntu 21.10? That would make things easier.

Otherwise, if someone running Ubuntu 21.10 is able to debug it, feel free to provide more input. The problem is likely to be fixable in the file soupBowl.js I'll try to put the issue on my schedule for this weekend.

ifl0w commented 2 years ago

@flexbarence Regarding the second error you mentioned: I do not know what this error refers to. No file of this extension is that long. I assume it is an error message from somewhere else.

pascallj commented 2 years ago

@pascallj Do you know whether your container environment for legacy does work with ubuntu 21.10? That would make things easier.

It can be updated to work with 21.10 I think. It didn't work at the time because I had to wait for Docker to fix some issues first.

I was notified on the new release so I was already planning to do some work today or this weekend. Will put this at the top of my list.

canvural commented 2 years ago

From the latest comment on the extension page it seems that, the extension should work on Ubuntu 21.10 in general.

Yes, there is no problem with 21.10. It was working fine until the last update of this extension.

The error suggests that the extension thinks libSoup 3 is available but some older version is loaded. Could you find out what version of libSoup is installed on your system? Also, make sure that the system is fully up to date and properly rebooted.

These are the installed packages if I search for libsoup

libsoup-gnome2.4-1/impish,now 2.72.0-3ubuntu3 amd64 [installed,automatic]
libsoup-gnome2.4-1/impish 2.72.0-3ubuntu3 i386
libsoup-gnome2.4-dev/impish 2.72.0-3ubuntu3 amd64
libsoup-gnome2.4-dev/impish 2.72.0-3ubuntu3 i386
libsoup2.4-1/impish,now 2.72.0-3ubuntu3 amd64 [installed,automatic]
libsoup2.4-1/impish 2.72.0-3ubuntu3 i386
libsoup2.4-cil-dev/impish 2.42.2+git20151219-3 amd64
libsoup2.4-cil/impish 2.42.2+git20151219-3 amd64
libsoup2.4-dev/impish 2.72.0-3ubuntu3 amd64
libsoup2.4-dev/impish 2.72.0-3ubuntu3 i386
libsoup2.4-doc/impish,impish 2.72.0-3ubuntu3 all
libsoup2.4-tests/impish 2.72.0-3ubuntu3 amd64
libsoup2.4-tests/impish 2.72.0-3ubuntu3 i386

But this were not updated. Again this extension was working perfectly until version 2.7.0

Are you comfortable with debugging the extension? Otherwise, I'll need to set up an Ubuntu installation myself.

Sure, I can do that. Is following the steps in the README enough?

ifl0w commented 2 years ago

@pascallj Cool thanks for the fast response! I might find time later today to experiment with it as well.

@canvural Thanks for the update. Your libsoup packages should be recent enough. I assume that the try-block in the top of the soupBowl.js does not trigger an exception, and the Bowl class then tries to use the libsoup3 API which is not installed on your system. For debugging, the README just states how to look at the output but you have to add log(...) calls to the code to test the program flow yourself. Remember to use ./debug.sh prefs when checking the output of the settings app and ./debug.sh otherwise. Also, I really do not have a better way than debugging with log(..). To my knowledge, there is no easy way to attach a real debugger. I'd start with testing if the mentioned try and the corresponding catch block are executed. On your system, the catch block should be executed and is necessary since no libsoup3 is present.

flexbarence commented 2 years ago

Dear Wolfang,

I did not expect a reply! I have no idea whether the "container environment for legacy" works with Ubuntu 21.10, but I do know that the version of libSoup is 2.4.

Take care,

Barry

On Fri, Dec 17, 2021 at 5:16 AM Wolfgang Rumpler @.***> wrote:

Thanks for contributing! I know that the settings and the extension may load different versions of libSoup and the commit a36bd1a https://github.com/ifl0w/RandomWallpaperGnome3/commit/a36bd1a7a2e601a140b2ecef0d03443112261e64 should have solved that.

I'll try to debug Ubuntu as soon as possible, but since I do not run Ubuntu myself it might take a while until I find the time to set up a working dev environment. @pascallj https://github.com/pascallj Do you know whether your container environment for legacy does work with ubuntu 21.10? That would make things easier.

Otherwise, if someone running Ubuntu 21.10 is able to debug it, feel free to provide more input. The problem is likely to be fixable in the file soupBowl.js @.***/soupBowl.js> I'll try to put the issue on my schedule for this weekend.

— Reply to this email directly, view it on GitHub https://github.com/ifl0w/RandomWallpaperGnome3/issues/123#issuecomment-996600973, or unsubscribe https://github.com/notifications/unsubscribe-auth/AW6P7A7XVNJBX4UEFNTNLRTURMEW3ANCNFSM5KFX6YTA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

pascallj commented 2 years ago

I can confirm (via the container test environment) that this bug happens on a default installation of Ubuntu 21.10. Debugging it right now...

pascallj commented 2 years ago

Possible fix in #125. Tested on a libsoup 2.4 only system. Still needs to be tested on libsoup 3 only system and a system with both version of the library installed.

ifl0w commented 2 years ago

@flexbarence The part with the container environment was meant for pascallj. I'm sorry for the misunderstanding but thanks for your help!

@pascallj Great work! You basically debugged and fixed it before I could even start! :) Thanks for that! I'll take a closer look at both your PRs tomorrow and release the fixed version!

ifl0w commented 2 years ago

This should be fixed now and is in the develop branch. I'd be glad if someone finds the time to verify.

pascallj commented 2 years ago

Your updated fix works in the container, so I'm sure it works for Ubuntu 21.10 users in general. Have you tested it on your system with libsoup3 present as well?

ifl0w commented 2 years ago

Thanks for confirming! Yes, I tested It on my system as well as in the Ubuntu container. I assume it should work for "real" Ubuntu systems as well and will release the fixed version today.