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

Re: apt 2.0 release notes

On Sat, Mar 07, 2020 at 09:41:44PM +0100, Julian Andres Klode wrote:
> ### Incompatibilities
> * The apt(8) command no longer accepts regular expressions or wildcards as
>   package arguments, use patterns (see New Features).

Correction - regular expressions starting in ^ or ending in $ (that is,
anchored) are still being accepted. We know there are multiple scripts
out there using those, and they are safe to handle.

After evaluating feedback, we'll soon be reinstating wildcards using
* as well, but no other special characters from glob(7), as most of those
seem pointless in our context, and limiting our exposure to * makes it
easier to reason about.

So syntax overview for package arguments:

^foo		Regular expression
foo$		Regular expression
foo*		Wildcard (* may appear anywhere, and multiple times)
~foo		Pattern
?foo		Pattern
task^		Task

Error reporting might still be a bit odd. Also we do not support
top-level patterns not starting with = or ~ yet, such as !~napt, because
identifying what constitutes a pattern and nicely falling back to
other forms is a bit hard. Wrap such patterns in an ?and or ?or,
or use ?not instead of ! at the start of a pattern, e.g.

Good: ?not(~napt), ?and(!~napt)
Bad: !~napt

We hope to get this fixed eventually.

Thanks everyone.
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer                              i speak de, en

Reply to: