]> begriffs open source - libderp/log
libderp
5 months agoWIP: Meson conversion v1.1.1
Joe Nelson [Sun, 20 Jul 2025 05:00:00 +0000 (00:00 -0500)]
WIP: Meson conversion

3 years agov1.1 v1.1.0
Joe Nelson [Sat, 26 Nov 2022 21:19:56 +0000 (15:19 -0600)]
v1.1

3 years agoAllow allocator customization at runtime
Joe Nelson [Mon, 21 Nov 2022 22:27:49 +0000 (16:27 -0600)]
Allow allocator customization at runtime

Also leak checking in tests with Boehm GC if available

3 years agov1.0 v1.0.0
Joe Nelson [Sun, 13 Nov 2022 20:01:09 +0000 (14:01 -0600)]
v1.0

3 years agoBuild static library without PIC
Joe Nelson [Sat, 3 Sep 2022 01:11:30 +0000 (20:11 -0500)]
Build static library without PIC

Also use debug symbols on all builds

Also allow cross-compiles

3 years agoRevert dev makefile to assume fancy clang features
Joe Nelson [Fri, 2 Sep 2022 23:59:48 +0000 (18:59 -0500)]
Revert dev makefile to assume fancy clang features

You can build for release on any platform

4 years agobump version v0.1.0
Joe Nelson [Sun, 28 Nov 2021 16:48:37 +0000 (10:48 -0600)]
bump version

4 years agoHandy wrappers for std lib functions
Joe Nelson [Wed, 24 Nov 2021 19:03:38 +0000 (13:03 -0600)]
Handy wrappers for std lib functions

4 years agoFix conformance with C99 7.1.3
Joe Nelson [Mon, 14 Jun 2021 02:38:57 +0000 (21:38 -0500)]
Fix conformance with C99 7.1.3

Not even static functions are allowed to start with underscore.

Thanks to Reddit user oj002 for pointing this out.

4 years agoFix tab/space mix
Joe Nelson [Mon, 14 Jun 2021 02:15:40 +0000 (21:15 -0500)]
Fix tab/space mix

4 years agoUpdate readme for new link process
Joe Nelson [Sun, 13 Jun 2021 21:18:18 +0000 (16:18 -0500)]
Update readme for new link process

4 years agoProvide pkg-config file for static linking
Joe Nelson [Sun, 13 Jun 2021 19:56:00 +0000 (14:56 -0500)]
Provide pkg-config file for static linking

The --static flag for pkg-config doesn't suffice, it merely includes
private libraries to be linked.

4 years agoUse relative path for library symlinks
Joe Nelson [Sun, 13 Jun 2021 19:55:34 +0000 (14:55 -0500)]
Use relative path for library symlinks

4 years agoSplit dev/use installers
Joe Nelson [Sun, 13 Jun 2021 16:41:46 +0000 (11:41 -0500)]
Split dev/use installers

Improve versioning too

4 years agoUpdate readme with linking instructions
Joe Nelson [Tue, 1 Jun 2021 03:00:43 +0000 (22:00 -0500)]
Update readme with linking instructions

4 years agoLibrary path is versioned, so SONAME needn't be
Joe Nelson [Tue, 1 Jun 2021 01:56:36 +0000 (20:56 -0500)]
Library path is versioned, so SONAME needn't be

4 years agoLibrary version stored in one place
Joe Nelson [Tue, 1 Jun 2021 01:51:49 +0000 (20:51 -0500)]
Library version stored in one place

4 years agoMore linker changes between Mac and Unix
Joe Nelson [Mon, 31 May 2021 19:19:52 +0000 (14:19 -0500)]
More linker changes between Mac and Unix

4 years agoSet rpath in linked binaries
Joe Nelson [Mon, 31 May 2021 16:41:22 +0000 (11:41 -0500)]
Set rpath in linked binaries

4 years agoShellcheck warnings
Joe Nelson [Sun, 30 May 2021 19:10:55 +0000 (14:10 -0500)]
Shellcheck warnings

4 years agoUse sed rather than m4 for rhel portability
Joe Nelson [Sun, 30 May 2021 19:06:31 +0000 (14:06 -0500)]
Use sed rather than m4 for rhel portability

4 years agoRevert version slip
Joe Nelson [Sun, 30 May 2021 18:16:19 +0000 (13:16 -0500)]
Revert version slip

4 years agoRemove relative path from Mach-O dylib
Joe Nelson [Sun, 30 May 2021 18:15:41 +0000 (13:15 -0500)]
Remove relative path from Mach-O dylib

4 years agoWIP: installer
Joe Nelson [Sun, 30 May 2021 03:45:09 +0000 (22:45 -0500)]
WIP: installer

4 years agoNamespace header filenames
Joe Nelson [Sun, 30 May 2021 02:16:18 +0000 (21:16 -0500)]
Namespace header filenames

4 years agoRemove gcda during tests, not as part of make
Joe Nelson [Fri, 21 May 2021 02:40:39 +0000 (21:40 -0500)]
Remove gcda during tests, not as part of make

It was hacky and nonportable in the makefile

4 years agoIn-order treemap iterator
Joe Nelson [Wed, 19 May 2021 04:46:15 +0000 (23:46 -0500)]
In-order treemap iterator

4 years agoDon't skip the first hashmap bucket
Joe Nelson [Wed, 19 May 2021 04:45:34 +0000 (23:45 -0500)]
Don't skip the first hashmap bucket

4 years agoHide internals of hm_iter
Joe Nelson [Tue, 18 May 2021 02:35:15 +0000 (21:35 -0500)]
Hide internals of hm_iter

4 years agoAdequate treemap test coverage
Joe Nelson [Sat, 15 May 2021 21:47:03 +0000 (16:47 -0500)]
Adequate treemap test coverage

4 years agoFix memory leak
Joe Nelson [Thu, 13 May 2021 03:48:38 +0000 (22:48 -0500)]
Fix memory leak

4 years agoTreemap tests pass, but memory is leaking
Joe Nelson [Thu, 13 May 2021 03:25:43 +0000 (22:25 -0500)]
Treemap tests pass, but memory is leaking

4 years agoWIP: tm_remove()
Joe Nelson [Wed, 12 May 2021 02:39:00 +0000 (21:39 -0500)]
WIP: tm_remove()

4 years agoWIP: AA tree
Joe Nelson [Mon, 10 May 2021 03:02:36 +0000 (22:02 -0500)]
WIP: AA tree

Because RB trees are gross

4 years agoWIP: treemap
Joe Nelson [Sat, 8 May 2021 19:33:30 +0000 (14:33 -0500)]
WIP: treemap

Red black tree

4 years agoBe sure iterator gets nothing on empty hash
Joe Nelson [Mon, 3 May 2021 02:17:48 +0000 (21:17 -0500)]
Be sure iterator gets nothing on empty hash

4 years agoHashmap iterator
Joe Nelson [Mon, 3 May 2021 01:49:05 +0000 (20:49 -0500)]
Hashmap iterator

4 years agoCleaner return logic
Joe Nelson [Sun, 2 May 2021 18:59:00 +0000 (13:59 -0500)]
Cleaner return logic

4 years agoPIC libs need PIC objs
Joe Nelson [Sun, 2 May 2021 02:52:12 +0000 (21:52 -0500)]
PIC libs need PIC objs

4 years agoGenerate .a/.so
Joe Nelson [Sun, 2 May 2021 02:26:45 +0000 (21:26 -0500)]
Generate .a/.so

4 years agoAdequate hashmap test coverage
Joe Nelson [Sun, 2 May 2021 02:04:11 +0000 (21:04 -0500)]
Adequate hashmap test coverage

4 years agoAdequate list test coverage
Joe Nelson [Sat, 1 May 2021 18:38:30 +0000 (13:38 -0500)]
Adequate list test coverage

4 years agoAdequate vector test coverage
Joe Nelson [Sat, 1 May 2021 16:19:20 +0000 (11:19 -0500)]
Adequate vector test coverage

4 years agoAllow multiple ASAN_OPTIONS in test scripts
Joe Nelson [Sat, 1 May 2021 15:50:17 +0000 (10:50 -0500)]
Allow multiple ASAN_OPTIONS in test scripts

4 years agoExercise changing vector capacity
Joe Nelson [Sat, 1 May 2021 15:44:19 +0000 (10:44 -0500)]
Exercise changing vector capacity

4 years agoClean profiling data on rebuild
Joe Nelson [Fri, 30 Apr 2021 18:46:29 +0000 (13:46 -0500)]
Clean profiling data on rebuild

Prevents the error message, "Cannot merge previous GCDA file: mismatched
number of counters"

4 years agoFix realloc logic
Joe Nelson [Fri, 30 Apr 2021 17:40:58 +0000 (12:40 -0500)]
Fix realloc logic

4 years agoScript to show test coverage
Joe Nelson [Wed, 28 Apr 2021 04:24:42 +0000 (23:24 -0500)]
Script to show test coverage

4 years agoGenerate code coverage properly
Joe Nelson [Tue, 27 Apr 2021 03:29:02 +0000 (22:29 -0500)]
Generate code coverage properly

4 years agoAdd dep on common.h
Joe Nelson [Sun, 25 Apr 2021 21:23:54 +0000 (16:23 -0500)]
Add dep on common.h

4 years agoReadme
Joe Nelson [Sun, 25 Apr 2021 21:19:42 +0000 (16:19 -0500)]
Readme

4 years agoMatch numeric types
Joe Nelson [Sun, 25 Apr 2021 19:13:19 +0000 (14:13 -0500)]
Match numeric types

4 years agoClean includes
Joe Nelson [Sun, 25 Apr 2021 19:11:59 +0000 (14:11 -0500)]
Clean includes

4 years agoMore leak tests
Joe Nelson [Sun, 25 Apr 2021 19:00:14 +0000 (14:00 -0500)]
More leak tests

4 years agoDisable slower part of list CHECK
Joe Nelson [Sun, 25 Apr 2021 18:45:03 +0000 (13:45 -0500)]
Disable slower part of list CHECK

4 years agoSmall fixes
Joe Nelson [Sun, 25 Apr 2021 18:41:39 +0000 (13:41 -0500)]
Small fixes

4 years agoFix memory leaks
Joe Nelson [Sun, 25 Apr 2021 18:31:45 +0000 (13:31 -0500)]
Fix memory leaks

4 years agoHore hashmap tests
Joe Nelson [Sat, 24 Apr 2021 18:49:20 +0000 (13:49 -0500)]
Hore hashmap tests

4 years agoMove macro
Joe Nelson [Sat, 24 Apr 2021 17:54:14 +0000 (12:54 -0500)]
Move macro

4 years agoPreliminary hashmap test passing
Joe Nelson [Sat, 24 Apr 2021 17:54:06 +0000 (12:54 -0500)]
Preliminary hashmap test passing

4 years agoSimplify quicksort
Joe Nelson [Sat, 24 Apr 2021 04:22:01 +0000 (23:22 -0500)]
Simplify quicksort

4 years agoWIP: quicksort
Joe Nelson [Sat, 24 Apr 2021 03:15:41 +0000 (22:15 -0500)]
WIP: quicksort

4 years agoWIP: pass auxiliary arg to comparator
Joe Nelson [Sat, 24 Apr 2021 01:45:24 +0000 (20:45 -0500)]
WIP: pass auxiliary arg to comparator

4 years agoWIP: hashmap with memory leaks
Joe Nelson [Sun, 18 Apr 2021 02:45:31 +0000 (21:45 -0500)]
WIP: hashmap with memory leaks

4 years agoTest v_reserve_capacity properly
Joe Nelson [Sat, 17 Apr 2021 03:10:12 +0000 (22:10 -0500)]
Test v_reserve_capacity properly

It fails by not reserving enough, not by necessarily returning zero.

4 years agoList find
Joe Nelson [Sat, 17 Apr 2021 03:07:47 +0000 (22:07 -0500)]
List find

4 years agoMore tests
Joe Nelson [Sat, 17 Apr 2021 02:08:43 +0000 (21:08 -0500)]
More tests

4 years agoList sorting and more
Joe Nelson [Fri, 16 Apr 2021 22:48:33 +0000 (17:48 -0500)]
List sorting and more

4 years agoHide vector internals
Joe Nelson [Fri, 16 Apr 2021 22:47:50 +0000 (17:47 -0500)]
Hide vector internals

4 years agoMore logic for removing/clearing
Joe Nelson [Sat, 10 Apr 2021 04:57:29 +0000 (23:57 -0500)]
More logic for removing/clearing

4 years agoInitial list stuff
Joe Nelson [Mon, 5 Apr 2021 03:47:17 +0000 (22:47 -0500)]
Initial list stuff

4 years agoBe less prissy about NULL
Joe Nelson [Mon, 5 Apr 2021 02:19:46 +0000 (21:19 -0500)]
Be less prissy about NULL

4 years agoStart list stuff
Joe Nelson [Sun, 4 Apr 2021 18:43:08 +0000 (13:43 -0500)]
Start list stuff

4 years agoShave off another case
Joe Nelson [Sun, 4 Apr 2021 00:47:01 +0000 (19:47 -0500)]
Shave off another case

4 years agov_reverse
Joe Nelson [Sat, 3 Apr 2021 18:54:52 +0000 (13:54 -0500)]
v_reverse

4 years agoRename conflicting "test" target in Makefile
Joe Nelson [Sat, 27 Mar 2021 18:06:49 +0000 (13:06 -0500)]
Rename conflicting "test" target in Makefile

POSIX Make doesn't allow me to mark test as .PHONY, and there's a
directory with that name which would confuse the freshness check.

4 years agoRemove phony clean target in Makefile
Joe Nelson [Sat, 27 Mar 2021 18:03:41 +0000 (13:03 -0500)]
Remove phony clean target in Makefile

Shouldn't ever need to clean when Make knows the full set of
dependencies for each build variant.

4 years agoRemove binaries that snuck in
Joe Nelson [Sat, 27 Mar 2021 17:59:55 +0000 (12:59 -0500)]
Remove binaries that snuck in

See, the derp is already strong

4 years agoScript to run test suite
Joe Nelson [Sat, 27 Mar 2021 17:55:51 +0000 (12:55 -0500)]
Script to run test suite

4 years agoTests aren't relevant in release variant
Joe Nelson [Sat, 27 Mar 2021 17:00:58 +0000 (12:00 -0500)]
Tests aren't relevant in release variant

NDEBUG prevents the assertions from doing anything. So the default
make target is now "lib" and doesn't include tests.

4 years agoLet's be real
Joe Nelson [Sat, 27 Mar 2021 16:59:55 +0000 (11:59 -0500)]
Let's be real

4 years agoSome tests
Joe Nelson [Sat, 27 Mar 2021 04:56:19 +0000 (23:56 -0500)]
Some tests

4 years agoSome missing null checks
Joe Nelson [Fri, 26 Mar 2021 03:45:32 +0000 (22:45 -0500)]
Some missing null checks

4 years agoSet errno uniformly
Joe Nelson [Fri, 26 Mar 2021 03:31:56 +0000 (22:31 -0500)]
Set errno uniformly

Even when the return code allows the caller to determine
that they passed invalid arguments.

4 years agoHave v_remove operate on a single element
Joe Nelson [Fri, 26 Mar 2021 02:50:55 +0000 (21:50 -0500)]
Have v_remove operate on a single element

This way it can work like a generalized pop(), and the caller
can use/free the element as desired. Removing a range has no
clean way to return the elements to the caller, other than
packaging up the results into a new vector perhaps.

Later we could add a v_erase() that works on a range and frees
the elements, like the C++ vector::erase(). Or call it v_delete()
like Vectors in Ada.

4 years agoDeal with large allocations more consistently
Joe Nelson [Fri, 26 Mar 2021 01:52:30 +0000 (20:52 -0500)]
Deal with large allocations more consistently

This is kind of academic because it's unlikely that such huge amounts
of memory could ever actually be allocated. In fact, probably impossible
given sizeof(void*). However I want the numerical logic to be correct,
and we'll leave it to realloc() to determine failure.

4 years agoA little cleaner way to do invariant check
Joe Nelson [Thu, 25 Mar 2021 04:07:22 +0000 (23:07 -0500)]
A little cleaner way to do invariant check

4 years agoMore untested functions
Joe Nelson [Thu, 25 Mar 2021 04:02:36 +0000 (23:02 -0500)]
More untested functions

4 years agoKeep on implementing
Joe Nelson [Thu, 25 Mar 2021 03:33:53 +0000 (22:33 -0500)]
Keep on implementing

4 years agoAlways check invariants in debug mode
Joe Nelson [Thu, 25 Mar 2021 03:33:37 +0000 (22:33 -0500)]
Always check invariants in debug mode

4 years agoStart implementing
Joe Nelson [Tue, 23 Mar 2021 04:29:11 +0000 (23:29 -0500)]
Start implementing

4 years agoAdd const where possible
Joe Nelson [Tue, 23 Mar 2021 04:28:02 +0000 (23:28 -0500)]
Add const where possible

4 years agoBeginning with vector
Joe Nelson [Mon, 22 Mar 2021 02:57:54 +0000 (21:57 -0500)]
Beginning with vector