When clearing the filter state, don't disable filtering entirely if we
have a ref filter present. Otherwise, it won't be invoked again
until the next time a typeahead filter is engaged.
There's now a Command class that must be derived and registered with
a CommandManager, all simplified by a REGISTER_COMMAND macro. That gets
rid of the print_command_usage_and_exit() function copy for every
command, moves the short usage texts to the command implementations,
and avoids any repetition of the command name. When implementing a new
command only a new source file needs to be created, nothing else needs
to be touched.
* It no longer consists of a BPackageResolvableExpression and a
repository. Instead it can now either refer to a package directly or
consist of a search string.
* SolverPackageSpecifierList: Add AppendSpecifier() convenience
versions.
* Adjust LibsolvSolver and pkgman accordingly.
BUnicodeChar::ToUTF8() had the same regression as ::FromUTF8() as far as
not advancing the input string pointer, which broke building
case-insensitive queries.
* BSolver/LibsolvSolver:
* Add B_FIND_IN_NAME and make searching in the names explicit.
* Add B_FIND_IN_PROVIDES to search the packages' provides list.
* pkgman: Also search in provides.
In the Terminal data model every full width character occupies two cells
in the data buffers. The second cell of such characters is not drawn and
used mainly to differentiate between full width and half width
characters.
Proposed fix zeroes the attributes of the second cell in the
HistoryBuffer::GetTerminalLineAt() that prevents the potential endless
loops in the BasicTerminalBuffer::_ResizeRedraw(). Those loops were
result of the random attributes in full width character's second cells.
* libsupc++ wasn't required, the build failed on x86_64.
* PPL: --disable-maintainer-mode configure option seems not enough to avoid an autoconf launch.
Solved by redefined AUTOCONF AUTOHEADER ACLOCAL AUTOMAKE variables to the noop command "true".
* _Init() was a bit too enthusiastic, throwing really everything away.
So, after calling it at the beginning of _AddRepositories() there
wouldn't be any repositories anymore.
* Rename _Init() to _InitPool() to make its purpose clearer.
* Pull a _CleanupPool() out of _Cleanup() that only deletes the pool
and anything depending on it.
* RepositoryInfo::HasChanged(): Always consider changed when there's no
libsolv repo yet.
Currently there are two generators. The fast one is the same one the scheduler
is using. The standard one is the same algorithm libroot's rand() uses. Should
there be a need for more cryptographically PRNG MD4 or MD5 might be a good
candidates.
* daemon: Implement private message protocol to retrieve the active
packages.
* BPackageRoster::GetActivePackages(): Get the active packages list
from the daemon.
I fear that perhaps the fBarView variable may be accessed before it has a
chance to be set in AttachedToWindow(). By setting it in the constructor there
is no chance of this. Might fix #9656
- Fix regression introduced in hrev45462: BUnicodeChar::FromUTF8 was no
longer advancing the passed in string pointer, resulting in endless
loops in functions relying on that behavior such as the locale kit's
CoerceFormatTo*() functions.
Volume::_AddInitialPackagesFromDirectory(): Use openat() instead of
dup() to get a FD for the packages directory. Currently our fdopendir()
implementation doesn't use it directly anyway, but in theory it could
and would then change the state of the original FD.
If the file exists load only the packages specified in it. If it doesn't
exist or any kind of error occurs, fall back to loading all packages in
the packages directory.
This address specification is actually not needed since PIC images can be
located anywhere. Only their size is restriced but that is the compiler and
linker concern. Thanks to Alex Smith for pointing that out.
* PPL: make could run autoconf in certain conditions, thus generating artefacts
in the source tree. Added --disable-maintainer-mode when launching
configure to avoid this situation.
* cleanup: there are no info files in CLooG and PPL.
Dumps the result (i.e. found problems and solutions) to the syslog.
Eventually the user should be asked what to do when inconsistencies are
encountered.