diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # libarchive
 
+## 2.1.3.0
+
+  * `archiveVersionString` &c. are now pure
+
 ## 2.1.2.1
 
   * Fixed bug that would cause segfaults on lazy bytestrings with large chunks
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -22,12 +22,3 @@
 ```
 
 so that you have appropriate test data downloaded.
-
-### CI
-
-To edit the CI script, edit `github-action.dhall` and regenerate
-`.github/workflows/haskell.yml` with
-
-```
-make ci
-```
diff --git a/libarchive.cabal b/libarchive.cabal
--- a/libarchive.cabal
+++ b/libarchive.cabal
@@ -1,6 +1,6 @@
 cabal-version:   1.18
 name:            libarchive
-version:         2.1.2.1
+version:         2.1.3.0
 license:         BSD3
 license-file:    LICENSE
 copyright:       Copyright: (c) 2018-2019 Vanessa McHale
diff --git a/src/Codec/Archive/Foreign/Archive.chs b/src/Codec/Archive/Foreign/Archive.chs
--- a/src/Codec/Archive/Foreign/Archive.chs
+++ b/src/Codec/Archive/Foreign/Archive.chs
@@ -407,9 +407,9 @@
 {# fun archive_set_error as ^ { `ArchivePtr', `CInt', `CString' } -> `()' #}
 {# fun archive_copy_error as ^ { `ArchivePtr', `ArchivePtr' } -> `()' #}
 {# fun archive_file_count as ^ { `ArchivePtr' } -> `CInt' #}
-{# fun archive_version_number as ^ {} -> `CInt' #}
-{# fun archive_version_string as ^ {} -> `String' #}
-{# fun archive_version_details as ^ {} -> `String' #}
+{# fun pure archive_version_number as ^ {} -> `CInt' #}
+{# fun pure archive_version_string as ^ {} -> `String' #}
+{# fun pure archive_version_details as ^ {} -> `String' #}
 {# fun archive_filter_count as ^ { `ArchivePtr' } -> `CInt' #}
 {# fun archive_filter_bytes as ^ { `ArchivePtr', `CInt' } -> `LaInt64' #}
 {# fun archive_filter_code as ^ { `ArchivePtr', `CInt' } -> `Int' #}
