ladybird/Userland/Utilities
Timothy Flynn aad110ec7e base64: Map input files into memory for reading
We do the same thing with the gzip utility for performance.

This reduces the runtime of `./bin/base64 enwik8 >/dev/null` from
0.428s to 0.303s.

This reduces the runtime of `./bin/base64 -d enwik8.base64 >/dev/null`
from 0.632s to 0.469s.

(enwik8 is a 100MB test file from http://mattmahoney.net/dc/enwik8.zip)
2024-03-21 15:53:46 +01:00
..
pkg AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
abench.cpp LibCore+Utilities: Replace ElapsedTimer precise flag with an enum 2024-02-26 16:12:20 -07:00
aconv.cpp aconv: Override encoder in output metadata 2023-08-29 10:43:34 +02:00
adjtime.cpp Utilities: Use lround() instead of casting round() to long 2023-04-22 07:17:08 +02:00
allocate.cpp Utilities/allocate: Modernize the code a bit 2023-07-05 08:34:51 +02:00
aplay.cpp AudioServer+Userland: Decouple client sample rates from device rate 2023-07-01 23:27:24 +01:00
arp.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
asctl.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
base64.cpp base64: Map input files into memory for reading 2024-03-21 15:53:46 +01:00
basename.cpp
beep.cpp Utilities/beep: Restrict possible capabilities 2023-11-03 15:19:33 +01:00
blockdev.cpp blockdev: Use Core::System::open() instead of LibC open() 2023-01-08 15:19:59 +00:00
bt.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
cal.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
cat.cpp AK: Rename Stream::{read,write} to Stream::{read_some,write_some} 2023-03-13 15:16:20 +00:00
checksum.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
chgrp.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
chmod.cpp chmod: Don't bail immediately on error 2023-06-18 20:34:04 +02:00
chown.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
chres.cpp LibGUI: Make Application's construction fallible 2023-05-05 16:41:21 +01:00
cksum.cpp cksum: Use the POSIX cksum algorithm rather than vanilla CRC32 2024-01-18 18:01:26 +03:30
clear.cpp
CMakeLists.txt AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
cmp.cpp AK: Add the Input word to input-only buffered streams 2023-05-09 11:18:46 +02:00
comm.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
config.cpp config: Stop using DeprecatedString 2023-04-22 07:17:08 +02:00
copy.cpp LibGUI: Make Application's construction fallible 2023-05-05 16:41:21 +01:00
cp.cpp cp: Add --interactive/-i flag 2024-02-08 07:11:44 -07:00
cpp-lexer.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
cpp-parser.cpp LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
cpp-preprocessor.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
cut.cpp cut: Add -c,--characters option 2024-02-08 07:20:50 -07:00
date.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
dd.cpp LibCore+Utilities: Replace ElapsedTimer precise flag with an enum 2024-02-26 16:12:20 -07:00
df.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
diff.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2023-07-15 16:21:29 +02:00
dirname.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
disasm.cpp disasm: Allow disassembling just one symbol 2024-01-22 20:54:16 -07:00
disk_benchmark.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
dmesg.cpp LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
drain.cpp Utilities/drain: Add an option to specify different block size 2023-12-12 06:44:10 -05:00
du.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
echo.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
env.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
errno.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
expr.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
false.cpp
fdtdump.cpp LibDeviceTree: Add a simple DeviceTree class 2024-02-24 16:43:44 -07:00
file.cpp LibCore: Replace MIME type description lookup with a more generic method 2024-03-16 08:42:33 +01:00
find.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
flock.cpp Everywhere: Remove unused includes of LibC/stdlib.h 2023-01-02 20:27:20 -05:00
fortune.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
functrace.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
glsl-compiler.cpp Userland: Add glsl-compiler utility that prints parsed AST 2023-08-18 15:29:48 +02:00
gml-format.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
grep.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
gron.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
groupadd.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
groupdel.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
groups.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
gunzip.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
gzip.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
head.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
headless-browser.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
hello-world.jakt
hexdump.cpp Utilities: Replace ctype.h usage with AK/CharacterTypes.h 2023-04-22 07:17:08 +02:00
host.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
hostname.cpp
icc.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
id.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
ifconfig.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
image2bin.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
image.cpp image: Add a --crop option 2024-03-20 13:58:23 +01:00
ini.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
install.cpp LibFileSystem+Userland: Return ByteString from absolute_path() 2024-01-16 08:42:34 +00:00
isobmff.cpp LibGfx: Add initial ISO BMFF parsing and a utility to print file info 2023-07-27 12:02:37 +01:00
jail-attach.cpp Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
jail-create.cpp Kernel: Allow configuring a Jail to not impose PID isolation restriction 2023-04-24 12:15:29 +02:00
js.cpp LibJS: Never give back virtual memory once it belongs to a cell type 2023-12-31 15:35:56 +01:00
json.cpp Everywhere: Add deprecated_ prefix to JsonValue::to_byte_string 2024-01-12 17:41:34 -07:00
kcov-example.cpp Kernel+Userland: Unify declarations for KCOV in Kernel/API/kcov.h 2023-02-24 20:35:45 +01:00
keymap.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
kill.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
killall.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
ldd.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
less.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
listdir.cpp Utilities: Add the listdir utility 2024-01-13 19:01:07 -07:00
ln.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
logout.cpp Userland: Remove a bunch of unveil calls on /sys/kernel/processes 2023-01-13 13:41:30 +01:00
ls.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
lsblk.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
lscpu.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
lsirq.cpp Everywhere: Add deprecated_ prefix to JsonValue::to_byte_string 2024-01-12 17:41:34 -07:00
lsjails.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
lsof.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
lspci.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
lsusb.cpp Everywhere: Prefer {:#x} over 0x{:x} in format strings 2024-02-21 17:54:38 +01:00
lzcat.cpp AK: Add the Input word to input-only buffered streams 2023-05-09 11:18:46 +02:00
man.cpp Utilities: Fix title formatting in man 2023-08-12 01:50:49 +02:00
markdown-check.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
matroska.cpp LibVideo: Replace DeprecatedFlyString with FlyString 2024-01-14 15:00:13 -07:00
md.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
memstat.cpp Utilities: Add the memstat utility 2023-07-05 08:34:51 +02:00
mkdir.cpp mkdir: Add -v option to print a message for each created directory 2023-06-22 22:35:30 +02:00
mkfifo.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
mkfs.fat.cpp mkfs.fat: Add support for autodetecting FAT type based on file size 2024-02-26 13:26:47 -07:00
mknod.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
mktemp.cpp mktemp: Ensure --tmpdir and template paths are concatenated correctly 2024-02-24 15:57:14 -07:00
mount.cpp Userland/mount: Fix srcobfuscate => srchidden when printing mounts 2024-03-14 18:18:39 -06:00
mv.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
nc.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
netstat.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
network-settings.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
nl.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
nohup.cpp nohup: Use return code 127 for errors caught by serenity_main() 2024-01-19 12:16:56 -07:00
nologin.cpp LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
notify.cpp Userland: Prefer non-fallible construction for LibGUI objects 2023-09-18 18:00:45 +02:00
nproc.cpp LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
ntpquery.cpp ntpquery: Use AK::convert_between_host_and_network_endian 2024-02-06 04:37:47 -07:00
open.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
passwd.cpp passwd: Use StringView instead of DeprecatedString 2023-01-08 17:10:53 +01:00
paste.cpp Utilities: Use Core::Environment instead of Core::System::*env() 2024-02-27 08:33:48 +00:00
patch.cpp patch+LibDiff: Add support for applying patches with preprocessor macro 2024-03-03 08:56:00 +01:00
pathchk.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
pdf.cpp pdf: Honor page rotation 2024-02-27 07:02:02 +01:00
pgrep.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
pidof.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
ping.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
pixelflut.cpp pixelflut: Implement alternative flooding strategies 2024-01-12 16:10:28 -07:00
pkill.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
pledge.cpp Utilities: Use Core::Environment instead of Core::System::*env() 2024-02-27 08:33:48 +00:00
pls.cpp
pmap.cpp Everywhere: Add deprecated_ prefix to JsonValue::to_byte_string 2024-01-12 17:41:34 -07:00
pmemdump.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
printf.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
pro.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
profile.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
ps.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
purge.cpp
pwd.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
readelf.cpp LibELF+readelf: Add support for RISC-V dynamic relocation types 2024-02-24 16:05:50 -07:00
readlink.cpp readlink: Prefer FileSystem::readlink over DeprecatedFile 2023-05-15 06:50:43 +02:00
realpath.cpp realpath: Add the -q option to suppress error messages 2023-10-02 20:56:38 +02:00
reboot.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
rev.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
rm.cpp Everywhere: Use LibFileSystem where trivial 2023-03-21 19:03:21 +00:00
rmdir.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
route.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
run-tests.cpp Utilities: Use Core::Environment instead of Core::System::*env() 2024-02-27 08:33:48 +00:00
sed.cpp Userland+Tests: Remove unused <AK/Tuple.h> includes 2024-03-01 14:05:53 -07:00
seq.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
shot.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
shuf.cpp shuf: Add -r option to allow output lines to be repeated 2023-05-18 21:06:37 -06:00
shutdown.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
sleep.cpp
slugify.cpp Utilities: Implement slugify using AK/Slugify 2023-10-30 10:39:59 +00:00
sort.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
sql.cpp Ladybird+Userland: Use ByteString for candidate server paths 2024-02-26 13:16:27 -07:00
stat.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
strace.cpp strace: Add support for pretty-printing the prctl syscall 2024-03-02 09:10:14 +01:00
strings.cpp Utilities: Use new ArgsParser method for enum values 2023-09-24 23:41:22 +02:00
stty.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
su.cpp Utilities: Use Core::Environment instead of Core::System::*env() 2024-02-27 08:33:48 +00:00
sync.cpp
syscall.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
sysctl.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
tac.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
tail.cpp tail: Collapse repeated error handling into statement expression 2024-02-24 15:48:36 -07:00
tar.cpp tar: Remove unnecessary conversions to String 2024-01-29 23:14:39 +00:00
tee.cpp
telws.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
test_env.cpp
test-bindtodevice.cpp
test-fuzz.cpp Fuzzers: Add JBIG2 fuzzer 2024-03-09 16:01:22 +01:00
test-imap.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
test-jpeg-roundtrip.cpp test-jpeg-roundtrip: Add a few more colors 2024-01-14 11:35:40 +00:00
test-pthread.cpp test-pthread: Check for correct return value from sem_trywait() 2023-05-13 17:05:59 +02:00
test-unveil.cpp Userland+AK: Stop using getopt() for ArgsParser 2023-02-28 15:52:24 +03:30
test.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
timezone.cpp LibTimeZone+Userland: Include Link entries when returning all time zones 2023-10-05 17:01:02 +02:00
top.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
touch.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
tr.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
traceroute.cpp LibCore+Utilities: Replace ElapsedTimer precise flag with an enum 2024-02-26 16:12:20 -07:00
tree.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
true.cpp
truncate.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
tsort.cpp Everywhere: Prefer VERIFY over assert() 2024-02-05 07:03:53 -05:00
tt.cpp LibCore+Everywhere: Remove ArgsParser::add*(char const*&) 2023-03-01 10:47:19 +01:00
ttfdisasm.cpp LibGfx+Utilities: Add helpers to load vector fonts from Core::Resources 2023-10-29 13:12:28 -06:00
tty.cpp
umount.cpp
uname.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
uniq.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
unveil.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
unzip.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
update-cpp-test-results.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
uptime.cpp uptime: Add -s/--since option to output only when the system came online 2024-01-25 09:07:32 +01:00
useradd.cpp useradd: Don't crash on -m if directory already exists 2024-02-23 09:52:08 +01:00
userdel.cpp Kernel+Userland: Ensure proper unveil permissions before using rm/rmdir 2023-06-02 17:53:55 +02:00
usermod.cpp Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
utmpupdate.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
w.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
wallpaper.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
wasm.cpp wasm: Make --arg use a more useful value format 2024-02-18 23:50:50 +01:00
watch.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
wc.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
which.cpp LibFileSystem+Everything: Remove resolve_executable_from_environment 2023-06-06 23:46:36 +02:00
whoami.cpp
wsctl.cpp LibGUI: Make Application's construction fallible 2023-05-05 16:41:21 +01:00
xargs.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
xml.cpp AK+LibURL: Move AK::URL into a new URL library 2024-03-18 14:06:28 -04:00
xxd.cpp Everywhere: Prefer {:#x} over 0x{:x} in format strings 2024-02-21 17:54:38 +01:00
xzcat.cpp AK: Add the Input word to input-only buffered streams 2023-05-09 11:18:46 +02:00
yes.cpp LibCore+Everywhere: Remove ArgsParser::add*(char const*&) 2023-03-01 10:47:19 +01:00
zip.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30