[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#894049: transition: ncurses



On 12/05/18 10:59, Sven Joachim wrote:
> On 2018-05-12 09:46 +0200, Emilio Pozuelo Monfort wrote:
> 
>> On 10/05/18 15:56, Sven Joachim wrote:
>>> On 2018-03-25 21:51 +0200, Sven Joachim wrote:
>>>
>>> This has turned out to be rather suboptimal, because the regexes match
>>> on libncurses5-dev etc, and so some packages are listed as partial or
>>> bad in the tracker[1] which should be good or unaffected.  The ones
>>> below seem to be better, filtering out the -dev packages while still
>>> catching hardcoded dependencies such as #804579.
>>>
>>> title = "libncurses6";
>>> is_affected = .depends ~
>>> /\b(lib32ncurses6|lib32ncursesw6|lib32tinfo6|lib64ncurses6|lib64ncursesw6|lib64tinfo6|libncurses6|libncursesw6|libtinfo6|libtinfo6\-udeb|lib32ncurses5|lib32ncursesw5|lib32tinfo5|lib64ncurses5|lib64tinfo5|libncurses5|libncursesw5|libtinfo5|libtinfo5\-udeb)([^-]|$)/;
>>> is_good = .depends ~
>>> /\b(lib32ncurses6|lib32ncursesw6|lib32tinfo6|lib64ncurses6|lib64ncursesw6|lib64tinfo6|libncurses6|libncursesw6|libtinfo6|libtinfo6\-udeb)\b/;
>>> is_bad = .depends ~
>>> /\b(lib32ncurses5|lib32ncursesw5|lib32tinfo5|lib64ncurses5|lib64tinfo5|libncurses5|libncursesw5|libtinfo5|libtinfo5\-udeb)\b/
>>> & ! .package ~ /\b(libncursesw5|libncurses5)([^-]|$)/;
>>
>> What do you want to achieve with this?
>
> Filter out packages which depend on libncurses5-dev or
> libncursesw5-dev, since changing their dependencies is out of the scope
> for this transition.  For instance, cwidget is listed as "partial" in
> the tracker, and I think this is because libcwidget-dev depends on
> libncursesw5-dev.
> 
> The trailing '$' is there to match cases like logol where there is a
> hardcoded dependency on libncursesw5.

Sorry, I meant with the .package line that I quoted after the question. I should
have made it clearer. The above change makes sense and I committed it to the
transition tracker.

>>   & ! .package ~ /\b(libncursesw5|libncurses5)([^-]|$)/; 
>>
>> I don't think that's doing what you want.
> 
> Indeed not, thanks for checking.  The line below is what I meant.
> 
> is_bad = .depends ~ /\b(lib32ncurses5|lib32ncursesw5|lib32tinfo5|lib64ncurses5|lib64tinfo5|libncurses5|libncursesw5|libtinfo5|libtinfo5\-udeb)([^-]|$)/ & ! .package ~ /\b(libncursesw5|libncurses5)\b/;
> 
> Pardon my ignorance, but this is only the second time in my life where I
> worked^Wstruggled with ben files.  And "ben monitor" only gives a list
> of affected packages, I can't really check what is "good" or "bad" wrt
> the state of the archive. :-(

Maybe my question wasn't clear. Your " ! .package" part of the match is
basically a no-op (unless I'm misremembering the ben syntax). Basically that
full is_bad is doing something like "give me all packages that depend on one of
these, but exclude src:libncursesw5 and src:libncurses5 from the is_bad set.
Since there are no such source packages, that part is basically doing nothing.

Since I don't know what you want to achieve with that, I can't suggest something
that may work. :-)

BTW it's alright, one doesn't have to get a perfect regex on the first attempt,
we all make mistakes.

Cheers,
Emilio


Reply to: