VSCode Robocorp extensions at older Browser version; how to upgrade?

Hi, everyone–

Total noob here. I have VSCode with the official Robocorp extensions for VSCode:
Robocorp Code v 1.22.3
Robot Framework Language Server v 1.12.0

Both seem to be based on Robot Framework Browser version 17.5.2 and Robot Framework 6.1.1 and Playwright 1.39.0 according to the rfbrowser command located in ~/.robocorp/holotree/…/bin

I am trying to use the keyword Wait For Load State that doesn’t seem to be in Robot Framework Browser version 17.5.2.

I tried updating and uninstall+reinstall the two Robocorp extensions in VSCode’s extension manager but they come back with the same versions.

Is there a way to upgrade this VSCode setup to use Robot Framework Browser 18.x (might as well upgrade Robot Framework and Playwright too, especially if they need to be at certain versions to support Robot Framework Browser 18.x)?

If doing so requires manual command-line upgrades, could you point me to specific instructions (since I don’t know what I’m doing)?

Thanks in advance!

Hello,

Welcome to the forum!

The plugins of RoboCorp are outdated. I think rcc is the only tool they still maintain (which creates the holotree with the outdated browser lib version). The outdated browser lib version may have several reasons, but is likely independent from the vscode plugins.

If you have followed the tutorials of RoboCorp you likely have a dependency rpaframework in your conda.yaml . As most of RoboCorp stuff, that dependency is unmaintained and may link to the old browser lib.

Replace the dependency rpaframework by robotframework-browser

In general, I recommend to drop all RoboCorp stuff. It’s old und unmaintained. unfortunately they have swamped SEO with their material. The only plugins up-to-date with close ties to Robot Framework core development is Robotcode: RobotCode - Robot Framework Support - Visual Studio Marketplace

Cheers,
Markus

5 Likes

Thanks, Markus!
I took your advice and uninstalled all the Robocorp stuff.

I might not use VSCode at all; this has made me wonder if perhaps I should use PyCharm or some other IDE.

@dchang0 You may consider to try RIDE, that exists since 2010. It is an IDE for Software Testers (programmers may not like much :wink: ).

See here, the project page. Please try to install the development version.

I am the maintainer of RIDE RIDE and I am always available to help.

1 Like

Thanks!
I will definitely check it out. I am a programmer (C#, VB.NET, but the intended end users are not. They will probably prefer RIDE over VSCode or PyCharm, especially as they modify the robot code I create for them.

Imho, VSCode is the best choice at the moment, unless you have a specific favor for eclipse, neovim or sublime or ride.

PyCharm makes trouble for language servers. Jetbrains fails to support it properly. If I recall correctly they had the “shittify” idea to make language servers a paid-feature, which kills any community contribution. but I heard others stepped in (I think I heard about RedHat taking action). There are prototypes porting Robotcode to PyCharm. Give it a few weeks/months. Until then, you have almost no other choice than using the outdated RoboCorp plugin when you go for PyCharm.

VSCode + Robotcode is currently the most common IDE and the only combination that is fully RFW 7 compatible, as far as I am aware.

2 Likes

Thanks, Markus!
I was just about to try PyCharm + some of the plugins there. I am also trying out RIDE but haven’t installed the GTK+ prereqs yet.

I will probably go back to VSCode for the reasons you mention–thanks!

I also suspect that for the latest and greatest versions of everything, I’ll have to use a plain old text editor. I really need the many Wait For… keywords or this project I’m assigned is impossible.

FYI - Most (all?) the Wait For … that I’ve seen were around before RF7.0 so should be well supported in VSCode :crossed_fingers:

If you do decide to go down the text editor rote then I use Pulsar (the OS fork of Atom after github dropped Atom) it has syntax highlighting for RF and python.

I’ve also heard there’s a syntax highlight thing for RF syntax in vim if you want to go that way too. So don’t think you have to give up everything to go with a text editor :+1:

Dave.

1 Like

Thanks, Dave!
I will try Pulsar.

As for the Wait For keywords, my current VSCode setup with the versions mentioned above only seems to understand Wait For (promise), and it seems to not be aware of any other Wait For … keywords (the one I really need is Wait For Load State, but there will probably be at least one other Wait For … that I will need). What’ll probably happen is using the latest versions only for this one project and sticking with VSCode + Robocorp’s older plugins for most other projects.

FYI These are the packages I use in Pulsar:

It’s strange that Wait For Load State is not showing up in VSCode, I would have expected it to show up.

From Issue # 3327 I can see Wait For Load State was added to Browser Library in version 18.2.0, which says in the release notes:

Browser library 18.2.0 was released on Wednesday February 16, 2024. Browser supports Python 3.8+, Node 18/20 LTS and Robot Framework 5.0+. Library was tested with Playwright 1.41.2

So given your setup that “should” be working, but I’ll have to let a VSCode expert figure out why it’s not.

Dave.

1 Like

Thanks, Dave!

Unfortunately, I am using VSCode+Robocorp’s two extensions, which bring RobotFramework Browser version 17.5.2. I’ll definitely switch to Pulsar+the plugins you mention for this one project…

Thanks for your help!

1 Like