Releases: vincentdephily/emlop
Releases Β· vincentdephily/emlop
0.8.0
0.8.0 2025-02-13
Feature release: Binary merges, package moves, emerge arguments, process tree, and other goodies.
New features
log
,stats
andpredict
now take binary merges into account- Track merge time stats separately
- Display bin merges in a different color
- The
unknown
config has been split intounknownc
(compiled) andunknownb
(binary)
stats
andpredict
now follow package moves- Merge time predictions remain correct after a rename like
sys-devel/llvm
->llvm-core/llvm
Stats
are aggregated using the latest name
- Merge time predictions remain correct after a rename like
log
andstat
can now show emerge (r)runs- Use
--show=r
/-sr
/-sa
to enable it - No duration given, as
emerge.log
doesn't provide enough info to make this reliable
- Use
--from
and--to
now accept more values- New
command
keyword resolves to the time of the nth emerge command
(-fc
is roughly equivalent to qlop's--lastmerge
) - A single span (
day
/y
/command
/etc) without a count now means that span with a count of 1
(so-fd
is equivalent to-f1d
)
- New
predict
now displays emerge proces tree instead of just top proces- Behavior configurable with
--pdepth
/-D
/--pwidth
/-W
- Format is a bit nicer and more colorful
--show=e
renamed--show=r
(running emerge processes) for consistency
- Behavior configurable with
- Optionaly display number of skipped rows (
--first
/--last
/--pdepth
), enable with--showskip
- Colors are now configurable, to match your terminal's theme
- Eg
theme = "count:0 duration:1;3;37"
inemlop.toml
displays counts unstyled and durations in
bright italic white. - Possible keys are
merge
,binmerge
,unmerge
,sync
,duration
,qmark
, andskip
- Cli
--theme
flag also available - Only Ansi SGR sequences
are supported
- Eg
Bug fixes
- Don't display child emerge processes as root ones
- Fix off by one upper bound for some cli args
- Allow alignment of wider columns
- Fix bright/dim terminal colors for stats counts
0.7.0
0.7.0 2024-03-04
Feature release: Multi-term search, config file, and many goodies
New features
- Support searching by multiple terms
- eg
emlop s -e gcc clang llvm rust
- eg
- Support configuration file
- Located at
~/.config/emlop.toml
, or whereever$EMLOP_CONFIG
says - Example file added to repo, should be installed alongside emlop docs
- All available config options correspond to a cli arg, which takes precedance
- Located at
- Support reading gzip-compressed
emerge.log.gz
file - Autodetect
tmpdir
using currently running emerge processes - Assume unknown packages take 10s (overridable with
--unknown
) to compile instead of 0
Interface changes
- Support multiple
--tmpdir
arguments --tabs
has been renamed--output=tab/columns/auto
(or-ot
for short)- Default output is now
columns
on tty andtab
otherwise, to simplifyemlop ...|cut -f...
workflow
- Default output is now
- Added
--resume=either
variant to resume either main or backup list- Passing
--resume
without argument is now the same as--resume either
- Default value remains
auto
(use main list if currently emerging)
- Passing
--color
variants renamed to(y)es
,(n)o
,(t)ty
- Improved inline help and error messages
- Upgraded argument parser dependency
- We now do our own parsing and error rendering for many args
- Color scheme, style, and texts updated
Bug fixes and misc
- Fixed column width when
--last
is used - Fixed noticing a failed/interruped merge when the emerge proces keeps going
- Ignore a performance-sensitive test during emerge
- Display elapsed time also while compiling an unknown package
- Raised MSRV to 1.71
0.6.1
Maintenance release
- Refactored tests to avoid deadlock when testing via portage
- As a bonus, tests finish much faster
- Reduced packaged crate size by compressing image and removing unwanted files
- Routine deps update
0.6.0
0.6.0
Feature release: Improved predict
command and accuracy, filter sync events, new output options,
and more.
Main changes
predict
command now reads portage's merge resume listemlop p
behaves the same asemerge -rOp|emlop p
if a merge is currently running- Including geting confused when you have multiple emerge commands running
- You can still pipe any
emerge -p
command intoemlop p
- See
--resume
to tweak the behavior
predict
command now displays the current build phase and last log line of ongoing builds- This usually requires root permissions
list/stat
search now also applies to sync repos, egemlop l -ss guru
- Improved
stats
layout- Group by section (syncs/packages/total) before grouping by date
- Each section has its specific headers and colum count
- Display at most 3 sections (tables), separated by a newline
- Added
--show
option topredict
, like in other subcommands - Added
--first/-N/--last/-n
options to limit output - Added
--tabs
option for more machine-readable output - Added
--avg=mean/median/weighted
option to tweak predictionsmean
is the original behaviourmedian
is the new default, it's more resilient against noisy dataweighted-{arith,median}
gives more importance to recent values
- Added
--starttime
option to show merge start instead of merge end - Moved
--show h
option value to a dedicated--headers
/-H
flag- Fixes surprising behavior when only
h
was specified - More discoverable
- Fixes surprising behavior when only
- Added
accuracy
subcommand to evaluate prediction accuracy- Mostly a development tool, but you might find it useful
And also
- Long args like
--duration
can now be abbreviated --color
is now an alias of--color=always
- Bash completion no longer wrongly suggests
-V
/--version
for subcommands - Exit code on error changed to
1
for empty results and2
for plain errors - Various performance improvements
- Now clearly faster than
qlop
in all cases
- Now clearly faster than
- Improved and reorganized inline help
- Use asciinema recordings in readme
- Internal stuff
- Increased MSRV to 1.65
- Updated github CI actions
- Upgraded
clap
(triggered a lot of this release's improvements) - Recover from process listing errors
- Various refactorings
- Removed unmaintained
ansi_term
andsysconfig
- New/improved benchmark tools