Mailinglist Archive: opensuse-buildservice (105 mails)

< Previous Next >
Re: [opensuse-buildservice] local check for if the "Requires" statements are correct?

Gregor,

when I am doing an osc build locally all packages that are specified in the "BuildRequires" tags are installed in a isolated environment.

Quite.

Is the same possible for packages (including their versions) needed at runtime, i.e. specified by the "Requires" tags?

Needed? Or wanted? If your software will not work at runtime without a specific version of the library or other package on which your software depends, then yes, it is not only possible, but advisable.

My goal is to run some unit tests of packaged software to ensure the Requires dependencies are specified correctly without having to test it on a separate test machine.

Perhaps I do not understand your question quite correctly, but, here's my summary:

Guaranteeing correct package versions at runtime is exactly what
the 'Requires' tag accomplishes for you.

Are you asking about the syntax of the Requires tag? Here are some examples for a piece of software which would (respectively) require any version of frobnitz, or any version newer than 1.2.0 or a dependency requiring exactly frobnitz-1.1.7 [0].

Requires: frobnitz
Requires: frobnitz >= 1.2.0
Requires: frobnitz = 1.1.7

And, even in the OBS software:

Requires: obs-api = %{version}-%{release}

-Martin

N.B. If I understood you correctly, then this is an RPM question, not so much an OBS question.

[0] Bad technique. Do not resort to Requires: frobnitz = 1.1.17
unless you have no other choice. This is tough on software
consumers and they may go away.

--
Martin A. Brown
http://linux-ip.net/
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-buildservice+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups
References