From 69524d0577c225b7cb8139aa82d706a226c17224 Mon Sep 17 00:00:00 2001 From: Henning Koch Date: Fri, 24 Nov 2023 16:54:08 +0100 Subject: [PATCH] Version 2.0.0 --- CHANGELOG.md | 6 +++--- Gemfile.lock | 2 +- lib/capybara-lockstep/version.rb | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e91f1d..babebea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -# 2.0.0-rc1 +# 2.0.0 This major release detects many additional sources of flaky tests: @@ -11,8 +11,8 @@ This major release detects many additional sources of flaky tests: - We now synchronize after a user interaction (e.g. after a click). Previously we only synchronized before an observation. This could lead to race conditions when a test made assertions without going through Capybara, e.g. by accessing the database or global state variables. - When a job ends (e.g. an AJAX request finishes) we now wait for one [JavaScript task](https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/). This gives event listeners more time to schedule new async work. - We now wait one JavaScript task after `touchstart`, `mousedown`, `click` and `keydown` events. This gives event listeners more time to schedule async work after a user interaction. -- You can now wait while the backend server is busy, by using `Capybara::Lockstep::Middleware` in your Rails or Rack app. We previously only waited for AJAX requests on the client, but using the middleware addresses some additional edge cases. For example, the middleware detects requests that were aborted on the frontend, but are still being processed by the backend. -- You can signal async work from the backend, e.g. for background jobs. Note that you don't need to signal work for the regular request/response cycle, as this is detected automatically. +- You can now [wait while the backend server is busy](https://github.com/makandra/capybara-lockstep/#including-the-middleware-optional), by using `Capybara::Lockstep::Middleware` in your Rails or Rack app. We previously only waited for AJAX requests on the client, but using the middleware addresses some additional edge cases. For example, the middleware detects requests that were aborted on the frontend, but are still being processed by the backend. +- You can [signal async work from the backend](https://github.com/makandra/capybara-lockstep/#on-the-backend), e.g. for background jobs. Note that you don't need to signal work for the regular request/response cycle, as this is detected automatically. Although we now cover a lot more edge cases, this releases will not slow down your test suite considerably. diff --git a/Gemfile.lock b/Gemfile.lock index 9536c7c..b20c742 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - capybara-lockstep (2.0.0.rc1) + capybara-lockstep (2.0.0) activesupport (>= 4.2) capybara (>= 3.0) ruby2_keywords diff --git a/lib/capybara-lockstep/version.rb b/lib/capybara-lockstep/version.rb index 84d97eb..cd0a3ac 100644 --- a/lib/capybara-lockstep/version.rb +++ b/lib/capybara-lockstep/version.rb @@ -1,5 +1,5 @@ module Capybara module Lockstep - VERSION = "2.0.0.rc1" + VERSION = "2.0.0" end end