Auto merge of #3045 - rust-lang:search-task-restartable, r=Turbo87
Auto merge of #3045 - rust-lang:search-task-restartable, r=Turbo87

Keep only latest search API request

We are currently using the `drop` modifier for the data task, which means that subsequent requests are ignored while the first request is in flight.
Changing the modifier to `restartable` will take the data task drop all but the latest request. This should help with showing the correct search results when paginating and using the browser's back button.

Partially addresses https://github.com/rust-lang/crates.io/issues/3041.

rust-lang/crates.io,rust-lang/crates.io,rust-lang/crates.io,rust-lang/crates.io