You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If the tester is constructed explicitly with a setup_policy it should still respect that. But if it a tester is default constructed, the new default setup_policy should be one that activates all protocol features and completes the transition to Savanna.
The behavior of the legacy version of tester under a fullsetup_policy should continue behaving as it currently does which is activating all the protocol features but not transition to Savanna consensus. Using the legacy version of the tester should require contract tests prior to Spring 1.0 to explicitly make changes to use the legacy version of the tester.
By default, contracts upgrading their libtester tests should be using the Savanna version of the tester (without any code changes required ideally). The behavior of the fullsetup_policy under the Savanna version of the tester is slightly different. It activates all the protocol features but then also transitions to Savanna consensus. It would be possible to stop short of transition to Savanna consensus by using a new setup_policy called full_except_do_not_transition_to_savanna.
Note that the existing full_except_do_not_disable_deferred_trxsetup_policy would also stop short of transitioning to the Savanna consensus (in both the legacy and Savanna versions of the tester). This is because we will ultimately make the disabled deferred transactions protocol features dependencies of the Savanna protocol feature.
As part of this work, also look at any remaining tests that use libtester but exist outside of the unittests directory. If these tests use an explicitly provided setup_policy, then they are not meant to exercise the tests under the environment of Savanna consensus and it is fine to keep these tests like this; they are not expected to fail. If the tests use the default setup_policy, the tests will now operate under Savanna consensus. The hope is that these tests should still not fail because what they test is independent of the consensus mechanism. But if they did, we should understand why and fix the test as appropriate.
Also run the reference contract tests after making these changes to ensure they do not break. If they do, we can address this in a separate reference contracts repo.
The text was updated successfully, but these errors were encountered:
If the
tester
is constructed explicitly with asetup_policy
it should still respect that. But if it atester
is default constructed, the new defaultsetup_policy
should be one that activates all protocol features and completes the transition to Savanna.The behavior of the legacy version of tester under a
full
setup_policy
should continue behaving as it currently does which is activating all the protocol features but not transition to Savanna consensus. Using the legacy version of the tester should require contract tests prior to Spring 1.0 to explicitly make changes to use the legacy version of the tester.By default, contracts upgrading their libtester tests should be using the Savanna version of the tester (without any code changes required ideally). The behavior of the
full
setup_policy
under the Savanna version of the tester is slightly different. It activates all the protocol features but then also transitions to Savanna consensus. It would be possible to stop short of transition to Savanna consensus by using a newsetup_policy
calledfull_except_do_not_transition_to_savanna
.Note that the existing
full_except_do_not_disable_deferred_trx
setup_policy
would also stop short of transitioning to the Savanna consensus (in both the legacy and Savanna versions of the tester). This is because we will ultimately make the disabled deferred transactions protocol features dependencies of the Savanna protocol feature.As part of this work, also look at any remaining tests that use libtester but exist outside of the
unittests
directory. If these tests use an explicitly providedsetup_policy
, then they are not meant to exercise the tests under the environment of Savanna consensus and it is fine to keep these tests like this; they are not expected to fail. If the tests use the defaultsetup_policy
, the tests will now operate under Savanna consensus. The hope is that these tests should still not fail because what they test is independent of the consensus mechanism. But if they did, we should understand why and fix the test as appropriate.Also run the reference contract tests after making these changes to ensure they do not break. If they do, we can address this in a separate reference contracts repo.
The text was updated successfully, but these errors were encountered: