chore: update versions for 0.4.0
diff --git a/c/cmake_modules/AdbcVersion.cmake b/c/cmake_modules/AdbcVersion.cmake
index 86716de..54aa4f8 100644
--- a/c/cmake_modules/AdbcVersion.cmake
+++ b/c/cmake_modules/AdbcVersion.cmake
@@ -21,7 +21,7 @@
 # ------------------------------------------------------------
 # Version definitions
 
-set(ADBC_VERSION "0.4.0-SNAPSHOT")
+set(ADBC_VERSION "0.4.0")
 string(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" ADBC_BASE_VERSION "${ADBC_VERSION}")
 string(REPLACE "." ";" _adbc_version_list "${ADBC_BASE_VERSION}")
 list(GET _adbc_version_list 0 ADBC_VERSION_MAJOR)
diff --git a/ci/linux-packages/debian/changelog b/ci/linux-packages/debian/changelog
index cf82a62..7e91bb1 100644
--- a/ci/linux-packages/debian/changelog
+++ b/ci/linux-packages/debian/changelog
@@ -1,3 +1,9 @@
+apache-arrow-adbc (0.4.0-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- David Li <li.davidm96@gmail.com>  Mon, 08 May 2023 18:40:54 -0000
+
 apache-arrow-adbc (0.1.0-1) unstable; urgency=low
 
   * New upstream release.
diff --git a/ci/linux-packages/yum/apache-arrow-adbc.spec.in b/ci/linux-packages/yum/apache-arrow-adbc.spec.in
index 4aa9ee3..4627a1c 100644
--- a/ci/linux-packages/yum/apache-arrow-adbc.spec.in
+++ b/ci/linux-packages/yum/apache-arrow-adbc.spec.in
@@ -296,6 +296,9 @@
 %{_docdir}/adbc-glib/
 
 %changelog
+* Mon May 08 2023 David Li <li.davidm96@gmail.com> - 0.4.0-1
+- New upstream release.
+
 * Thu Apr 27 2023 Matt Topol <matt@voltrondata.com> - 0.4.0-1
 - Add snowflake driver
 * Mon Dec 26 2022 Sutou Kouhei <kou@clear-code.com> - 0.1.0-1
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 02cfc65..73627e5 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -21,7 +21,7 @@
 project = "ADBC"
 copyright = "2022, Apache Arrow Developers"
 author = "the Apache Arrow Developers"
-release = "0.4.0 (dev)"
+release = "0.4.0"
 # Needed to generate version switcher
 version = release
 
diff --git a/glib/meson.build b/glib/meson.build
index af468cc..290b8c3 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -23,7 +23,7 @@
           'c_std=c99',
         ],
         license: 'Apache-2.0',
-        version: '0.4.0-SNAPSHOT')
+        version: '0.4.0')
 
 version_numbers = meson.project_version().split('-')[0].split('.')
 version_major = version_numbers[0].to_int()
diff --git a/java/core/pom.xml b/java/core/pom.xml
index 1f47ad3..862276f 100644
--- a/java/core/pom.xml
+++ b/java/core/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
   </parent>
 
   <artifactId>adbc-core</artifactId>
diff --git a/java/driver-manager/pom.xml b/java/driver-manager/pom.xml
index 684da63..8ca1555 100644
--- a/java/driver-manager/pom.xml
+++ b/java/driver-manager/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
   </parent>
 
   <artifactId>adbc-driver-manager</artifactId>
diff --git a/java/driver/flight-sql-validation/pom.xml b/java/driver/flight-sql-validation/pom.xml
index 2830272..eea7659 100644
--- a/java/driver/flight-sql-validation/pom.xml
+++ b/java/driver/flight-sql-validation/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/driver/flight-sql/pom.xml b/java/driver/flight-sql/pom.xml
index 7f1134f..da8854e 100644
--- a/java/driver/flight-sql/pom.xml
+++ b/java/driver/flight-sql/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/driver/jdbc-validation-derby/pom.xml b/java/driver/jdbc-validation-derby/pom.xml
index 8b0917b..e93f6e9 100644
--- a/java/driver/jdbc-validation-derby/pom.xml
+++ b/java/driver/jdbc-validation-derby/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/driver/jdbc-validation-postgresql/pom.xml b/java/driver/jdbc-validation-postgresql/pom.xml
index 058cca9..b570df4 100644
--- a/java/driver/jdbc-validation-postgresql/pom.xml
+++ b/java/driver/jdbc-validation-postgresql/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/driver/jdbc/pom.xml b/java/driver/jdbc/pom.xml
index 0f1d4b2..91f7f27 100644
--- a/java/driver/jdbc/pom.xml
+++ b/java/driver/jdbc/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/driver/validation/pom.xml b/java/driver/validation/pom.xml
index 73cd183..7c6633f 100644
--- a/java/driver/validation/pom.xml
+++ b/java/driver/validation/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
diff --git a/java/pom.xml b/java/pom.xml
index 431e2a5..89211a8 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -20,7 +20,7 @@
 
   <groupId>org.apache.arrow.adbc</groupId>
   <artifactId>arrow-adbc-java-root</artifactId>
-  <version>0.4.0-SNAPSHOT</version>
+  <version>0.4.0</version>
   <packaging>pom</packaging>
 
   <name>Apache Arrow ADBC Java Root POM</name>
@@ -29,7 +29,7 @@
 
   <properties>
     <dep.arrow.version>11.0.0</dep.arrow.version>
-    <adbc.version>0.4.0-SNAPSHOT</adbc.version>
+    <adbc.version>0.4.0</adbc.version>
   </properties>
 
   <scm>
diff --git a/java/sql/pom.xml b/java/sql/pom.xml
index 85004d8..56d763f 100644
--- a/java/sql/pom.xml
+++ b/java/sql/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>arrow-adbc-java-root</artifactId>
     <groupId>org.apache.arrow.adbc</groupId>
-    <version>0.4.0-SNAPSHOT</version>
+    <version>0.4.0</version>
   </parent>
 
   <artifactId>adbc-sql</artifactId>
diff --git a/r/adbcdrivermanager/DESCRIPTION b/r/adbcdrivermanager/DESCRIPTION
index e646a05..3d08643 100644
--- a/r/adbcdrivermanager/DESCRIPTION
+++ b/r/adbcdrivermanager/DESCRIPTION
@@ -1,6 +1,6 @@
 Package: adbcdrivermanager
 Title: Arrow Database Connectivity (ADBC) Driver Manager
-Version: 0.3.0.9000
+Version: 0.4.0
 Authors@R: c(
       person("Dewey", "Dunnington", , "dewey@dunnington.ca", role = c("aut", "cre"),
              comment = c(ORCID = "0000-0002-9415-4582")),
diff --git a/r/adbcpostgresql/DESCRIPTION b/r/adbcpostgresql/DESCRIPTION
index 3210af5..f808245 100644
--- a/r/adbcpostgresql/DESCRIPTION
+++ b/r/adbcpostgresql/DESCRIPTION
@@ -1,6 +1,6 @@
 Package: adbcpostgresql
 Title: Arrow Database Connectivity (ADBC) PostgreSQL Driver
-Version: 0.3.0.9000
+Version: 0.4.0
 Authors@R: c(
       person("Dewey", "Dunnington", , "dewey@dunnington.ca", role = c("aut", "cre"),
              comment = c(ORCID = "0000-0002-9415-4582")),
diff --git a/r/adbcsnowflake/DESCRIPTION b/r/adbcsnowflake/DESCRIPTION
index 1ba15a3..f0dd108 100644
--- a/r/adbcsnowflake/DESCRIPTION
+++ b/r/adbcsnowflake/DESCRIPTION
@@ -1,6 +1,6 @@
 Package: adbcsnowflake
 Title: Arrow Database Connectivity (ADBC) Snowflake Driver
-Version: 0.3.0.9000
+Version: 0.4.0
 Authors@R: c(
       person("Dewey", "Dunnington", , "dewey@dunnington.ca", role = c("aut", "cre"),
              comment = c(ORCID = "0000-0002-9415-4582")),
diff --git a/r/adbcsqlite/DESCRIPTION b/r/adbcsqlite/DESCRIPTION
index f9e8687..aab744c 100644
--- a/r/adbcsqlite/DESCRIPTION
+++ b/r/adbcsqlite/DESCRIPTION
@@ -1,6 +1,6 @@
 Package: adbcsqlite
 Title: Arrow Database Connectivity (ADBC) SQLite Driver
-Version: 0.3.0.9000
+Version: 0.4.0
 Authors@R: c(
       person("Dewey", "Dunnington", , "dewey@dunnington.ca", role = c("aut", "cre"),
              comment = c(ORCID = "0000-0002-9415-4582")),
diff --git a/ruby/lib/adbc/version.rb b/ruby/lib/adbc/version.rb
index 26eb542..a9e0711 100644
--- a/ruby/lib/adbc/version.rb
+++ b/ruby/lib/adbc/version.rb
@@ -16,7 +16,7 @@
 # under the License.
 
 module ADBC
-  VERSION = "0.4.0-SNAPSHOT"
+  VERSION = "0.4.0"
 
   module Version
     MAJOR, MINOR, MICRO, TAG = VERSION.split(".").collect(&:to_i)