Skip to content

Releases: mherrmann/helium

Add support for hidden file input elements

03 Jun 09:03
39244f8

Choose a tag to compare

Websites often have hidden file input elements. Helium previously was not able to interact with them. Now it can. For example, via:

attach_file('.../path/to/your/file.txt')

Improve LookupError

09 May 16:02
03d9261

Choose a tag to compare

Previously, when you did click("non-existent") you received a LookupError without further information. Now, you get LookupError: "non-existent". Similarly for other actions. This makes debugging easier.

Fix relative searches

04 Feb 17:00
ac354ad

Choose a tag to compare

The previous release 6.0.0 was not able to find Button('Duplicate Button', to_left_of=Button('Duplicate Button', below=Button('Duplicate Button'))) in the following arrangement:

image

This release fixes this. It changes which elements are found and is therefore a major version.

Improve the behavior of find_all

13 Jan 09:22
7aa9311

Choose a tag to compare

find_all had the following bug:

Imagine you have the following code:

for label in find_all(Text('Label')):
    print(Link(to_right_of=label).href)

The bug was that this used the same Link for each label, producing output for links that actually were not to_right_of the label in the loop.

Furthermore, this release also changes the behavior of find_all in the following way. Say you have four buttons in a 2x2 grid:

image

Previously, the following code used to return two buttons:

find_all(Button("Duplicate Button"), below=Button("Duplicate Button"))

(Namely, the two buttons in the second row, because they are both under a "Duplicate Button").

Now, this only returns one button (the first button in the second row). If you want both, you can still do:

for button in find_all(Button("Duplicate Button")):
    find_all(Button("Duplicate Button", below=button))

This release is a major version bump (6.x.x) because it changes the elements returned by Helium's API and may therefore be backwards-incompatible.

Prevent Chrome's leaked password detection

10 Nov 07:14
967183f

Choose a tag to compare

Recent Chrome versions have a feature that sometimes brings up a blocking prompt The password you just used was found in a data breach. This can interfere with automation. This release prevents it from being used.

Fix start_firefox(..., profile=profile)

20 Feb 16:06
59929ed

Choose a tag to compare

Add support for input type=date and ...=time

23 Aug 09:13
9dac617

Choose a tag to compare

See 2100561.

This is a minor version upgrade (5.0.... -> 5.1....) because the new implementation may find slightly different text fields.

Fix a small bug in find_all(...)

14 Aug 08:51
eac576f

Choose a tag to compare

It was introduced in v5.0.5.

Avoid some FramesChangedWhileIterating errors

14 Aug 08:41
654ded1

Choose a tag to compare

v5.0.5

Bump version to 5.0.5

Fix NoSuchElementException print(...)ing elements outside the current frame

14 Aug 07:49
b90ead0

Choose a tag to compare