Next version of Config::Model will use asynchronous check
Edit: Asynchronous checks turned out to be more trouble than its worth (for this case). After finding a way to query all package data in one call, I’ve removed the asynchronous code in 2015.
The first version of this check did sequential requests: when the cache was not very fresh, I had to wait more than 60s before getting results for complex package like padre. That was very frustrating (but less frustrating than checking package names manually)
For the following version, I
addedhacked AnyEvent in Dpkg model to run parrallel queries. This went much faster but gaves weird results: before getting a response from Debian server, the packages were flagged as unknown. To get consistent results, running twice cme check dpkg was required.
So, at new year, I’ve decided to bite the bullet and implement correctly value checks with asynchronous queries to remote server. This new feature is now ready and will be delivered in Config::Model 2.030. cme will now return consistent results.
This new release is mostly backward compatible. You may notice some quirks with some other modules based on Config::Model:
- Current Config::Model::Dpkg will returns unconsistent results as usual
- Tk UI will not show correct package status (i.e. packages may be wrongly shown as unknown)
- config-model-edit process must be killed if it refuses to exit.
- Tk UI non-regression tests will block
These quirks will disappear once these modules are updated. This should not be long since all the updates are ready in github.
All the best