Apache Arrow 0.5.0 (2017年7月23日)
这是一个主要版本,扩展了受支持语言的功能,并增加了 Java 和 C++ 之间的集成测试覆盖率。
在发布博客文章中阅读更多内容。
下载
贡献者
$ git shortlog -sn apache-arrow-0.4.1..apache-arrow-0.5.0
42 Wes McKinney
22 Uwe L. Korn
12 Kouhei Sutou
9 Max Risuhin
9 Phillip Cloud
6 Philipp Moritz
5 Steven Phillips
3 Julien Le Dem
2 Bryan Cutler
2 Kengo Seki
2 Max Risukhin
2 fjetter
1 Antony Mayi
1 Deepak Majeti
1 Fang Zheng
1 Hideo Hattori
1 Holden Karau
1 Itai Incze
1 Jeff Knupp
1 LynnYuan
1 Mark Lavrynenko
1 Michael König
1 Robert Nishihara
1 Sudheesh Katkam
1 Zahari
1 vkorukanti
变更日志
新功能和改进
- ARROW-1041 - [Python] 支持在 Parquet 文件目录上使用 read_pandas
- ARROW-1048 - 允许源代码发布脚本使用用户的 LD_LIBRARY_PATH
- ARROW-1052 - Arrow 0.5.0 发布
- ARROW-1073 - C++: 自适应整数构建器
- ARROW-1095 - [网站] 添加 Arrow 图标资源
- ARROW-1100 - [Python] 为 NativeFile 实例添加 “mode” 属性
- ARROW-1102 - 将 MessageSerializer.serializeMessage() 设为公共
- ARROW-111 - [C++] 将静态分析器添加到工具链中,以验证 Status 返回值的检查
- ARROW-1120 - [Python] 添加对 int96 的写入支持
- ARROW-1122 - [网站] 来自 turbodbc 的关于 Arrow + ODBC 的客座博文
- ARROW-1123 - C++: 将 jemalloc 设为默认分配器
- ARROW-1135 - 将 Travis CI clang 构建升级为使用 LLVM 4.0
- ARROW-1137 - Python: 确保全 None 列的 Pandas 往返
- ARROW-1142 - [C++] 从 parquet-cpp 迁移压缩库工具链
- ARROW-1145 - [GLib] 添加 get_values()
- ARROW-1146 - 为 src/plasma/format 中的 *_generated.h 文件添加 .gitignore
- ARROW-1148 - [C++] 将最低 CMake 版本提升至 3.2
- ARROW-1151 - [C++] 将 gcc 分支预测添加到状态检查宏
- ARROW-1154 - [C++] 从 parquet-cpp 迁移更多计算实用程序代码
- ARROW-1160 - C++: 实现 DictionaryBuilder
- ARROW-1165 - [C++] 重构 PythonDecimalToArrowDecimal 以不使用模板
- ARROW-1172 - [C++] 将 unique_ptr 与数组构建器类一起使用
- ARROW-1183 - [Python] 在 to_pandas 中实现时间类型转换
- ARROW-1185 - [C++] 清理 arrow::Status 实现,为 clang 添加 warn_unused_result 属性
- ARROW-1187 - 序列化具有 None 列的 DataFrame
- ARROW-1193 - [C++] 支持 arrow_python.so 的 pkg-config
- ARROW-1196 - [C++] Appveyor 为源代码的调试/发布版本构建单独的作业;使用 conda 工具链构建;使用 NMake Makefiles 生成器构建
- ARROW-1198 - Python: 添加公共 C++ API 以解包 PyArrow 对象
- ARROW-1199 - [C++] 为通用数组数据引入可变 POD 结构
- ARROW-1202 - 从状态宏中删除分号
- ARROW-1212 - [GLib] 添加 garrow_binary_array_get_offsets_buffer()
- ARROW-1214 - [Python] 添加类/函数以允许在流读取器类之外处理流消息组件
- ARROW-1217 - [GLib] 添加基于 GInputStream 的 arrow::io::RandomAccessFile
- ARROW-1220 - [C++] 标准化第三方库的 *_HOME cmake 脚本变量的使用
- ARROW-1221 - [C++] 固定 clang-format 版本
- ARROW-1227 - [GLib] 支持 GOutputStream
- ARROW-1228 - [GLib] 测试文件名应与目标类名相同
- ARROW-1229 - [GLib] 遵循 Reader API 更改 (get -> read)
- ARROW-1233 - [C++] 验证 cmake 脚本是否从工具链构建中的正确位置解析第三方链接库
- ARROW-460 - [C++] 为 DictionaryArray 实现 JSON 往返
- ARROW-462 - [C++] 在非嵌套基元类型和等效的 DictionaryArray 之间实现内存转换
- ARROW-575 - Python: 在 Pandas 中自动检测嵌套列表和嵌套 numpy 数组
- ARROW-597 - [Python] 添加便捷函数以从 StreamReader 或 FileReader 可以读取的任何对象生成 DataFrame
- ARROW-599 - [C++] 将 LZ4 编解码器添加到第三方工具链
- ARROW-600 - [C++] 将 ZSTD 编解码器添加到第三方工具链
- ARROW-692 - Java<->C++ 字典编码向量的集成测试
- ARROW-693 - [Java] 为字典向量添加 JSON 支持
- ARROW-742 - 在执行 std::wstring_convert 期间处理异常
- ARROW-834 - [Python] 支持从 Python 可迭代对象创建 Arrow 数组
- ARROW-915 - Struct Array 读取支持有限
- ARROW-935 - [Java] 在 Travis CI 中构建 Javadoc
- ARROW-960 - [Python] 添加 macOS + Homebrew 的源代码构建指南
- ARROW-962 - [Python] 为 FileReader 添加 schema 属性
- ARROW-966 - [Python] pyarrow.list_ 也应该接受 Field 实例
- ARROW-978 - [Python] 将 sphinx-bootstrap-theme 用于 Sphinx 文档
错误修复
- ARROW-1074 - from_pandas 不将 ndarray 转换为 list
- ARROW-1079 - [Python] Parquet 接口应忽略空的“私有”目录
- ARROW-1081 - C++: arrow::test::TestBase::MakePrimitive 不填充 null_bitmap
- ARROW-1096 - [C++] 在 Windows 上内存映射超过 4GB 的文件失败
- ARROW-1097 - 读取张量需要以可写模式打开文件
- ARROW-1098 - 文档错误?
- ARROW-1101 - UnionListWriter 未实现接口 ScalarWriter 上的所有方法
- ARROW-1103 - [Python] 如果存在,则使用来自公共 _metadata Parquet 文件的 pandas 元数据
- ARROW-1107 - [JAVA] NullableMapVector getField() 应返回可为空的类型
- ARROW-1108 - 在 getActualConsumedMemory() 和 getPossibleConsumedMemory() 中检查 ArrowBuf 是否为空缓冲区
- ARROW-1109 - [JAVA] 当 readerIndex 不为 0 时 transferOwnership 失败
- ARROW-1110 - [JAVA] 使 union 向量命名保持一致
- ARROW-1111 - [JAVA] 使对齐缓冲区可选,并允许 -1 表示未知的空计数
- ARROW-1112 - [JAVA] 在加载时为 VarLength 和 List 向量设置 lastSet
- ARROW-1113 - [C++] gflags EP 构建在后续调用 make 或 ninja build 时被触发(作为无操作)
- ARROW-1115 - [C++] 为 ccache 使用绝对路径
- ARROW-1117 - [文档] GLib README 中的次要问题
- ARROW-1124 - [Python] pyarrow 需要依赖于 numpy>=1.10 (而不是 1.9)
- ARROW-1125 - Python: Table.from_pandas 在部分模式上不再起作用
- ARROW-1128 - [文档] 构建 wheel 的命令呈现不正确
- ARROW-1129 - [C++] 修复 ARROW-742 导致的 Linux 工具链构建回归
- ARROW-1131 - Python: Parquet 单元测试始终被跳过
- ARROW-1132 - [Python] 无法将包含重复值的 MultiIndex 的 pandas DataFrame 写入 parquet
- ARROW-1136 - [C++/Python] 空流上的段错误
- ARROW-1138 - Travis: 使用 OpenJDK7 而不是 OracleJDK7
- ARROW-1139 - [C++] dlmalloc 不允许使用 clang 4 或 gcc 7.1.1 构建 arrow
- ARROW-1141 - 导入时出现 libjemalloc.so.2: cannot allocate memory in static TLS block
- ARROW-1143 - C++: 修复 NullArray 的比较
- ARROW-1144 - [C++] 删除未使用的变量
- ARROW-1147 - [C++] 允许在 plasma 中可选地 vendoring flatbuffers
- ARROW-1150 - [C++] AdaptiveIntBuilder 在 MSVC 上的编译器警告
- ARROW-1152 - [Cython] read_tensor 应该适用于可读文件
- ARROW-1155 - 运行 pa.Int16Value() 时出现段错误
- ARROW-1157 - C++/Python: 十进制模板未在 OSX 上正确导出
- ARROW-1159 - [C++] 第三方用户无法从 Arrow 头文件中的内联函数访问静态数据成员
- ARROW-1162 - 空列表之间的转换不应调用回调
- ARROW-1166 - Struct 类型示例中的错误以及 Layout.md 中缺少的引用
- ARROW-1167 - [Python] 当列数据超过 2GB 时,在 Table.from_pandas 中创建分块的 BinaryArray
- ARROW-1168 - [Python] pandas 元数据可能包含“混合”数据类型
- ARROW-1169 - C++: jemalloc externalproject 无法使用 CMake 的 ninja 生成器构建
- ARROW-1170 - C++: ARROW_JEMALLOC=OFF 会破坏单元测试的链接
- ARROW-1174 - [GLib] 调查 ListArray glib 测试失败的根本原因
- ARROW-1177 - [C++] 检测 ListBuilder::Append 中的 int32 溢出
- ARROW-1179 - C++: 添加缺少的虚析构函数
- ARROW-1180 - [GLib] garrow_tensor_get_dimension_name() 返回无效地址
- ARROW-1181 - [Python] 如果未启用,Parquet 测试将失败
- ARROW-1182 - C++: 为 zlib 和 zstd 指定 BUILD_BYPRODUCTS
- ARROW-1186 - [C++] 启用使用构建 Parquet 库所需的最少依赖项来构建 arrow 的选项
- ARROW-1188 - 尝试序列化具有仅空值的 Categorical 列的 DataFrame 时出现段错误
- ARROW-1190 - VectorLoader 会损坏具有重复名称的向量
- ARROW-1191 - [JAVA] 为复杂读取器实现 getField() 方法
- ARROW-1194 - 使用 pa.get_record_batch_size 获取记录批大小返回的大小对于 pandas DataFrame 来说太小。
- ARROW-1197 - [GLib] 缺少 record_batch.hpp Inclusion
- ARROW-1200 - [C++] DictionaryBuilder 应该对索引使用有符号整数
- ARROW-1201 - [Python] 不完整的 Python 类型会导致在 repr-ing 时出现核心转储
- ARROW-1203 - [C++] 禁止 BinaryBuilder 追加大于 int32_t 最大值的字节字符串
- ARROW-1205 - C++: ArrayLoader 中对类型对象的引用可能导致段错误。
- ARROW-1206 - [C++] 使 MSVC 构建能够在禁用某些压缩库支持的情况下工作
- ARROW-1208 - [C++] 使用 conda-forge 中的 ZSTD 库进行工具链构建失败
- ARROW-1215 - [Python] API 参考中的类方法
- ARROW-1216 - 在 Python 2 上无法从 Arrow 缓冲区创建 Numpy 数组
- ARROW-1218 - 如果所有压缩库都被禁用,Arrow 将无法编译
- ARROW-1222 - [Python] pyarrow.array 为不支持的 Python 对象数组返回 NullArray
- ARROW-1223 - [GLib] 修复返回包装对象的函数名称
- ARROW-1235 - [C++] macOS 链接器在使用 operator« 和 std::ostream 时失败
- ARROW-1236 - 导出的 pkg-config 文件中的库路径不正确
- ARROW-601 - 加载 Parquet 时不支持某些逻辑类型
- ARROW-784 - 清理 Windows 上 Arrow 中的第三方工具链支持
- ARROW-992 - [Python] 就地开发构建没有 version