aboutsummaryrefslogtreecommitdiff
blob: 86a9e84b2850cc0f8c1d78a3b6f8e34fcab3b2ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Common
- unify match behavior:
	- default \*foo\*
	- -e foo
	- -r (-R ?) regexp foo.\*
- make default -e for apps like quse/qdepends/qlist?
- env vars only get expanded once, so this fails:<br>
  `ACCEPT_LICENSE="foo"`<br>
  `ACCEPT_LICENSE="${ACCEPT_LICENSE} bar"`<br>
  we end up getting just:<br>
  `ACCEPT_LICENSE=" bar"`
- tree\_get\_atoms should return atoms iso string set, needs a rewrite
  to use foreach\_pkg and get\_atom -- set is ready for storing objects
  now
- parse package.accept\_keywords such that we can provide the latest
  "available" version like Portage
- check timestamps in libq/tree for choosing which method to take:
	- ignore Packages when it is older than the last directory change
	- ignore metadata when ebuild is modified
	- add some method to skip these checks and assume everything is right
- add interface to retrieve a list/set of atoms from a tree
  - pkg\_ctx for each found match, NULL otherwise
  - more efficient than traversing the entire tree every time (scandir
    or parsing Packages)
  - cached, such that repeated matches for the same thing are served off
    the cache (set), as frequently happens in dependency calculations
  - tree\_{open,close}\_cat can be made static afterwards
- make tree\_get\_metadata also retrieve maintainer type, such that
  qlist can query for maintainer email or type, ideally to do
  qlist -Iv $(portageq --repo gentoo --orphaned) in one step (bug 711466#c3)

# tests
- add test for qsearch to avoid repetitions like
  https://bugs.gentoo.org/701470

# qmerge
- dep resolver needs spanktastic love.
- needs safe deleting (merge in place rather than unmerge;merge)
- multiple binary repos (talk to zmedico)
- handle compressed Packages file (talk to zmedico)
- handle binary Packages file (talk to zmedico)
- gpg sign the packages file (before compression)
- binary vdb (sqlite) ... talk to zmedico
- remote vdb
- parallel fetch tbz2s
- check order of pkg\_{pre,post}{inst,rm} during install, unmerge, and upgrade
- env is not saved/restored between pkg\_{pre,post}inst (see portage and REPO\_LAYOUT\_CONF\_WARN)
- support installing via path to tbz2 package
- support TTL field in binpkgs file
- merge duplicate atoms on the CLI (`qmerge -Uq nano nano nano`)
- unmerging should clean out @world set
- fixup lame misnaming of force\_download (--fetch/--force) actually
  not-forcing things
- use xpak.h instead of shelling out to qxpak binary

# qdepends
- -v should lookup whether packages are installed for || cases/colouring

# qpkg
- add a verbose output that describes why a package is cleaned
	- newer binpkgs available
	- newer installed version available
- integrate qxpak and qtbz2 with this package (the latter are confusing,
  and qpkg is doing parts of qtbz2's compose
- share install\_mask code from qmerge to handle negatives from
  pkg\_install\_mask too

# qgrep
- make it use standard xarray instead of its own buf\_list

# quse
- make -v only print requested USE-flag when flags given
- list each package only once (e.g. quse -e lz4)

# qkeyword
- drop -c argument? it can be fully expressed using -p cat/
- add mode to list which packages needs to be keyworded (deps), talk to
  Kent Fredric on details, 20191229000543.001631d9@katipo2.lan
  Re: [gentoo-dev] Keywordreqs and slacking arch team

# qmanifest
- use openat in most places
- parse timestamps and print in local timezone
- implement python module for gemato interface (to use with Portage)

# qlop
- guestimate runtime based on best-matching pkg (e.g. with gcc)
- calculate or take some "smooth" factor just added on top of the
  guestimate alternative to current time jumping
- multiple files support -- current opinion: don't do it
- compressed file support, use guessing support from qmerge?

# qfile
- stop searching when absolute path argument was found?