Skip to content

Commit 826f196

Browse files
committed
Reverting more changes
1 parent fbf9e1c commit 826f196

File tree

13 files changed

+36
-35
lines changed

13 files changed

+36
-35
lines changed

.github/workflows/cpp.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,8 @@ jobs:
370370
if: matrix.msystem_upper == 'CLANG64'
371371
shell: bash
372372
run: |
373-
# TODO(GH-48743): Clang64 uses vendored date library which needs tzdata
373+
# TODO(GH-48743): msys2 clang64 uses libc++ and vendored date.h library
374+
# which needs tzdata database to build Arrow with time zone support.
374375
# https://github.com/apache/arrow/issues/48743
375376
ci/scripts/download_tz_database.sh
376377
- name: Download MinIO

cpp/src/arrow/config.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,6 @@ std::string MakeSimdLevelString(QueryFlagFunction&& query_flag) {
6464
}
6565
}
6666

67-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
68-
// https://github.com/apache/arrow/issues/48593
6967
std::optional<std::string> timezone_db_path;
7068

7169
}; // namespace
@@ -88,8 +86,8 @@ RuntimeInfo GetRuntimeInfo() {
8886
return info;
8987
}
9088

91-
// TODO(GH-48743): Remove when RTools upgrades to GCC with std::chrono timezone support
92-
// https://github.com/apache/arrow/issues/48743
89+
// TODO(GH-48743): Remove when RTools upgrades to libstdc++ with std::chrono timezone
90+
// support https://github.com/apache/arrow/issues/48743
9391
Status Initialize(const GlobalOptions& options) noexcept {
9492
if (options.timezone_db_path.has_value()) {
9593
#if !USE_OS_TZDB

cpp/src/arrow/config.h

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,9 @@ struct RuntimeInfo {
6767

6868
/// Whether using the OS-based timezone database
6969
/// This is set at compile-time.
70-
// ARROW_DEPRECATED("Deprecated in 23.0.0")
7170
bool using_os_timezone_db;
7271

7372
/// The path to the timezone database; by default None.
74-
/// This is only used on some Windows builds where
75-
/// std::chrono timezone support is not available.
76-
// ARROW_DEPRECATED("Deprecated in 23.0.0")
7773
std::optional<std::string> timezone_db_path;
7874
};
7975

@@ -90,18 +86,12 @@ const BuildInfo& GetBuildInfo();
9086
ARROW_EXPORT
9187
RuntimeInfo GetRuntimeInfo();
9288

93-
// TODO(GH-48743): Remove when RTools upgrades to GCC with std::chrono timezone support
94-
// https://github.com/apache/arrow/issues/48743
9589
struct GlobalOptions {
96-
/// The path to the timezone database; by default None.
97-
/// This is only used on some Windows builds where
98-
/// std::chrono timezone support is not available.
99-
// ARROW_DEPRECATED("Deprecated in 23.0.0")
90+
/// Path to text timezone database. This is only configurable on Windows,
91+
/// which does not have a compatible OS timezone database.
10092
std::optional<std::string> timezone_db_path;
10193
};
10294

103-
// TODO(GH-48743): Remove when RTools upgrades to GCC with std::chrono timezone support
104-
// https://github.com/apache/arrow/issues/48743
10595
ARROW_EXPORT
10696
Status Initialize(const GlobalOptions& options) noexcept;
10797

cpp/src/arrow/public_api_test.cc

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,8 +122,6 @@ TEST(Misc, BuildInfo) {
122122
ASSERT_THAT(info.full_so_version, ::testing::HasSubstr(info.so_version));
123123
}
124124

125-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
126-
// https://github.com/apache/arrow/issues/48593
127125
TEST(Misc, SetTimezoneConfig) {
128126
#ifndef _WIN32
129127
GTEST_SKIP() << "Can only set the Timezone database on Windows";

cpp/src/arrow/testing/util.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ Status GetTestResourceRoot(std::string* out) {
122122
return Status::OK();
123123
}
124124

125-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
125+
// TODO(GH-48593): Remove when we have full std::chrono support
126126
// https://github.com/apache/arrow/issues/48593
127127
std::optional<std::string> GetTestTimezoneDatabaseRoot() {
128128
const char* c_root = std::getenv("ARROW_TIMEZONE_DATABASE");
@@ -132,7 +132,7 @@ std::optional<std::string> GetTestTimezoneDatabaseRoot() {
132132
return std::make_optional(std::string(c_root));
133133
}
134134

135-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
135+
// TODO(GH-48593): Remove when we have full std::chrono support
136136
// https://github.com/apache/arrow/issues/48593
137137
Status InitTestTimezoneDatabase() {
138138
auto maybe_tzdata = GetTestTimezoneDatabaseRoot();

cpp/src/arrow/testing/util.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,12 +112,12 @@ UnionTypeFactories() {
112112
// Status
113113
ARROW_TESTING_EXPORT Status GetTestResourceRoot(std::string*);
114114

115-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
115+
// TODO(GH-48593): Remove when we have full std::chrono support
116116
// https://github.com/apache/arrow/issues/48593
117117
// Return the value of the ARROW_TIMEZONE_DATABASE environment variable
118118
ARROW_TESTING_EXPORT std::optional<std::string> GetTestTimezoneDatabaseRoot();
119119

120-
// TODO(GH-48593): Remove when libc++ supports std::chrono timezone
120+
// TODO(GH-48593): Remove when we have full std::chrono support
121121
// https://github.com/apache/arrow/issues/48593
122122
// Set the Timezone database based on the ARROW_TIMEZONE_DATABASE env variable
123123
// This is only relevant on Windows, since other OSs have compatible databases built-in

docs/source/cpp/build_system.rst

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -235,9 +235,6 @@ will manage consistent versions of Arrow and its dependencies.
235235
Runtime Dependencies
236236
====================
237237

238-
.. TODO(GH-48593): Remove when libc++ supports std::chrono timezone
239-
https://github.com/apache/arrow/issues/48593
240-
241238
While Arrow uses the OS-provided timezone database on Linux and macOS, it
242239
requires a user-provided database on Windows. You must download and extract the
243240
text version of the IANA timezone database and add the Windows timezone mapping

docs/source/developers/cpp/windows.rst

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -384,9 +384,6 @@ be defined, and similarly for ``-DARROW_FLIGHT_SQL=ON``.
384384
Downloading the Timezone Database
385385
=================================
386386

387-
.. TODO(GH-48593): Remove when libc++ supports std::chrono timezone
388-
https://github.com/apache/arrow/issues/48593
389-
390387
To run some of the compute unit tests on Windows, the IANA timezone database
391388
and the Windows timezone mapping need to be downloaded first. See
392389
:ref:`download-timezone-database` for download instructions. To set a non-default

docs/source/python/install.rst

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,6 @@ and **pytz**, **dateutil** or **tzdata** package for timezones.
8383
tzdata on Windows
8484
^^^^^^^^^^^^^^^^^
8585

86-
.. TODO(GH-48593): Remove when libc++ supports std::chrono timezone
87-
https://github.com/apache/arrow/issues/48593
88-
8986
While Arrow uses the OS-provided timezone database on Linux and macOS, it requires a
9087
user-provided database on Windows. To download and extract the text version of
9188
the IANA timezone database follow the instructions in the C++

python/pyarrow/config.pxi

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,19 @@ def set_timezone_db_path(path):
108108
----------
109109
path : str
110110
Path to text timezone database.
111+
.. deprecated:: 23.0.0
112+
This function is deprecated and will be removed in a future version.
113+
PyArrow now uses the operating system's timezone database on Windows.
111114
"""
115+
116+
warnings.warn(
117+
"pyarrow.set_timezone_db_path is deprecated as of 23.0.0 "
118+
"and will be removed in a future version. PyArrow now uses the "
119+
"operating system's timezone database on Windows.",
120+
FutureWarning,
121+
stacklevel=2
122+
)
123+
112124
cdef:
113125
CGlobalOptions options
114126

0 commit comments

Comments
 (0)