Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
126 commits
Select commit Hold shift + click to select a range
4508200
[ARROW-8991]: Adding declarations for HashEach
drin Jun 22, 2022
aed658a
[ARROW-8991]: Adding kernels for HashEach
drin Jun 22, 2022
cd128fa
[ARROW-8991]: Changed function name to FastHash32
drin Jun 24, 2022
22283c6
[ARROW-8991]: Trying to add a kernel for arrays
drin Jun 24, 2022
c67f1cd
[ARROW-8991]: simplified code and definitions
drin Jun 24, 2022
945d237
[ARROW-8991]: updated scalar_hash implementation
drin Jun 30, 2022
73309c0
[ARROW-8991]: adding scalar_hash_test.cc
drin Jun 30, 2022
1516bb4
[ARROW-8991]: Declaring register fn and invocation
drin Jun 30, 2022
01e214e
[ARROW-8991]: Adding scalar_hash tests to build
drin Jun 30, 2022
35a62f8
[ARROW-8991]: used clang-format
drin Jun 30, 2022
f8d7b47
[ARROW-8991]: used clang-format
drin Jun 30, 2022
10b03e2
[ARROW-8991]: updated doc; fixed kernel out value
drin Jul 20, 2022
a6615b8
[ARROW-8991]: adding fasthash64
drin Jul 20, 2022
fef05bb
[ARROW-8991]: adding FastHash to hashing_benchmark
drin Jul 20, 2022
3feec64
[ARROW-8991]: Added naive wrapper around hashing.h
drin Jul 21, 2022
311d31e
[ARROW-8991]: Added benchmark of XxHash
drin Jul 21, 2022
6e24425
[ARROW-8991]: result value changed to ArrayData
drin Jul 22, 2022
a30ea8f
ARROW-8991: Adding functions to KeyColumn classes
drin Sep 6, 2022
9be24e4
ARROW-8991: style formatting
drin Sep 6, 2022
393295b
ARROW-8991: add kernels for different input types
drin Aug 9, 2022
ad5ad67
ARROW-8991: added hashing benchmarks
drin Aug 9, 2022
f97285f
ARROW-8991: style formatting
drin Aug 9, 2022
fccd4c0
ARROW-8991: Added FastHash64 function
drin Aug 9, 2022
ccac206
ARROW-8991: added section for hash functions
drin Aug 9, 2022
90e1e9a
ARROW-8991: skip buffers for MAP type
drin Aug 9, 2022
f4c60ef
ARROW-8991: major updates to hashing benchmarks
drin Aug 9, 2022
a007f05
ARROW-8991: style formatting
drin Aug 9, 2022
8d8c23a
ARROW-8991: replaced 'or' with '||'
drin Aug 10, 2022
e2cf823
[ARROW-8991]: removed fast_hash_32 and xx_hash
drin Aug 24, 2022
e810896
[ARROW-8991]: removed references to dropped fns
drin Aug 24, 2022
bad863d
[ARROW-8991]: fixed style
drin Aug 24, 2022
10c6bce
[ARROW-8991]: removed reference to fast_hash_32
drin Aug 25, 2022
c108b64
[ARROW-8991]: added FastHash64Map test case
drin Aug 25, 2022
5836b64
[ARROW-8991]: added a few more test cases
drin Aug 25, 2022
f312a35
[ARROW-8991]: made keycol extraction more robust
drin Aug 25, 2022
d37abf9
ARROW-8991: changed to static_cast
drin Sep 6, 2022
2f373e7
ARROW-8991: removing "fast" from function name
drin Sep 14, 2022
2851d13
ARROW-8991: moved hash_64 benchmarks
drin Sep 14, 2022
69b31cf
ARROW-8991: fixed style
drin Sep 14, 2022
9796f9d
ARROW-8991: updated "fast_hash_64" -> "hash_64"
drin Sep 14, 2022
273a3c1
ARROW-8991: adding scalar_hash tests
drin Oct 17, 2022
63bbcb0
ARROW-8991: fixed scalar_hash kernel
drin Oct 17, 2022
b2022bd
ARROW-8991: simplified kernel
drin Oct 17, 2022
3ed959b
ARROW-8991: added test using map of ints
drin Oct 17, 2022
5e72a0a
ARROW-8991: fix type mismatch for some CI
drin Oct 17, 2022
6b8c3f2
[ARROW-8991]: Declaring register fn and invocation
drin Jun 30, 2022
f20578a
[ARROW-8991]: Adding scalar_hash tests to build
drin Jun 30, 2022
74e2a57
[ARROW-8991] adding tests
drin Apr 11, 2023
92da7cf
[ARROW-8991] new functionality for light array
drin Apr 11, 2023
22b42b0
GH-39558: [Java] Add SQL_ALL_TABLES_ARE_SELECTABLE, SQL_NULL_ORDERING…
thermo911 Jan 12, 2024
87ed8ac
GH-39564: [CI][Java] Set correct version on Java BOM (#39580)
raulcd Jan 12, 2024
e632364
GH-39519: [Swift] Fix null count when using reader (#39520)
abandy Jan 13, 2024
7e703aa
GH-39588: [CI][Go] Add CGO_ENABLED=1 to cdata_integration build to fi…
raulcd Jan 14, 2024
d7bc555
MINOR: [R] Clean up docs (#39591)
jonkeane Jan 15, 2024
7acbaf4
GH-39504: [Docs] Update footer in main sphinx docs with correct attri…
jorisvandenbossche Jan 15, 2024
1f83c8e
MINOR: [C#] Bump Google.Protobuf from 3.25.1 to 3.25.2 in /csharp (#3…
dependabot[bot] Jan 15, 2024
31d0231
MINOR: [C#] Bump xunit from 2.6.5 to 2.6.6 in /csharp (#39618)
dependabot[bot] Jan 15, 2024
809244e
MINOR: [Java] Bump org.apache.maven.plugins:maven-jar-plugin from 2.4…
dependabot[bot] Jan 15, 2024
b59082a
MINOR: [CI] Update allowed_roles for crossbow submission (#39610)
assignUser Jan 16, 2024
697b70e
MINOR: [Java] Bump commons-codec:commons-codec from 1.15 to 1.16.0 in…
dependabot[bot] Jan 16, 2024
f57feb6
MINOR: [Java] Bump org.jacoco:jacoco-maven-plugin from 0.8.7 to 0.8.1…
dependabot[bot] Jan 16, 2024
0d128c6
GH-39601: [R] Don't download cmake when TEST_OFFLINE_BUILD=true (#39602)
nealrichardson Jan 16, 2024
1df2e4a
GH-39584: [R] fallback to source gracefully (#39587)
jonkeane Jan 16, 2024
ac50918
GH-39624: [R][CI] Add CMake to docker file and update envvars (#39625)
assignUser Jan 16, 2024
eec4942
GH-39604: [JS] Do not use resizable buffers yet (#39607)
domoritz Jan 16, 2024
d6a8305
GH-39598: [C#] Fix verification script (#39605)
CurtHagenlocher Jan 16, 2024
b233b01
MINOR: [Java] Bump dep.slf4j.version from 1.7.5 to 2.0.11 in /java (#…
dependabot[bot] Jan 16, 2024
a2be302
MINOR: [Java] Bump org.apache.orc:orc-core from 1.7.6 to 1.9.2 in /ja…
dependabot[bot] Jan 16, 2024
4b3de81
GH-39562: [C++][Parquet] Fix crash in test_parquet_dataset_lazy_filte…
pitrou Jan 16, 2024
980e7d7
GH-39628: [C++] Use -j1 for cmake >= 3.28 (#39629)
assignUser Jan 16, 2024
cd3321b
GH-39577: [C++] Fix tail-word access cross buffer boundary in `Compar…
zanmato1984 Jan 16, 2024
f55c0d7
GH-39626: [Docs][R] Update NEWS.md for 15.0.0 (#39627)
assignUser Jan 17, 2024
6eeee3b
GH-36412: [Python][CI] Fix extra deprecation warnings in the pandas n…
AlenkaF Jan 17, 2024
96645eb
GH-39599: [Python] Avoid leaking references to Numpy dtypes (#39636)
pitrou Jan 17, 2024
f15a700
GH-39336: [C++][Parquet] Minor: Style enhancement for parquet::FileMe…
mapleFU Jan 17, 2024
1076229
GH-39654: [Java] Upgrade to Netty 4.1.105.Final (#39655)
jbonofre Jan 17, 2024
3acc2ea
GH-39390: [C++] Thirdparty: bump default zlib to 1.3 (#39391)
mapleFU Jan 17, 2024
4a33d2f
GH-39640: [Docs] Pin pydata-sphinx-theme to 0.14.1 (#39658)
AlenkaF Jan 17, 2024
1dc3b81
GH-39583: [C++] Fix the issue of ExecBatchBuilder when appending cons…
zanmato1984 Jan 17, 2024
ed726fa
MINOR: [CI] Add new collaborator (vibhatha) (#39661)
danepitkin Jan 17, 2024
c170af4
GH-39552: [Go] inclusion of option to use replacer when creating csv …
janiodev Jan 17, 2024
1c49b9f
GH-39656: [Release] Update platform tags for macOS wheels to macosx_1…
raulcd Jan 18, 2024
1f5dece
GH-39683: [Release] Use temporary direction with TEST_BINARY=1 (#39684)
kou Jan 18, 2024
a2aa1c4
GH-39332: [C++] Explicit error in ExecBatchBuilder when appending var…
zanmato1984 Jan 18, 2024
858574d
GH-39466: [Go][Parquet] Align Arrow and Parquet Timestamp Instant/Loc…
joellubi Jan 18, 2024
55afcf0
GH-39672: [Go] Time to Date32/Date64 conversion issues for non-UTC ti…
zeroshade Jan 18, 2024
143a7da
GH-39574: [Go] Enable PollFlightInfo in Flight RPC (#39575)
lidavidm Jan 19, 2024
92682f0
GH-39001: [Java] Modularize remaining modules (#39221)
jduo Jan 19, 2024
05b8f36
GH-39697: [R] Source build should check if offline (#39699)
nealrichardson Jan 19, 2024
cbc7349
MINOR: [Release] Update versions for 16.0.0-SNAPSHOT
raulcd Jan 21, 2024
48d4752
MINOR: [Release] Update .deb package names for 16.0.0
raulcd Jan 21, 2024
bb7f584
MINOR: [Release] Update .deb/.rpm changelogs for 15.0.0
raulcd Jan 21, 2024
26f515a
MINOR: [C#] Update copyright year on built assembly (#39726)
CurtHagenlocher Jan 21, 2024
c33ffb0
GH-39702: [GLib] Add support for time zone in GArrowTimestampDataType…
kou Jan 22, 2024
a7f8140
GH-39579: [Python] fix raising ValueError on _ensure_partitioning (#3…
idailylife Jan 22, 2024
3b73f43
GH-39690: [C++][FlightRPC] Fix nullptr dereference in PollInfo (#39711)
lidavidm Jan 22, 2024
92c5afe
GH-39706: [Archery] Fix `benchmark diff` subcommand (#39733)
pitrou Jan 22, 2024
315e06a
GH-35369: [Docs] Add a missing space after ref:`IPC format <format-ip…
Divyansh200102 Jan 22, 2024
4fc2a70
GH-39718: [C++][FS][Azure] Remove StatusFromErrorResponse as it's not…
felipecrv Jan 22, 2024
f8f6eb9
MINOR: [CI] Bump actions/cache from 3 to 4 (#39741)
dependabot[bot] Jan 22, 2024
6eb6289
MINOR: [Java] Bump joda-time:joda-time from 2.12.5 to 2.12.6 in /java…
dependabot[bot] Jan 22, 2024
067d177
MINOR: [Java] Bump org.apache.maven.plugins:maven-plugin-plugin from …
dependabot[bot] Jan 22, 2024
c27cf66
MINOR: [Java] Bump org.apache.maven.plugins:maven-install-plugin from…
dependabot[bot] Jan 22, 2024
c9ca62a
MINOR: [Java] Bump org.mockito:mockito-inline from 4.11.0 to 5.2.0 in…
dependabot[bot] Jan 22, 2024
78ec4dc
GH-39747: [C++][Parquet] Make BYTE_STREAM_SPLIT routines type-agnosti…
pitrou Jan 23, 2024
015c2d6
MINOR: Revert "GH-39628: [C++] Use -j1 for cmake >= 3.28" (#39736)
pitrou Jan 23, 2024
eed53bb
MINOR: [Docs] Fix formatting of note on Device data interface docs (#…
jorisvandenbossche Jan 23, 2024
7e9f265
GH-38655: [C++] "iso_calendar" kernel returns incorrect results for a…
rok Jan 23, 2024
ae9c0a9
GH-39330: [Java][CI] Fix or suppress spurious errorprone warnings (#3…
vibhatha Jan 23, 2024
3fe598a
GH-39666: [C++] Ensure CSV and JSON benchmarks present a bytes/s or i…
pitrou Jan 23, 2024
df83e50
GH-39667: [C++] Ensure dataset benchmarks present a bytes/s or items/…
pitrou Jan 24, 2024
2e8bd8d
GH-39761: [Docs] Link to Go documentation references outdated documen…
gtomitsuka Jan 24, 2024
c67d026
GH-39732: [Python][CI] Fix test failures with latest/nightly pandas (…
AlenkaF Jan 25, 2024
c97e6c4
GH-39774: [Go] Add public access to PreparedStatement handle (#39775)
abandy Jan 25, 2024
9c0a761
GH-39765: [C++][Dataset] Fix failures in dataset-scanner-benchmark (#…
Cerdore Jan 25, 2024
667e917
MINOR: [C++] Fix conversion warnings on MSVC (#39797)
pitrou Jan 26, 2024
13b2234
GH-39778: [C++] Fix tail-byte access cross buffer boundary in key has…
zanmato1984 Jan 26, 2024
5d7f661
GH-39527: [C++][Parquet] Validate page sizes before truncating to int…
emkornfield Jan 27, 2024
21ffd82
GH-39720: [Swift] Switch reader to use arrow field instead of proto f…
abandy Jan 27, 2024
2fa095c
GH-39815: [C++] Document and micro-optimize ChunkResolver::Resolve() …
felipecrv Jan 29, 2024
800254f
GH-39740: [C++] Fix filter and take kernel for month_day_nano interva…
pitrou Jan 29, 2024
01b8b3c
GH-17211: refresh history for scalar_hash kernel
drin Jan 12, 2024
a788f06
GH-17211: refresh history for updates to key_hash
drin Jan 12, 2024
e5246b4
GH-17211: refresh history for new compute fn infra
drin Jan 12, 2024
7269dba
GH-17211: refresh history of scalar hash benchmark
drin Jan 12, 2024
d7924a7
Merge remote-tracking branch 'drin/ARROW-8991-newfn-scalar-hash' into…
drin Jan 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ github:
description: "Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing"
homepage: https://arrow.apache.org/
collaborators:
- amoeba
- anjakefala
- benibus
- danepitkin
- davisusanibar
- felipecrv
- js8544
- amoeba
- vibhatha

notifications:
commits: commits@arrow.apache.org
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/cpp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: ${{ matrix.image }}-${{ hashFiles('cpp/**') }}
Expand Down Expand Up @@ -214,7 +214,7 @@ jobs:
run: |
echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.ccache-info.outputs.cache-dir }}
key: cpp-ccache-macos-${{ hashFiles('cpp/**') }}
Expand Down Expand Up @@ -310,7 +310,7 @@ jobs:
run: |
echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.ccache-info.outputs.cache-dir }}
key: cpp-ccache-windows-${{ env.CACHE_VERSION }}-${{ hashFiles('cpp/**') }}
Expand Down Expand Up @@ -402,7 +402,7 @@ jobs:
shell: msys2 {0}
run: ci/scripts/msys2_setup.sh cpp
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ccache
key: cpp-ccache-${{ matrix.msystem_lower}}-${{ hashFiles('cpp/**') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
run: |
ci/scripts/util_free_space.sh
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: ubuntu-docs-${{ hashFiles('cpp/**') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs_light.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ jobs:
with:
fetch-depth: 0
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: conda-docs-${{ hashFiles('cpp/**') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
run: |
ci/scripts/util_free_space.sh
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: conda-${{ hashFiles('cpp/**') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/java.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: maven-${{ hashFiles('java/**') }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/java_jni.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
run: |
ci/scripts/util_free_space.sh
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: java-jni-manylinux-2014-${{ hashFiles('cpp/**', 'java/**') }}
Expand Down Expand Up @@ -103,7 +103,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: maven-${{ hashFiles('java/**') }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ jobs:
with:
fetch-depth: 0
- name: Jest Cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: js/.jest-cache
key: js-jest-cache-${{ runner.os }}-${{ hashFiles('js/src/**/*.ts', 'js/test/**/*.ts', 'js/yarn.lock') }}
Expand Down Expand Up @@ -121,7 +121,7 @@ jobs:
with:
fetch-depth: 0
- name: Jest Cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: js/.jest-cache
key: js-jest-cache-${{ runner.os }}-${{ hashFiles('js/src/**/*.ts', 'js/test/**/*.ts', 'js/yarn.lock') }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/matlab.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
shell: bash
run: echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.ccache-info.outputs.cache-dir }}
key: matlab-ccache-ubuntu-${{ hashFiles('cpp/**', 'matlab/**') }}
Expand Down Expand Up @@ -113,7 +113,7 @@ jobs:
shell: bash
run: echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.ccache-info.outputs.cache-dir }}
key: matlab-ccache-macos-${{ hashFiles('cpp/**', 'matlab/**') }}
Expand Down Expand Up @@ -155,7 +155,7 @@ jobs:
shell: bash
run: echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: |
${{ steps.ccache-info.outputs.cache-dir }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: ${{ matrix.cache }}-${{ hashFiles('cpp/**') }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/r.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
# As this key is identical on both matrix builds only one will be able to successfully cache,
Expand Down Expand Up @@ -206,7 +206,7 @@ jobs:
ci/scripts/ccache_setup.sh
echo "CCACHE_DIR=$(cygpath --absolute --windows ccache)" >> $GITHUB_ENV
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ccache
key: r-${{ matrix.config.rtools }}-ccache-mingw-${{ matrix.config.arch }}-${{ hashFiles('cpp/src/**/*.cc','cpp/src/**/*.h)') }}-${{ github.run_id }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/r_nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ jobs:
exit 1
fi
- name: Cache Repo
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: repo
key: r-nightly-${{ github.run_id }}
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ jobs:
fetch-depth: 0
submodules: recursive
- name: Cache Docker Volumes
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1
uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4.0.0
with:
path: .docker
key: ubuntu-${{ matrix.ubuntu }}-ruby-${{ hashFiles('cpp/**') }}
Expand Down Expand Up @@ -167,7 +167,7 @@ jobs:
run: |
echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.ccache-info.outputs.cache-dir }}
key: ruby-ccache-macos-${{ hashFiles('cpp/**') }}
Expand Down Expand Up @@ -252,7 +252,7 @@ jobs:
run: |
ridk exec bash ci\scripts\msys2_setup.sh ruby
- name: Cache ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ccache
key: ruby-ccache-ucrt${{ matrix.mingw-n-bits }}-${{ hashFiles('cpp/**') }}
Expand All @@ -277,7 +277,7 @@ jobs:
Write-Output "gem-dir=$(ridk exec gem env gemdir)" | `
Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
- name: Cache RubyGems
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ${{ steps.rubygems-info.outputs.gem-dir }}
key: ruby-rubygems-ucrt${{ matrix.mingw-n-bits }}-${{ hashFiles('**/Gemfile', 'ruby/*/*.gemspec') }}
Expand Down
109 changes: 99 additions & 10 deletions c_glib/arrow-glib/basic-data-type.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,9 @@ G_BEGIN_DECLS
* data types.
*/

typedef struct GArrowDataTypePrivate_ {
struct GArrowDataTypePrivate {
std::shared_ptr<arrow::DataType> data_type;
} GArrowDataTypePrivate;
};

enum {
PROP_DATA_TYPE = 1
Expand Down Expand Up @@ -1113,9 +1113,71 @@ garrow_date64_data_type_new(void)
}


G_DEFINE_TYPE(GArrowTimestampDataType,
garrow_timestamp_data_type,
GARROW_TYPE_TEMPORAL_DATA_TYPE)
struct GArrowTimestampDataTypePrivate {
GTimeZone *time_zone;
};

enum {
PROP_TIME_ZONE = 1
};

G_DEFINE_TYPE_WITH_PRIVATE(GArrowTimestampDataType,
garrow_timestamp_data_type,
GARROW_TYPE_TEMPORAL_DATA_TYPE)

#define GARROW_TIMESTAMP_DATA_TYPE_GET_PRIVATE(object) \
static_cast<GArrowTimestampDataTypePrivate *>( \
garrow_timestamp_data_type_get_instance_private( \
GARROW_TIMESTAMP_DATA_TYPE(object)))

static void
garrow_timestamp_data_type_dispose(GObject *object)
{
auto priv = GARROW_TIMESTAMP_DATA_TYPE_GET_PRIVATE(object);

if (priv->time_zone) {
g_time_zone_unref(priv->time_zone);
priv->time_zone = nullptr;
}

G_OBJECT_CLASS(garrow_timestamp_data_type_parent_class)->dispose(object);
}

static void
garrow_timestamp_data_type_set_property(GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
auto priv = GARROW_TIMESTAMP_DATA_TYPE_GET_PRIVATE(object);

switch (prop_id) {
case PROP_TIME_ZONE:
priv->time_zone = static_cast<GTimeZone *>(g_value_dup_boxed(value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
break;
}
}

static void
garrow_timestamp_data_type_get_property(GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
auto priv = GARROW_TIMESTAMP_DATA_TYPE_GET_PRIVATE(object);

switch (prop_id) {
case PROP_TIME_ZONE:
g_value_set_boxed(value, priv->time_zone);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
break;
}
}

static void
garrow_timestamp_data_type_init(GArrowTimestampDataType *object)
Expand All @@ -1125,11 +1187,32 @@ garrow_timestamp_data_type_init(GArrowTimestampDataType *object)
static void
garrow_timestamp_data_type_class_init(GArrowTimestampDataTypeClass *klass)
{
auto gobject_class = G_OBJECT_CLASS(klass);
gobject_class->dispose = garrow_timestamp_data_type_dispose;
gobject_class->set_property = garrow_timestamp_data_type_set_property;
gobject_class->get_property = garrow_timestamp_data_type_get_property;

GParamSpec *spec;
/**
* GArrowTimestampDataType:time-zone:
*
* The time zone of this data type.
*
* Since: 16.0.0
*/
spec = g_param_spec_boxed("time-zone",
"Time zone",
"The time zone of this data type",
G_TYPE_TIME_ZONE,
static_cast<GParamFlags>(G_PARAM_READWRITE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property(gobject_class, PROP_TIME_ZONE, spec);
}

/**
* garrow_timestamp_data_type_new:
* @unit: The unit of the timestamp data.
* @time_zone: (nullable): The time zone of the timestamp data.
*
* Returns: A newly created the number of
* seconds/milliseconds/microseconds/nanoseconds since UNIX epoch in
Expand All @@ -1138,30 +1221,36 @@ garrow_timestamp_data_type_class_init(GArrowTimestampDataTypeClass *klass)
* Since: 0.7.0
*/
GArrowTimestampDataType *
garrow_timestamp_data_type_new(GArrowTimeUnit unit)
garrow_timestamp_data_type_new(GArrowTimeUnit unit,
GTimeZone *time_zone)
{
auto arrow_unit = garrow_time_unit_to_raw(unit);
auto arrow_data_type = arrow::timestamp(arrow_unit);
std::string arrow_timezone;
if (time_zone) {
arrow_timezone = g_time_zone_get_identifier(time_zone);
}
auto arrow_data_type = arrow::timestamp(arrow_unit, arrow_timezone);
auto data_type =
GARROW_TIMESTAMP_DATA_TYPE(g_object_new(GARROW_TYPE_TIMESTAMP_DATA_TYPE,
"data-type", &arrow_data_type,
"time-zone", time_zone,
NULL));
return data_type;
}

/**
* garrow_timestamp_data_type_get_unit:
* @timestamp_data_type: The #GArrowTimestampDataType.
* @data_type: The #GArrowTimestampDataType.
*
* Returns: The unit of the timestamp data type.
*
* Since: 0.8.0
*/
GArrowTimeUnit
garrow_timestamp_data_type_get_unit(GArrowTimestampDataType *timestamp_data_type)
garrow_timestamp_data_type_get_unit(GArrowTimestampDataType *data_type)
{
const auto arrow_data_type =
garrow_data_type_get_raw(GARROW_DATA_TYPE(timestamp_data_type));
garrow_data_type_get_raw(GARROW_DATA_TYPE(data_type));
const auto arrow_timestamp_data_type =
std::static_pointer_cast<arrow::TimestampType>(arrow_data_type);
return garrow_time_unit_from_raw(arrow_timestamp_data_type->unit());
Expand Down
6 changes: 4 additions & 2 deletions c_glib/arrow-glib/basic-data-type.h
Original file line number Diff line number Diff line change
Expand Up @@ -425,9 +425,11 @@ struct _GArrowTimestampDataTypeClass
GArrowTemporalDataTypeClass parent_class;
};

GArrowTimestampDataType *garrow_timestamp_data_type_new (GArrowTimeUnit unit);
GArrowTimestampDataType *
garrow_timestamp_data_type_new(GArrowTimeUnit unit,
GTimeZone *time_zone);
GArrowTimeUnit
garrow_timestamp_data_type_get_unit (GArrowTimestampDataType *timestamp_data_type);
garrow_timestamp_data_type_get_unit(GArrowTimestampDataType *data_type);


#define GARROW_TYPE_TIME_DATA_TYPE (garrow_time_data_type_get_type())
Expand Down
Loading