Changelog

0.3.0

Topic Page object model implementation revamp & other major changes

Release date (unreleased)

Warning

Even if it’s a minor release, this version represents a major change for the project; the package has been mostly rewritten in order to implement the page object model design pattern in a more efficient way (using type annotation).

Besides, some functionalities have been removed with the aim of limiting the number of features during the beta phase.

All previous versions should be considered as deprecated.

Changed

  • The module page_object_model has been rewritten to use type annotation instead of Element. Note that some elements like select or radio button haven’t been implemented in this new version yet (but will be in the future).

  • Most of the documentation pages have been rewritten and improved.

  • Most modules have better typing annotations and documentation. Besides, the code has been improved to be more “Pythonic”.

  • Manen no longer has optional dependencies (which were in fact development dependencies).

  • The minimal version of Python required is now 3.10.

  • Internally, Manen is now using rye as project manager, and ruff for the linting and formatting.

Removed

  • The module manen.resource and everything related (like the CLI) have been removed. Indeed, the official Selenium manager (available as a CLI tool and in recent versions of Python bindings for Selenium) provides the same functionalities.

  • manen.browser.BraveBrowser has been removed because it had a dependency on the module manen.resource. Besides, it was considered as not enough tested internally to make it available publicly.


0.2.0

Topic Rename some classes in page_object_model and improve CLI

Release date 2022-02-19

Added

  • Specify link to changelog in documentation in package metadata.

  • Introduce new options in manen driver download to set the specifications of the drivers to be downloaded directly from the command line.

  • Add exhaustibility in documentation of page_object_model to describe private/special methods and classes other than the ones in __all__.

Changed

  • Improve CLI command to download drivers executable (now launched with manen driver download).

  • Rename DateTimeElement (previously DatetimeElement).

  • Rename DOMAccessor (previously DomAccessor).

Fixed

  • Fix link to notebooks in the info section of User Guide


0.1.2

Topic Fix bug in the download workflow of the CLI

Release date 2022-02-19

Fixed

  • Fix a TypeError in the download workflow (variable wrongly named).


0.1.1

Topic Mainly documentation improvements

Release date 2022-02-12

Changed

  • Make documentation publicly available under kodaho.github.io/manen.

  • Complete README page.

  • Add the section About the project in the documentation (moved from home page).

  • Complete user guides.

  • Rewording and reformatting of several sections.


0.1.0

Topic First release of the package

Release date 2022-01-31

Added

  • find() allows to easily get element(s) in a WebDriver page. This function support several very different use cases, thanks to several arguments that can be passed to the function.

  • resource is a module to easily interact with all the assets needed by Selenium. It allows for example to download the drivers, executable required to launch a WebDriver.

  • browser defined ChromeBrowser and BraveBrowser, an enhanced Selenium WebDriver.

  • page_object_model is the implementation of page object model described in Selenium documentation. Thanks to that, you can describe and interact with the DOM structure through Python classes.

  • A cli is shipped with the initial release in order to download drivers files.