trying older pandas
diff --git a/pyproject.toml b/pyproject.toml
index e54a645..abe52e3 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -71,7 +71,8 @@
     "packaging",
     # --------------------------
     # pandas and related (wanting pandas[performance] without numba as it's 100+MB and not needed)
-    "pandas[excel]>=2.0.3, <3",
+    # upper bounding at 2.2 as df.to_sql changes sqlalchemy type compatibility
+    "pandas[excel]>=2.0.3, <2.2",
     "bottleneck",
     # --------------------------
     "parsedatetime",
diff --git a/requirements/base.txt b/requirements/base.txt
index 5d5db6e..6a245dd 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -241,9 +241,8 @@
     #   limits
     #   marshmallow
     #   marshmallow-sqlalchemy
-    #   python-calamine
     #   shillelagh
-pandas==2.2.3
+pandas==2.1.4
     # via apache-superset (pyproject.toml)
 paramiko==3.5.0
     # via
@@ -286,8 +285,6 @@
     # via shillelagh
 pyparsing==3.2.0
     # via apache-superset (pyproject.toml)
-python-calamine==0.3.1
-    # via pandas
 python-dateutil==2.9.0.post0
     # via
     #   apache-superset (pyproject.toml)
diff --git a/requirements/development.txt b/requirements/development.txt
index 8996751..fb60bed 100644
--- a/requirements/development.txt
+++ b/requirements/development.txt
@@ -492,10 +492,9 @@
     #   marshmallow-sqlalchemy
     #   matplotlib
     #   pytest
-    #   python-calamine
     #   shillelagh
     #   sqlalchemy-bigquery
-pandas==2.2.3
+pandas==2.1.4
     # via
     #   -c requirements/base.txt
     #   apache-superset
@@ -633,10 +632,6 @@
     # via apache-superset
 pytest-mock==3.10.0
     # via apache-superset
-python-calamine==0.3.1
-    # via
-    #   -c requirements/base.txt
-    #   pandas
 python-dateutil==2.9.0.post0
     # via
     #   -c requirements/base.txt