FIX Another instance of strftime wrong for alpine
3 files changed, 117 insertions(+), 99 deletions(-)

M README.md
M README.org
M src/pds/pds.ml
M README.md +114 -98
@@ 2,58 2,60 @@ 
 
 # Table of Contents
 
-1.  [About](#org0a16512)
-    1.  [Why Does This Exist?](#org782c2ff)
-2.  [Parallelism](#org93ac622)
-3.  [Content Hash Based Builds](#org7a1baea)
-4.  [Terminology](#org0edb747)
-5.  [Projects](#orgeecfebb)
-    1.  [Ocaml](#orgbb59668)
-    2.  [Third-party](#org862caf9)
-6.  [Dependencies](#org05d469e)
-7.  [Configuration](#org10a7b48)
-    1.  [Configuration Variables For Projects](#orga20d294)
-    2.  [Configuration Variables For Tests](#org30b6f85)
-    3.  [Outputting the configuration](#orgdaf8296)
-8.  [Produced Files](#orge8affcf)
-9.  [Documentation](#org8ad6181)
-10. [Selectors](#org5986af9)
-11. [Changelog](#org1fb860b)
-    1.  [1.0.0](#orgfa5a23f)
-    2.  [1.1.0](#org3866d12)
-    3.  [2.0.0](#org9af77a0)
-    4.  [3.0.0](#org7276705)
-    5.  [3.0.1](#org3a05e17)
-    6.  [3.0.2](#org5a6c098)
-    7.  [3.0.3](#org5db04fb)
-    8.  [3.0.4](#org977617c)
-    9.  [3.1.0](#org7156135)
-    10. [3.1.1](#orga6b5986)
-    11. [4.11](#org27b99ae)
-    12. [4.12](#org79085ec)
-    13. [4.13](#org3ceaa28)
-    14. [5.14](#org6fb1adc)
-    15. [5.15](#orgd1ad08d)
-    16. [5.16](#org516abd3)
-    17. [5.17 (bug release)](#orga66757d)
-    18. [5.18](#org7dd5722)
-    19. [5.19](#org4dbf208)
-    20. [6.20](#org9d6bd61)
-    21. [5.21](#orga691fb7)
-    22. [5.22](#org449cc13)
-    23. [5.23](#org7354078)
-    24. [5.24](#org7424460)
-    25. [5.25](#org47dcbd5)
-    26. [5.26 (bug release)](#org86beb6b)
-    27. [5.27](#orge675378)
-    28. [5.28](#org0815af3)
-    29. [5.29](#org2879fa4)
-    30. [6.43](#orge573caf)
-    31. [6.44](#orgb95e58f)
-    32. [6.45](#org75b4676)
+1.  [About](#orgaeb9efc)
+    1.  [Why Does This Exist?](#org32604dc)
+2.  [Parallelism](#org0e17918)
+3.  [Content Hash Based Builds](#org2334e05)
+4.  [Terminology](#org79571a5)
+5.  [Projects](#org4574903)
+    1.  [Ocaml](#orga7d8cd8)
+    2.  [Third-party](#orga521199)
+6.  [Dependencies](#orga1a7e56)
+7.  [Configuration](#org89d217b)
+    1.  [Configuration Variables For Projects](#org15697e7)
+    2.  [Configuration Variables For Tests](#orgf421fca)
+    3.  [Outputting the configuration](#org90dbd62)
+8.  [Produced Files](#org95d8dcf)
+9.  [Documentation](#org82b3ac2)
+10. [Selectors](#orgade5de2)
+11. [Changelog](#org4eb68f3)
+    1.  [1.0.0](#org4fe086a)
+    2.  [1.1.0](#orga788cdf)
+    3.  [2.0.0](#org36ef142)
+    4.  [3.0.0](#org720e18b)
+    5.  [3.0.1](#org31e8b1d)
+    6.  [3.0.2](#org8c0c2b0)
+    7.  [3.0.3](#org8a724d6)
+    8.  [3.0.4](#orgc99b22b)
+    9.  [3.1.0](#org2c98f71)
+    10. [3.1.1](#org64d3989)
+    11. [4.11](#orgd42232e)
+    12. [4.12](#org529def8)
+    13. [4.13](#org5872c7d)
+    14. [5.14](#orge45d2c1)
+    15. [5.15](#org6b2134c)
+    16. [5.16](#org5f153eb)
+    17. [5.17 (bug release)](#org10c91f2)
+    18. [5.18](#org3a2fa9e)
+    19. [5.19](#orgd32d278)
+    20. [6.20](#org5446435)
+    21. [5.21](#orgb5af0e7)
+    22. [5.22](#org902ae8b)
+    23. [5.23](#org996f813)
+    24. [5.24](#org2a3fc42)
+    25. [5.25](#org138eaf8)
+    26. [5.26 (bug release)](#org4d8bd98)
+    27. [5.27](#org2e92c3e)
+    28. [5.28](#org2118798)
+    29. [5.29](#orgbd44a7e)
+    30. [6.43](#org10c36f6)
+    31. [6.44](#org06d13bb)
+    32. [6.45](#org30ea443)
+    33. [6.46](#org175b1fe)
+    34. [6.47](#org3a7e685)
 
 
-<a id="org0a16512"></a>
+<a id="orgaeb9efc"></a>
 
 # About
 

          
@@ 120,7 122,7 @@ the `build` directory, for example `buil
 `build/test-release`.
 
 
-<a id="org782c2ff"></a>
+<a id="org32604dc"></a>
 
 ## Why Does This Exist?
 

          
@@ 133,7 135,7 @@ the existing tooling then you should be 
 meant to be non-intrusive.
 
 
-<a id="org93ac622"></a>
+<a id="org0e17918"></a>
 
 # Parallelism
 

          
@@ 153,7 155,7 @@ the source of the `units Foo and Bar mak
 error.
 
 
-<a id="org7a1baea"></a>
+<a id="org2334e05"></a>
 
 # Content Hash Based Builds
 

          
@@ 173,7 175,7 @@ of the build configuration, this ensure 
 that causes a rebuild.
 
 
-<a id="org0edb747"></a>
+<a id="org79571a5"></a>
 
 # Terminology
 

          
@@ 185,7 187,7 @@ that causes a rebuild.
     `library`, this applies only to ocaml projects..
 
 
-<a id="orgeecfebb"></a>
+<a id="org4574903"></a>
 
 # Projects
 

          
@@ 196,7 198,7 @@ interface, which is `release`, `debug`, 
 and `clean`.
 
 
-<a id="orgbb59668"></a>
+<a id="orga7d8cd8"></a>
 
 ## Ocaml
 

          
@@ 247,7 249,7 @@ generated.
 </table>
 
 
-<a id="org862caf9"></a>
+<a id="orga521199"></a>
 
 ## Third-party
 

          
@@ 255,7 257,7 @@ Third party projects do not have a `Make
 to have one which corresponds to the pds interface.
 
 
-<a id="org05d469e"></a>
+<a id="orga1a7e56"></a>
 
 # Dependencies
 

          
@@ 266,7 268,7 @@ compiled before its dependent project an
 as a dependency in the dependents `Makefile`.
 
 
-<a id="org10a7b48"></a>
+<a id="org89d217b"></a>
 
 # Configuration
 

          
@@ 320,7 322,7 @@ An example of building the example direc
     install = false
 
 
-<a id="orga20d294"></a>
+<a id="org15697e7"></a>
 
 ## Configuration Variables For Projects
 

          
@@ 470,7 472,7 @@ 5.  `src.<project>.<option>`
 The same precedence applies to test builds.
 
 
-<a id="org30b6f85"></a>
+<a id="orgf421fca"></a>
 
 ## Configuration Variables For Tests
 

          
@@ 485,7 487,7 @@ 2.  `global.test-<build_type>.<option>`
 3.  `tests.<project>.<option>`
 
 
-<a id="orgdaf8296"></a>
+<a id="org90dbd62"></a>
 
 ## Outputting the configuration
 

          
@@ 542,7 544,7 @@ output looks like the following:
 </table>
 
 
-<a id="orge8affcf"></a>
+<a id="org95d8dcf"></a>
 
 # Produced Files
 

          
@@ 555,7 557,7 @@ ignored in the form of a `.gitignore`.
     Ocamlrules.mk.in
 
 
-<a id="org8ad6181"></a>
+<a id="org82b3ac2"></a>
 
 # Documentation
 

          
@@ 569,7 571,7 @@ also be set for `ocamldoc` by modifying 
 `extra_makefile_lines`.
 
 
-<a id="org5986af9"></a>
+<a id="orgade5de2"></a>
 
 # Selectors
 

          
@@ 613,12 615,12 @@ The order of precedence is that the sele
 checked, then the selector for a release.
 
 
-<a id="org1fb860b"></a>
+<a id="org4eb68f3"></a>
 
 # Changelog
 
 
-<a id="orgfa5a23f"></a>
+<a id="org4fe086a"></a>
 
 ## 1.0.0
 

          
@@ 627,7 629,7 @@ checked, then the selector for a release
 -   Support running tests.
 
 
-<a id="org3866d12"></a>
+<a id="orga788cdf"></a>
 
 ## 1.1.0
 

          
@@ 636,7 638,7 @@ checked, then the selector for a release
     is useful if a tool needs to be built that will be used to compile a project.
 
 
-<a id="org9af77a0"></a>
+<a id="org36ef142"></a>
 
 ## 2.0.0
 

          
@@ 645,7 647,7 @@ checked, then the selector for a release
 -   Fill out the documentation more.
 
 
-<a id="org7276705"></a>
+<a id="org720e18b"></a>
 
 ## 3.0.0
 

          
@@ 653,7 655,7 @@ checked, then the selector for a release
     understands both installing and uninstalling projects.
 
 
-<a id="org3a05e17"></a>
+<a id="org31e8b1d"></a>
 
 ## 3.0.1
 

          
@@ 661,14 663,14 @@ checked, then the selector for a release
     after using hll to make the package.
 
 
-<a id="org5a6c098"></a>
+<a id="org8c0c2b0"></a>
 
 ## 3.0.2
 
 -   Expand the hll config to pass opam-linter.
 
 
-<a id="org5db04fb"></a>
+<a id="org8a724d6"></a>
 
 ## 3.0.3
 

          
@@ 676,7 678,7 @@ checked, then the selector for a release
 -   Specify which version of ocaml pds works with.
 
 
-<a id="org977617c"></a>
+<a id="orgc99b22b"></a>
 
 ## 3.0.4
 

          
@@ 684,7 686,7 @@ checked, then the selector for a release
 -   Remove examples.
 
 
-<a id="org7156135"></a>
+<a id="org2c98f71"></a>
 
 ## 3.1.0
 

          
@@ 692,14 694,14 @@ checked, then the selector for a release
 -   Install `.cmi` files.
 
 
-<a id="orga6b5986"></a>
+<a id="org64d3989"></a>
 
 ## 3.1.1
 
 -   Fix a bug in generating docs when the project has no dependencies.
 
 
-<a id="org27b99ae"></a>
+<a id="orgd42232e"></a>
 
 ## 4.11
 

          
@@ 710,21 712,21 @@ checked, then the selector for a release
     name of the output.
 
 
-<a id="org79085ec"></a>
+<a id="org529def8"></a>
 
 ## 4.12
 
 -   Include tests directories in formatted output.
 
 
-<a id="org3ceaa28"></a>
+<a id="org5872c7d"></a>
 
 ## 4.13
 
 -   Make a better error message for the install key, which is required.
 
 
-<a id="org6fb1adc"></a>
+<a id="orge45d2c1"></a>
 
 ## 5.14
 

          
@@ 734,7 736,7 @@ checked, then the selector for a release
 -   Remove PACK support.  Building PACKs is no longer supported.
 
 
-<a id="orgd1ad08d"></a>
+<a id="org6b2134c"></a>
 
 ## 5.15
 

          
@@ 742,14 744,14 @@ checked, then the selector for a release
 -   Add a changelog and back fill it.
 
 
-<a id="org516abd3"></a>
+<a id="org5f153eb"></a>
 
 ## 5.16
 
 -   Fix bug in cleanup logic which concatenated multiple deps
 
 
-<a id="orga66757d"></a>
+<a id="org10c91f2"></a>
 
 ## 5.17 (bug release)
 

          
@@ 760,7 762,7 @@ checked, then the selector for a release
     first then the .cmo and .cmx are generated.
 
 
-<a id="org7dd5722"></a>
+<a id="org3a2fa9e"></a>
 
 ## 5.18
 

          
@@ 773,7 775,7 @@ checked, then the selector for a release
     it.  This solves it by serializing the build for those cases.
 
 
-<a id="org4dbf208"></a>
+<a id="orgd32d278"></a>
 
 ## 5.19
 

          
@@ 781,14 783,14 @@ checked, then the selector for a release
     installs `.cmi` files for all `.ml` files.
 
 
-<a id="org9d6bd61"></a>
+<a id="org5446435"></a>
 
 ## 6.20
 
 -   Removed the `-custom` option from default byte code builds.
 
 
-<a id="orga691fb7"></a>
+<a id="orgb5af0e7"></a>
 
 ## 5.21
 

          
@@ 796,7 798,7 @@ checked, then the selector for a release
     them to be overridden.
 
 
-<a id="org449cc13"></a>
+<a id="org902ae8b"></a>
 
 ## 5.22
 

          
@@ 804,28 806,28 @@ checked, then the selector for a release
 -   Tests compile with `OCAML*_LINK_OPTS` just like regular builds.
 
 
-<a id="org7354078"></a>
+<a id="org996f813"></a>
 
 ## 5.23
 
 -   Fix typo in PARALLEL
 
 
-<a id="org7424460"></a>
+<a id="org2a3fc42"></a>
 
 ## 5.24
 
 -   Build cmti files and install them for every library.
 
 
-<a id="org47dcbd5"></a>
+<a id="org138eaf8"></a>
 
 ## 5.25
 
 -   Support adding linkopts to the META file.
 
 
-<a id="org86beb6b"></a>
+<a id="org4d8bd98"></a>
 
 ## 5.26 (bug release)
 

          
@@ 833,14 835,14 @@ checked, then the selector for a release
 -   Add some tests.
 
 
-<a id="orge675378"></a>
+<a id="org2e92c3e"></a>
 
 ## 5.27
 
 -   Fix bug in section name for the selector.
 
 
-<a id="org0815af3"></a>
+<a id="org2118798"></a>
 
 ## 5.28
 

          
@@ 848,7 850,7 @@ checked, then the selector for a release
     were not properly looked up.
 
 
-<a id="org2879fa4"></a>
+<a id="orgbd44a7e"></a>
 
 ## 5.29
 

          
@@ 857,23 859,37 @@ checked, then the selector for a release
     worked).
 
 
-<a id="orge573caf"></a>
+<a id="org10c36f6"></a>
 
 ## 6.43
 
 -   Move to content based hashing.
 
 
-<a id="orgb95e58f"></a>
+<a id="org06d13bb"></a>
 
 ## 6.44
 
 -   Fix install directive
 
 
-<a id="org75b4676"></a>
+<a id="org30ea443"></a>
 
 ## 6.45
 
 -   Better sqlite error reporting
 
+
+<a id="org175b1fe"></a>
+
+## 6.46
+
+-   strftime usage that works on Alpine
+
+
+<a id="org3a7e685"></a>
+
+## 6.47
+
+-   Another instance of strftime
+

          
M README.org +2 -0
@@ 426,3 426,5 @@ checked, then the selector for a release
 - Better sqlite error reporting
 ** 6.46
 - strftime usage that works on Alpine
+** 6.47
+- Another instance of strftime

          
M src/pds/pds.ml +1 -1
@@ 48,7 48,7 @@ module Hash_db = struct
           Sqlite3.prepare
             db
             "insert or replace into last_run (path, hash, modified_at) values (?, ?, \
-             strftime('%FT%T', ?, 'unixepoch')) "
+             strftime('%Y-%m-%dT%H:%M:%S', ?, 'unixepoch')) "
         in
         assert_rc @@ Sqlite3.bind_text stmt 1 path;
         assert_rc @@ Sqlite3.bind_text stmt 2 hash;