Fixes and updates applied with this second minor version improved and extended the main functions, let’s see what’s new.
If you are new to the zypper-upgraderepo plugin, give a look to the previous article to better understand the mission and the basic usage.
Repository check
The first important change is inherent the way to check a valid repository:
- the HTTP request sent is HEAD instead of GET in order to have a more lightweight answer from the server, being the HTML page not included in the packet;
- the request point directly to the repodata.xml file instead of the folder, that because some server security setting could hide the directory listing and send back a 404 error although the repository works properly.
Check just a few repos
Most of the times we want to check the whole repository’s list at once, but sometimes we want to check few of them to see whether or not they are finally available or ready to be upgraded without looping through the whole list again and again. That’s where the –only-repo switch followed by a list of comma-separated numbers comes in help.
All repo by default
The disabled repositories now are shown by default and a new column highlights which of them are enabled or not, keeping their number in sync with the zypper lr
output. To see only the enabled ones just use the switch –only-enabled.
Report view
Beside the table view, the switch –report introduce a new pleasant view using just two columns and spanning the right cell to more rows in order to improve the number of info and the reading quality.
Other changes
The procedure which tries to discover an alternative URL now dives back and forth the directory list in order to explore the whole tree of folders wherever the access is allowed by the server itself. The side effect is a general improvement also in repo downgrade.
The output in upgrade mode is now verbose and shows a table similar to the checking one, giving details about the changed URLs in the details column.
The server timeout error is now handled through the switch –timeout which allows tweaking the time before to consider an error any late answer from the server itself.
Final thoughts and what’s next
This plugin is practically completed, achieving all the goals needed for its main purpose no other relevant changes are scheduled, so I started thinking of other projects to work in my spare time.
Among them, there is one I am interested in: bring the power of openSUSE software search page to the command line.
However, there are some problems:
- This website doesn’t implement any web API so will be a lot of scraping job;
- There are missing packages while switching from the global research (selecting All distribution) to the specific distribution;
- Packages from Packman are not included.
I have already got some ideas to solve them and did lay down several lines of code, so let’s see what happens!