diff --git a/CHANGELOG.md b/CHANGELOG.md index c97de04..ad05ec1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,17 @@ # Changelog All notable changes to this project will be documented in this file. +## [0.26.2] - 2021-05-18 +### Fixed +- If XHRSpy.add() is called multiple times on the same page, the active and total counters are no longer reset. + ## [0.26.1] - 2021-05-12 ### Fixed - If XHRSpy.add() is called multiple times on the same page, the hook is only added once. ## [0.26.0] - 2021-03-22 ### Added -- Network spies to assist with navigating async web apps +- Network spies to assist with navigating async web apps. ## [0.25.0] - 2021-02-24 ### Added @@ -19,13 +23,13 @@ All notable changes to this project will be documented in this file. ## [0.23.0] - 2021-01-18 ### Fixed -- Nesting Repeating, Area, and RepeatingArea now correctly assigns root +- Nesting Repeating, Area, and RepeatingArea now correctly assigns root. ## [0.22.0] - 2021-01-13 ### Changed - Bumped minimum version of py-moneyed to 1.0. - 'items' as a keyword is now allowed in Area and RepeatingArea. -- Missing root keyword in RepeatingArea now throws TypeError instead of ValueError +- Missing root keyword in RepeatingArea now throws TypeError instead of ValueError. ### Fixed - Area with no root inside a RepeatingArea should now work correctly. @@ -39,15 +43,15 @@ All notable changes to this project will be documented in this file. ## [0.20.0] - 2020-09-25 ### Changed - Stere.retry_time is used when searching for an attribute inside an element. -- Nicer error message is thrown when an element is not found while doing an attribute lookup +- Nicer error message is thrown when an element is not found while doing an attribute lookup. ## [0.19.0] - 2020-09-22 ### Changed -- is_visible / is_not_visible methods try to handle stale element exceptions by retrying search +- is_visible / is_not_visible methods try to handle stale element exceptions by retrying search. ## [0.18.0] - 2020-09-14 ### Changed -- Button and Link Fields wait for visible/clickable status before clicking +- Button and Link Fields wait for visible/clickable status before clicking. ## [0.17.0] - 2020-09-02 @@ -57,8 +61,8 @@ All notable changes to this project will be documented in this file. ## [0.16.0] - 2020-04-20 ### Changed -- Field.value_contains and Field.value_equals use Stere.retry_time as a default value -- Splinter Dropdown.select() retries if value is not found +- Field.value_contains and Field.value_equals use Stere.retry_time as a default value. +- Splinter Dropdown.select() retries if value is not found. ## [0.15.0] - 2019-12-15 @@ -77,24 +81,24 @@ All notable changes to this project will be documented in this file. - Repeating and RepeatingArea now have the has_children() method. ### Changed -- FindByDataStarAttribute renamed to FindByAttribute +- FindByDataStarAttribute renamed to FindByAttribute. ### Fixed -- Field.is_present() and Field.is_not_present() now work correctly with FindByAttribute +- Field.is_present() and Field.is_not_present() now work correctly with FindByAttribute. ## [0.12.0] - 2019-10-21 ### Fixed -- Field.is_present() and Field.is_not_present() now work with Fields inside a RepeatingArea +- Field.is_present() and Field.is_not_present() now work with Fields inside a RepeatingArea. ## [0.11.0] - 2019-10-17 ### Added -- Page.page_url now built from Stere.base_url and Page.url_suffix +- Page.page_url now built from Stere.base_url and Page.url_suffix. ## [0.10.0] - 2019-10-09 ### Changed -- An Area can now be placed inside a RepeatingArea -- Areas.containing now accepts nested values -- Areas.contain now accepts nested values +- An Area can now be placed inside a RepeatingArea. +- Areas.containing now accepts nested values. +- Areas.contain now accepts nested values. ## [0.9.0] - 2019-09-12 ### Added @@ -106,80 +110,80 @@ All notable changes to this project will be documented in this file. ## [0.7.0] - 2019-03-14 ### Added -- Splinter and Appium Input Fields can now take a default_value parameter -- Stere.url_navigator has a default value when Splinter is used +- Splinter and Appium Input Fields can now take a default_value parameter. +- Stere.url_navigator has a default value when Splinter is used. ### Changed -- If an invalid locator strategy is used, the error message now reports valid strategies +- If an invalid locator strategy is used, the error message now reports valid strategies. ## [0.6.1] - 2019-02-22 ### Changed -- Base Field, Root, and Text now use @stere_performer instead of a custom perform method +- Base Field, Root, and Text now use @stere_performer instead of a custom perform method. ### Fixed -- Implicit Field calls now work with all Fields +- Implicit Field calls now work with all Fields. ## [0.6.0] - 2019-02-22 ### Added -- Field can take the keyword argument "returns". The object given will be returned after Field.perform() is called -- Field now executes Field.perform() when called +- Field can take the keyword argument "returns". The object given will be returned after Field.perform() is called. +- Field now executes Field.perform() when called. ### Changed -- Stere decorators can now be used by importing Field.decorators +- Stere decorators can now be used by importing Field.decorators. ## [0.5.0] - 2019-01-15 ### Added -- Add Field.value_equals() and Field.value_contains() methods -- Add Areas.containing() -- Add Repeating class to handle ridiculously nested collections +- Add Field.value_equals() and Field.value_contains() methods. +- Add Areas.containing(). +- Add Repeating class to handle ridiculously nested collections. ### Changed -- Deprecated RepeatingArea.area_with() -- Areas container only accepts Area objects inside it +- Deprecated RepeatingArea.area_with(). +- Areas container only accepts Area objects inside it. ### Fixed -- FindByDataStarAttribute inherits from SplinterBase +- FindByDataStarAttribute inherits from SplinterBase. ## [0.4.0] - 2019-01-02 ### Added -- Added RepeatingArea.areas.contain() method +- Added RepeatingArea.areas.contain() method. ### Changed -- RepeatingArea.areas now returns a list-like object instead of a list -- Page.navigate() returns the Page instance +- RepeatingArea.areas now returns a list-like object instead of a list. +- Page.navigate() returns the Page instance. ### Fixed -- If a Field is found multiple times, ensure an error is thrown when Field.find() is used +- If a Field is found multiple times, ensure an error is thrown when Field.find() is used. ## [0.3.0] - 2018-11-06 ### Added -- Appium compatibility started +- Appium compatibility started. ### Changed -- RepeatingArea can now use any Field as a root -- Root Field no longer overrides Field.find() +- RepeatingArea can now use any Field as a root. +- Root Field no longer overrides Field.find(). ## [0.2.3] - 2018-10-19 ### Fixed -- Preserve class name on Fields that implement a performer -- Fix implementation of is_visible and is_not_visible when using Splinter +- Preserve class name on Fields that implement a performer. +- Fix implementation of is_visible and is_not_visible when using Splinter. ## [0.2.2] - 2018-10-16 ### Added -- python 3.7 now supported -- stere.ini config file can be used to specify automation library -- Field implements the \__repr__ method -- RepeatingArea implements the \__len__ method +- python 3.7 now supported. +- stere.ini config file can be used to specify automation library. +- Field implements the \__repr__ method. +- RepeatingArea implements the \__len__ method. ### Changed -- Splinter specific implementation refactored in Field.find() +- Splinter specific implementation refactored in Field.find(). ## [0.2.1] - 2018-09-12 ### Added -- Area.perform() can now take keyword arguments +- Area.perform() can now take keyword arguments. ## [0.2.0] - 2018-08-23 ### Added -- Page class is now a Context Manager -- Added is_visible and is_not_visible methods to Field -- Added CHANGELOG file +- Page class is now a Context Manager. +- Added is_visible and is_not_visible methods to Field. +- Added CHANGELOG file. diff --git a/docs/conf.py b/docs/conf.py index e6c261c..60143c2 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -60,9 +60,9 @@ # built documents. # # The short X.Y version. -version = '0.26.1' +version = '0.26.2' # The full version, including alpha/beta/rc tags. -release = '0.26.1' +release = '0.26.2' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/setup.py b/setup.py index 683480e..a7d0182 100644 --- a/setup.py +++ b/setup.py @@ -11,7 +11,7 @@ def read(filename): setup( name="stere", - version="0.26.1", + version="0.26.2", description="A nice way of implementing the Page Object pattern.", long_description=read('README.rst'), author="Joshua Fehler",