]> git.scottworley.com Git - tl-append/log
tl-append
15 months agoFix memory leak
Scott Worley [Thu, 14 Sep 2023 06:43:01 +0000 (23:43 -0700)]
Fix memory leak

15 months agoRelease 1.0.0 v1.0.0
Scott Worley [Wed, 13 Sep 2023 22:27:38 +0000 (15:27 -0700)]
Release 1.0.0

15 months ago-C flag to specify directory
Scott Worley [Wed, 13 Sep 2023 22:23:13 +0000 (15:23 -0700)]
-C flag to specify directory

-C chosen to match git's -C.

15 months agoShow usage message on invalid command line argument
Scott Worley [Wed, 13 Sep 2023 22:16:27 +0000 (15:16 -0700)]
Show usage message on invalid command line argument

15 months agoAlso take flock locks
Scott Worley [Wed, 13 Sep 2023 21:56:30 +0000 (14:56 -0700)]
Also take flock locks

There are two kinds of locks, so for interoperability, everyone has to
always take both kinds, to avoid the possibility of one client using one
kind and another client using another kind & missing each other.  :(

I wonder what order we're supposed to take them in?  If we don't all
agree, we get deadlocks!  Here, I take them in alphabetical order
(fcntl then flock), in the hope of this being a legible Schelling point.

The test harness does exercise the "take locks in the 'wrong' order" case.
It probably deadlocks with some tiny probability on heavily-loaded
systems.  Sorry.  If this hurts you, feel free to remove it.

15 months agotest: Try writing to flock-locked files
Scott Worley [Wed, 13 Sep 2023 21:51:07 +0000 (14:51 -0700)]
test: Try writing to flock-locked files

15 months agoAllow file locking to be turned off
Scott Worley [Wed, 13 Sep 2023 21:28:20 +0000 (14:28 -0700)]
Allow file locking to be turned off

15 months agoContemplate the possibility of multiple command line flags
Scott Worley [Wed, 13 Sep 2023 21:25:41 +0000 (14:25 -0700)]
Contemplate the possibility of multiple command line flags

15 months agoPass config by reference
Scott Worley [Wed, 13 Sep 2023 21:23:27 +0000 (14:23 -0700)]
Pass config by reference

15 months agoHold a lock while appending
Scott Worley [Wed, 13 Sep 2023 21:14:22 +0000 (14:14 -0700)]
Hold a lock while appending

15 months agoConcurrency tests
Scott Worley [Wed, 13 Sep 2023 20:53:50 +0000 (13:53 -0700)]
Concurrency tests

15 months agoappease clang-tidy: More const
Scott Worley [Wed, 13 Sep 2023 18:41:53 +0000 (11:41 -0700)]
appease clang-tidy: More const

15 months agoappease clang-tidy: Don't do unnecessary size_t→int narrowing conversion
Scott Worley [Wed, 13 Sep 2023 18:41:36 +0000 (11:41 -0700)]
appease clang-tidy: Don't do unnecessary size_t→int narrowing conversion

Why does fgets take an int instead of a size_t?  :(

15 months agoappease clang-tidy: Careful of size_t→int narrowing conversion
Scott Worley [Wed, 13 Sep 2023 18:40:48 +0000 (11:40 -0700)]
appease clang-tidy: Careful of size_t→int narrowing conversion

Why does fgets take an int instead of a size_t?  :(

15 months agoInteractive mode: Prompt, feedback, & screen clearing
Scott Worley [Wed, 13 Sep 2023 18:11:49 +0000 (11:11 -0700)]
Interactive mode: Prompt, feedback, & screen clearing

15 months agoWrite timestamps
Scott Worley [Fri, 8 Sep 2023 20:09:13 +0000 (13:09 -0700)]
Write timestamps

15 months agotest: factor out verify_line()
Scott Worley [Fri, 8 Sep 2023 19:51:22 +0000 (12:51 -0700)]
test: factor out verify_line()

15 months agoEncode time in time-logger's format
Scott Worley [Mon, 4 Sep 2023 00:50:46 +0000 (17:50 -0700)]
Encode time in time-logger's format

This is not a good format.  It looses timezone information during daylight
savings time changes -- it cannot distinguish between the first 01:30
and the second 01:30 during the fall transition.

15 months agoA space for test & implementation to share code
Scott Worley [Thu, 31 Aug 2023 19:11:01 +0000 (12:11 -0700)]
A space for test & implementation to share code

15 months agotest: Populate expectation timestamp range
Scott Worley [Thu, 31 Aug 2023 18:53:27 +0000 (11:53 -0700)]
test: Populate expectation timestamp range

15 months agotest: Expectations have timestamp range
Scott Worley [Thu, 31 Aug 2023 18:51:08 +0000 (11:51 -0700)]
test: Expectations have timestamp range

15 months agotest: Use expectations for verifying output
Scott Worley [Thu, 31 Aug 2023 18:49:54 +0000 (11:49 -0700)]
test: Use expectations for verifying output

15 months agotest: Populate expectation
Scott Worley [Thu, 31 Aug 2023 18:34:54 +0000 (11:34 -0700)]
test: Populate expectation

15 months agotest: Dynamic buffer size
Scott Worley [Thu, 31 Aug 2023 18:08:25 +0000 (11:08 -0700)]
test: Dynamic buffer size

15 months agoTest writing twice
Scott Worley [Thu, 31 Aug 2023 18:01:08 +0000 (11:01 -0700)]
Test writing twice

15 months agomake clean
Scott Worley [Thu, 31 Aug 2023 18:00:38 +0000 (11:00 -0700)]
make clean

15 months agoRefactor test
Scott Worley [Thu, 31 Aug 2023 17:46:45 +0000 (10:46 -0700)]
Refactor test

15 months agoBegin
Scott Worley [Thu, 31 Aug 2023 05:25:58 +0000 (22:25 -0700)]
Begin