[Impact]
The snapshot service provides users access to older states of the archive with ease of use, and enables a consistent user experience across all supported releases, as otherwise users would have to rewrite their sources.list to make use of snapshots and set up pinning.
[Test plan]
The complete regression test suite in autopkgtests includes an automatic test case for this and the known limitations that have been fixed. Aside from that, it is also worthwhile to do an end-to-end test:
Configure snapshot=yes for Ubuntu sources in your sources.list and
1. run apt update - it should not use snapshot
2. run apt update --snapshot 20231001T000000Z, it should download the snapshot
3. run apt install --snapshot 20231001T000000Z hello, it should install hello from the snapshot
[Where problems could occur]
The integration has been purposefully limited in how it works to reduce the impact it has on the APT code; hence it was possible to cherry-pick this into 22.04, 20.04, and even 18.04 with only a minor editorial change. This significantly limits the risk.
This feature is only enabled for sources with snapshot=yes (.list) or Snapshot: yes (.sources) or other truthy values apt recognizes. Most users will not have such entries as they did not have an APT supporting it.
This combined should ensure that users do not experience any regressions. However the feature may be lacking in some ways that we may want to address in follow up SRUs; it has not been used in the wild a lot.
[Impact]
The snapshot service provides users access to older states of the archive with ease of use, and enables a consistent user experience across all supported releases, as otherwise users would have to rewrite their sources.list to make use of snapshots and set up pinning.
[Test plan]
The complete regression test suite in autopkgtests includes an automatic test case for this and the known limitations that have been fixed. Aside from that, it is also worthwhile to do an end-to-end test:
Configure snapshot=yes for Ubuntu sources in your sources.list and
1. run apt update - it should not use snapshot
2. run apt update --snapshot 20231001T000000Z, it should download the snapshot
3. run apt install --snapshot 20231001T000000Z hello, it should install hello from the snapshot
[Where problems could occur]
The integration has been purposefully limited in how it works to reduce the impact it has on the APT code; hence it was possible to cherry-pick this into 22.04, 20.04, and even 18.04 with only a minor editorial change. This significantly limits the risk.
This feature is only enabled for sources with snapshot=yes (.list) or Snapshot: yes (.sources) or other truthy values apt recognizes. Most users will not have such entries as they did not have an APT supporting it.
This combined should ensure that users do not experience any regressions. However the feature may be lacking in some ways that we may want to address in follow up SRUs; it has not been used in the wild a lot.