Update CHANGELOG and run cargo update
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d2f2de2..dbc5a82 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,6 +19,72 @@
 
 # DataFusion Python Changelog
 
+## [31.0.0](https://github.com/apache/arrow-datafusion-python/tree/31.0.0) (2023-09-12)
+
+[Full Changelog](https://github.com/apache/arrow-datafusion-python/compare/28.0.0...31.0.0)
+
+**Implemented enhancements:**
+
+- feat: add case function (#447) [#448](https://github.com/apache/arrow-datafusion-python/pull/448) (mesejo)
+- feat: add compression options [#456](https://github.com/apache/arrow-datafusion-python/pull/456) (mesejo)
+- feat: add register_json [#458](https://github.com/apache/arrow-datafusion-python/pull/458) (mesejo)
+- feat: add basic compression configuration to write_parquet [#459](https://github.com/apache/arrow-datafusion-python/pull/459) (mesejo)
+- feat: add example of reading parquet from s3 [#460](https://github.com/apache/arrow-datafusion-python/pull/460) (mesejo)
+- feat: add register_avro and read_table [#461](https://github.com/apache/arrow-datafusion-python/pull/461) (mesejo)
+- feat: add missing scalar math functions [#465](https://github.com/apache/arrow-datafusion-python/pull/465) (mesejo)
+
+**Documentation updates:**
+
+- docs: include pre-commit hooks section in contributor guide [#455](https://github.com/apache/arrow-datafusion-python/pull/455) (mesejo)
+
+**Merged pull requests:**
+
+- Build Linux aarch64 wheel [#443](https://github.com/apache/arrow-datafusion-python/pull/443) (gokselk)
+- feat: add case function (#447) [#448](https://github.com/apache/arrow-datafusion-python/pull/448) (mesejo)
+- enhancement(docs): Add user guide (#432) [#445](https://github.com/apache/arrow-datafusion-python/pull/445) (mesejo)
+- docs: include pre-commit hooks section in contributor guide [#455](https://github.com/apache/arrow-datafusion-python/pull/455) (mesejo)
+- feat: add compression options [#456](https://github.com/apache/arrow-datafusion-python/pull/456) (mesejo)
+- Upgrade to DF 28.0.0-rc1 [#457](https://github.com/apache/arrow-datafusion-python/pull/457) (andygrove)
+- feat: add register_json [#458](https://github.com/apache/arrow-datafusion-python/pull/458) (mesejo)
+- feat: add basic compression configuration to write_parquet [#459](https://github.com/apache/arrow-datafusion-python/pull/459) (mesejo)
+- feat: add example of reading parquet from s3 [#460](https://github.com/apache/arrow-datafusion-python/pull/460) (mesejo)
+- feat: add register_avro and read_table [#461](https://github.com/apache/arrow-datafusion-python/pull/461) (mesejo)
+- feat: add missing scalar math functions [#465](https://github.com/apache/arrow-datafusion-python/pull/465) (mesejo)
+- build(deps): bump arduino/setup-protoc from 1 to 2 [#452](https://github.com/apache/arrow-datafusion-python/pull/452) (dependabot[bot])
+- Revert "build(deps): bump arduino/setup-protoc from 1 to 2 (#452)" [#474](https://github.com/apache/arrow-datafusion-python/pull/474) (viirya)
+- Minor: fix wrongly copied function description [#497](https://github.com/apache/arrow-datafusion-python/pull/497) (viirya)
+- Upgrade to Datafusion 31.0.0 [#491](https://github.com/apache/arrow-datafusion-python/pull/491) (judahrand)
+- Add `isnan` and `iszero` [#495](https://github.com/apache/arrow-datafusion-python/pull/495) (judahrand)
+
+## 30.0.0
+
+- Skipped due to a breaking change in DataFusion
+
+## 29.0.0
+
+- Skipped
+
+## [28.0.0](https://github.com/apache/arrow-datafusion-python/tree/28.0.0) (2023-07-25)
+
+**Implemented enhancements:**
+
+- feat: expose offset in python API [#437](https://github.com/apache/arrow-datafusion-python/pull/437) (cpcloud)
+
+**Merged pull requests:**
+
+- File based input utils [#433](https://github.com/apache/arrow-datafusion-python/pull/433) (jdye64)
+- Upgrade to 28.0.0-rc1 [#434](https://github.com/apache/arrow-datafusion-python/pull/434) (andygrove)
+- Introduces utility for obtaining SqlTable information from a file like location [#398](https://github.com/apache/arrow-datafusion-python/pull/398) (jdye64)
+- feat: expose offset in python API [#437](https://github.com/apache/arrow-datafusion-python/pull/437) (cpcloud)
+- Use DataFusion 28 [#439](https://github.com/apache/arrow-datafusion-python/pull/439) (andygrove)
+
+## [27.0.0](https://github.com/apache/arrow-datafusion-python/tree/27.0.0) (2023-07-03)
+
+**Merged pull requests:**
+
+- LogicalPlan.to_variant() make public [#412](https://github.com/apache/arrow-datafusion-python/pull/412) (jdye64)
+- Prepare 27.0.0 release [#423](https://github.com/apache/arrow-datafusion-python/pull/423) (andygrove)
+
 ## [26.0.0](https://github.com/apache/arrow-datafusion-python/tree/26.0.0) (2023-06-11)
 
 [Full Changelog](https://github.com/apache/arrow-datafusion-python/compare/25.0.0...26.0.0)
diff --git a/Cargo.lock b/Cargo.lock
index d15f24b..c7113ff 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -345,9 +345,9 @@
 
 [[package]]
 name = "async-compression"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d495b6dc0184693324491a5ac05f559acc97bf937ab31d7a1c33dd0016be6d2b"
+checksum = "bb42b2197bf15ccb092b62c74515dbd8b86d0effd934795f6687c93b6e679a2c"
 dependencies = [
  "bzip2",
  "flate2",
@@ -2333,9 +2333,9 @@
 
 [[package]]
 name = "rustls-webpki"
-version = "0.101.4"
+version = "0.101.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d"
+checksum = "45a27e3b59326c16e23d30aeb7a36a24cc0d29e71d68ff611cdfb4a01d013bed"
 dependencies = [
  "ring",
  "untrusted",