<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above meta tags *must* come first in the head; any other head content must come *after* these tags -->
    
    <title>0.4.1 Release | Apache Arrow</title>
    

    <!-- Begin Jekyll SEO tag v2.8.0 -->
<meta name="generator" content="Jekyll v4.3.3" />
<meta property="og:title" content="0.4.1 Release" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="Apache Arrow 0.4.1 (9 June 2017) This is primarily a bug fix release, but also includes some packaging and documentation improvements. Read more in the release blog post. Download Source Artifacts Git tag 46315431 Changelog New Features and Improvements ARROW-1020 - [Format] Add additional language to Schema.fbs to clarify naive vs. localized Timestamp values ARROW-1034 - [Python] Enable creation of binary wheels on Windows / MSVC ARROW-1049 - [java] vector template cleanup ARROW-1060 - [Python] Add unit test for ARROW-1053 ARROW-1063 - [Website] Blog post and website updates for 0.4.0 release ARROW-1068 - [Python] Create external repo with appveyor.yml configured for building Python wheel installers ARROW-1069 - Add instructions for publishing maven artifacts ARROW-1078 - [Python] Account for PARQUET-967 ARROW-1080 - C++: Add tutorial about converting to/from row-wise representation ARROW-1082 - [GLib] Add CI on macOS ARROW-1084 - Implementations of BufferAllocator should handle Netty’s OutOfDirectMemoryError ARROW-897 - [GLib] Build arrow-glib as a separate build in the Travis CI build matrix ARROW-986 - [Format] Update IPC.md to account for dictionary batches ARROW-990 - [JS] Add tslint support for linting TypeScript Bug Fixes ARROW-1039 - Python: pyarrow.Filesystem.read_parquet causing error if nthreads&gt;1 ARROW-1050 - [C++] Export arrow::ValidateArray ARROW-1051 - [Python] If pyarrow.parquet fails to import due to a shared library ABI conflict, the test_parquet.py tests silently do not run ARROW-1056 - [Python] Parquet+HDFS test failure due to writing pandas index ARROW-1057 - Fix cmake warning and msvc debug asserts ARROW-1062 - [GLib] Examples use old API ARROW-1066 - remove warning on feather for pandas &gt;= 0.20.1 ARROW-1070 - [C++] Feather files for date/time types should be written with the physical types ARROW-1075 - [GLib] Build error on macOS ARROW-1085 - [java] Follow up on template cleanup. Missing method for IntervalYear ARROW-1086 - [Python] pyarrow 0.4.0 on pypi is missing pxd files ARROW-1088 - [Python] test_unicode_filename test fails when unicode filenames aren’t supported by system ARROW-1090 - [Python] build_ext usability ARROW-1091 - Decimal scale and precision are flipped ARROW-1092 - More Decimal and scale flipped follow-up ARROW-1094 - [C++] Incomplete buffer reads in arrow::io::ReadableFile should exactly truncate returned buffer ARROW-424 - [C++] Threadsafety in arrow/io/hdfs.h Contributors $ git shortlog -sn apache-arrow-0.4.0..apache-arrow-0.4.1 16 Wes McKinney 5 Julien Le Dem 4 Kouhei Sutou 2 Jacob Scott 1 Brian Hulette 1 Jeff Knupp 1 Jeff Reback 1 Max Risuhin 1 Phillip Cloud 1 Tony Kelman 1 Uwe L. Korn 1 adeneche 1 kimanjun 1 rip.nsk" />
<meta property="og:description" content="Apache Arrow 0.4.1 (9 June 2017) This is primarily a bug fix release, but also includes some packaging and documentation improvements. Read more in the release blog post. Download Source Artifacts Git tag 46315431 Changelog New Features and Improvements ARROW-1020 - [Format] Add additional language to Schema.fbs to clarify naive vs. localized Timestamp values ARROW-1034 - [Python] Enable creation of binary wheels on Windows / MSVC ARROW-1049 - [java] vector template cleanup ARROW-1060 - [Python] Add unit test for ARROW-1053 ARROW-1063 - [Website] Blog post and website updates for 0.4.0 release ARROW-1068 - [Python] Create external repo with appveyor.yml configured for building Python wheel installers ARROW-1069 - Add instructions for publishing maven artifacts ARROW-1078 - [Python] Account for PARQUET-967 ARROW-1080 - C++: Add tutorial about converting to/from row-wise representation ARROW-1082 - [GLib] Add CI on macOS ARROW-1084 - Implementations of BufferAllocator should handle Netty’s OutOfDirectMemoryError ARROW-897 - [GLib] Build arrow-glib as a separate build in the Travis CI build matrix ARROW-986 - [Format] Update IPC.md to account for dictionary batches ARROW-990 - [JS] Add tslint support for linting TypeScript Bug Fixes ARROW-1039 - Python: pyarrow.Filesystem.read_parquet causing error if nthreads&gt;1 ARROW-1050 - [C++] Export arrow::ValidateArray ARROW-1051 - [Python] If pyarrow.parquet fails to import due to a shared library ABI conflict, the test_parquet.py tests silently do not run ARROW-1056 - [Python] Parquet+HDFS test failure due to writing pandas index ARROW-1057 - Fix cmake warning and msvc debug asserts ARROW-1062 - [GLib] Examples use old API ARROW-1066 - remove warning on feather for pandas &gt;= 0.20.1 ARROW-1070 - [C++] Feather files for date/time types should be written with the physical types ARROW-1075 - [GLib] Build error on macOS ARROW-1085 - [java] Follow up on template cleanup. Missing method for IntervalYear ARROW-1086 - [Python] pyarrow 0.4.0 on pypi is missing pxd files ARROW-1088 - [Python] test_unicode_filename test fails when unicode filenames aren’t supported by system ARROW-1090 - [Python] build_ext usability ARROW-1091 - Decimal scale and precision are flipped ARROW-1092 - More Decimal and scale flipped follow-up ARROW-1094 - [C++] Incomplete buffer reads in arrow::io::ReadableFile should exactly truncate returned buffer ARROW-424 - [C++] Threadsafety in arrow/io/hdfs.h Contributors $ git shortlog -sn apache-arrow-0.4.0..apache-arrow-0.4.1 16 Wes McKinney 5 Julien Le Dem 4 Kouhei Sutou 2 Jacob Scott 1 Brian Hulette 1 Jeff Knupp 1 Jeff Reback 1 Max Risuhin 1 Phillip Cloud 1 Tony Kelman 1 Uwe L. Korn 1 adeneche 1 kimanjun 1 rip.nsk" />
<link rel="canonical" href="https://arrow.apache.org/release/0.4.1.html" />
<meta property="og:url" content="https://arrow.apache.org/release/0.4.1.html" />
<meta property="og:site_name" content="Apache Arrow" />
<meta property="og:image" content="https://arrow.apache.org/img/arrow-logo_horizontal_black-txt_white-bg.png" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2024-04-29T17:30:49-04:00" />
<meta name="twitter:card" content="summary_large_image" />
<meta property="twitter:image" content="https://arrow.apache.org/img/arrow-logo_horizontal_black-txt_white-bg.png" />
<meta property="twitter:title" content="0.4.1 Release" />
<meta name="twitter:site" content="@ApacheArrow" />
<script type="application/ld+json">
{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2024-04-29T17:30:49-04:00","datePublished":"2024-04-29T17:30:49-04:00","description":"Apache Arrow 0.4.1 (9 June 2017) This is primarily a bug fix release, but also includes some packaging and documentation improvements. Read more in the release blog post. Download Source Artifacts Git tag 46315431 Changelog New Features and Improvements ARROW-1020 - [Format] Add additional language to Schema.fbs to clarify naive vs. localized Timestamp values ARROW-1034 - [Python] Enable creation of binary wheels on Windows / MSVC ARROW-1049 - [java] vector template cleanup ARROW-1060 - [Python] Add unit test for ARROW-1053 ARROW-1063 - [Website] Blog post and website updates for 0.4.0 release ARROW-1068 - [Python] Create external repo with appveyor.yml configured for building Python wheel installers ARROW-1069 - Add instructions for publishing maven artifacts ARROW-1078 - [Python] Account for PARQUET-967 ARROW-1080 - C++: Add tutorial about converting to/from row-wise representation ARROW-1082 - [GLib] Add CI on macOS ARROW-1084 - Implementations of BufferAllocator should handle Netty’s OutOfDirectMemoryError ARROW-897 - [GLib] Build arrow-glib as a separate build in the Travis CI build matrix ARROW-986 - [Format] Update IPC.md to account for dictionary batches ARROW-990 - [JS] Add tslint support for linting TypeScript Bug Fixes ARROW-1039 - Python: pyarrow.Filesystem.read_parquet causing error if nthreads&gt;1 ARROW-1050 - [C++] Export arrow::ValidateArray ARROW-1051 - [Python] If pyarrow.parquet fails to import due to a shared library ABI conflict, the test_parquet.py tests silently do not run ARROW-1056 - [Python] Parquet+HDFS test failure due to writing pandas index ARROW-1057 - Fix cmake warning and msvc debug asserts ARROW-1062 - [GLib] Examples use old API ARROW-1066 - remove warning on feather for pandas &gt;= 0.20.1 ARROW-1070 - [C++] Feather files for date/time types should be written with the physical types ARROW-1075 - [GLib] Build error on macOS ARROW-1085 - [java] Follow up on template cleanup. Missing method for IntervalYear ARROW-1086 - [Python] pyarrow 0.4.0 on pypi is missing pxd files ARROW-1088 - [Python] test_unicode_filename test fails when unicode filenames aren’t supported by system ARROW-1090 - [Python] build_ext usability ARROW-1091 - Decimal scale and precision are flipped ARROW-1092 - More Decimal and scale flipped follow-up ARROW-1094 - [C++] Incomplete buffer reads in arrow::io::ReadableFile should exactly truncate returned buffer ARROW-424 - [C++] Threadsafety in arrow/io/hdfs.h Contributors $ git shortlog -sn apache-arrow-0.4.0..apache-arrow-0.4.1 16 Wes McKinney 5 Julien Le Dem 4 Kouhei Sutou 2 Jacob Scott 1 Brian Hulette 1 Jeff Knupp 1 Jeff Reback 1 Max Risuhin 1 Phillip Cloud 1 Tony Kelman 1 Uwe L. Korn 1 adeneche 1 kimanjun 1 rip.nsk","headline":"0.4.1 Release","image":"https://arrow.apache.org/img/arrow-logo_horizontal_black-txt_white-bg.png","mainEntityOfPage":{"@type":"WebPage","@id":"https://arrow.apache.org/release/0.4.1.html"},"publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://arrow.apache.org/img/logo.png"}},"url":"https://arrow.apache.org/release/0.4.1.html"}</script>
<!-- End Jekyll SEO tag -->


    <!-- favicons -->
    <link rel="icon" type="image/png" sizes="16x16" href="/img/favicon-16x16.png" id="light1">
    <link rel="icon" type="image/png" sizes="32x32" href="/img/favicon-32x32.png" id="light2">
    <link rel="apple-touch-icon" type="image/png" sizes="180x180" href="/img/apple-touch-icon.png" id="light3">
    <link rel="apple-touch-icon" type="image/png" sizes="120x120" href="/img/apple-touch-icon-120x120.png" id="light4">
    <link rel="apple-touch-icon" type="image/png" sizes="76x76" href="/img/apple-touch-icon-76x76.png" id="light5">
    <link rel="apple-touch-icon" type="image/png" sizes="60x60" href="/img/apple-touch-icon-60x60.png" id="light6">
    <!-- dark mode favicons -->
    <link rel="icon" type="image/png" sizes="16x16" href="/img/favicon-16x16-dark.png" id="dark1">
    <link rel="icon" type="image/png" sizes="32x32" href="/img/favicon-32x32-dark.png" id="dark2">
    <link rel="apple-touch-icon" type="image/png" sizes="180x180" href="/img/apple-touch-icon-dark.png" id="dark3">
    <link rel="apple-touch-icon" type="image/png" sizes="120x120" href="/img/apple-touch-icon-120x120-dark.png" id="dark4">
    <link rel="apple-touch-icon" type="image/png" sizes="76x76" href="/img/apple-touch-icon-76x76-dark.png" id="dark5">
    <link rel="apple-touch-icon" type="image/png" sizes="60x60" href="/img/apple-touch-icon-60x60-dark.png" id="dark6">

    <script>
      // Switch to the dark-mode favicons if prefers-color-scheme: dark
      function onUpdate() {
        light1 = document.querySelector('link#light1');
        light2 = document.querySelector('link#light2');
        light3 = document.querySelector('link#light3');
        light4 = document.querySelector('link#light4');
        light5 = document.querySelector('link#light5');
        light6 = document.querySelector('link#light6');

        dark1 = document.querySelector('link#dark1');
        dark2 = document.querySelector('link#dark2');
        dark3 = document.querySelector('link#dark3');
        dark4 = document.querySelector('link#dark4');
        dark5 = document.querySelector('link#dark5');
        dark6 = document.querySelector('link#dark6');

        if (matcher.matches) {
          light1.remove();
          light2.remove();
          light3.remove();
          light4.remove();
          light5.remove();
          light6.remove();
          document.head.append(dark1);
          document.head.append(dark2);
          document.head.append(dark3);
          document.head.append(dark4);
          document.head.append(dark5);
          document.head.append(dark6);
        } else {
          dark1.remove();
          dark2.remove();
          dark3.remove();
          dark4.remove();
          dark5.remove();
          dark6.remove();
          document.head.append(light1);
          document.head.append(light2);
          document.head.append(light3);
          document.head.append(light4);
          document.head.append(light5);
          document.head.append(light6);
        }
      }
      matcher = window.matchMedia('(prefers-color-scheme: dark)');
      matcher.addListener(onUpdate);
      onUpdate();
    </script>

    <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">

    <link href="/css/main.css" rel="stylesheet">
    <link href="/css/syntax.css" rel="stylesheet">
    <script src="/javascript/main.js"></script>
    
    <!-- Matomo -->
<script>
  var _paq = window._paq = window._paq || [];
  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
  /* We explicitly disable cookie tracking to avoid privacy issues */
  _paq.push(['disableCookies']);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var u="https://analytics.apache.org/";
    _paq.push(['setTrackerUrl', u+'matomo.php']);
    _paq.push(['setSiteId', '20']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
  })();
</script>
<!-- End Matomo Code -->

    
  </head>


<body class="wrap">
  <header>
    <nav class="navbar navbar-expand-md navbar-dark bg-dark">
  
  <a class="navbar-brand no-padding" href="/"><img src="/img/arrow-inverse-300px.png" height="40px"/></a>
  
   <button class="navbar-toggler ml-auto" type="button" data-toggle="collapse" data-target="#arrow-navbar" aria-controls="arrow-navbar" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse justify-content-end" id="arrow-navbar">
      <ul class="nav navbar-nav">
        <li class="nav-item"><a class="nav-link" href="/overview/" role="button" aria-haspopup="true" aria-expanded="false">Overview</a></li>
        <li class="nav-item"><a class="nav-link" href="/faq/" role="button" aria-haspopup="true" aria-expanded="false">FAQ</a></li>
        <li class="nav-item"><a class="nav-link" href="/blog" role="button" aria-haspopup="true" aria-expanded="false">Blog</a></li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#"
             id="navbarDropdownGetArrow" role="button" data-toggle="dropdown"
             aria-haspopup="true" aria-expanded="false">
             Get Arrow
          </a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdownGetArrow">
            <a class="dropdown-item" href="/install/">Install</a>
            <a class="dropdown-item" href="/release/">Releases</a>
            <a class="dropdown-item" href="https://github.com/apache/arrow">Source Code</a>
          </div>
        </li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#"
             id="navbarDropdownDocumentation" role="button" data-toggle="dropdown"
             aria-haspopup="true" aria-expanded="false">
             Documentation
          </a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdownDocumentation">
            <a class="dropdown-item" href="/docs">Project Docs</a>
            <a class="dropdown-item" href="/docs/format/Columnar.html">Format</a>
            <hr/>
            <a class="dropdown-item" href="/docs/c_glib">C GLib</a>
            <a class="dropdown-item" href="/docs/cpp">C++</a>
            <a class="dropdown-item" href="https://github.com/apache/arrow/blob/main/csharp/README.md">C#</a>
            <a class="dropdown-item" href="https://godoc.org/github.com/apache/arrow/go/arrow">Go</a>
            <a class="dropdown-item" href="/docs/java">Java</a>
            <a class="dropdown-item" href="/docs/js">JavaScript</a>
            <a class="dropdown-item" href="/julia/">Julia</a>
            <a class="dropdown-item" href="https://github.com/apache/arrow/blob/main/matlab/README.md">MATLAB</a>
            <a class="dropdown-item" href="/docs/python">Python</a>
            <a class="dropdown-item" href="/docs/r">R</a>
            <a class="dropdown-item" href="https://github.com/apache/arrow/blob/main/ruby/README.md">Ruby</a>
            <a class="dropdown-item" href="https://docs.rs/arrow/latest">Rust</a>
          </div>
        </li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#"
             id="navbarDropdownSubprojects" role="button" data-toggle="dropdown"
             aria-haspopup="true" aria-expanded="false">
             Subprojects
          </a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdownSubprojects">
            <a class="dropdown-item" href="/adbc">ADBC</a>
            <a class="dropdown-item" href="/docs/format/Flight.html">Arrow Flight</a>
            <a class="dropdown-item" href="/docs/format/FlightSql.html">Arrow Flight SQL</a>
            <a class="dropdown-item" href="https://datafusion.apache.org">DataFusion</a>
            <a class="dropdown-item" href="/nanoarrow">nanoarrow</a>
          </div>
        </li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#"
             id="navbarDropdownCommunity" role="button" data-toggle="dropdown"
             aria-haspopup="true" aria-expanded="false">
             Community
          </a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdownCommunity">
            <a class="dropdown-item" href="/community/">Communication</a>
            <a class="dropdown-item" href="/docs/developers/index.html">Contributing</a>
            <a class="dropdown-item" href="https://github.com/apache/arrow/issues">Issue Tracker</a>
            <a class="dropdown-item" href="/committers/">Governance</a>
            <a class="dropdown-item" href="/use_cases/">Use Cases</a>
            <a class="dropdown-item" href="/powered_by/">Powered By</a>
            <a class="dropdown-item" href="/visual_identity/">Visual Identity</a>
            <a class="dropdown-item" href="/security/">Security</a>
            <a class="dropdown-item" href="https://www.apache.org/foundation/policies/conduct.html">Code of Conduct</a>
          </div>
        </li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#"
             id="navbarDropdownASF" role="button" data-toggle="dropdown"
             aria-haspopup="true" aria-expanded="false">
             ASF Links
          </a>
          <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownASF">
            <a class="dropdown-item" href="https://www.apache.org/">ASF Website</a>
            <a class="dropdown-item" href="https://www.apache.org/licenses/">License</a>
            <a class="dropdown-item" href="https://www.apache.org/foundation/sponsorship.html">Donate</a>
            <a class="dropdown-item" href="https://www.apache.org/foundation/thanks.html">Thanks</a>
            <a class="dropdown-item" href="https://www.apache.org/security/">Security</a>
          </div>
        </li>
      </ul>
    </div><!-- /.navbar-collapse -->
  </nav>

  </header>

  <div class="container p-4 pt-5">
    <main role="main" class="pb-5">
      <!--

-->

<h1 id="apache-arrow-041-9-june-2017">Apache Arrow 0.4.1 (9 June 2017)</h1>

<p>This is primarily a bug fix release, but also includes some packaging and
documentation improvements.</p>

<p>Read more in the <a href="https://arrow.apache.org/blog/2017/06/14/0.4.1-release/">release blog post</a>.</p>

<h2 id="download">Download</h2>

<ul>
  <li><a href="https://www.apache.org/dyn/closer.cgi/arrow/arrow-0.4.1/"><strong>Source Artifacts</strong></a></li>
  <li><a href="https://github.com/apache/arrow/releases/tag/apache-arrow-0.4.1">Git tag 46315431</a></li>
</ul>

<h1 id="changelog">Changelog</h1>

<h2 id="new-features-and-improvements">New Features and Improvements</h2>

<ul>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1020">ARROW-1020</a> - [Format] Add additional language to Schema.fbs to clarify naive vs. localized Timestamp values</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1034">ARROW-1034</a> - [Python] Enable creation of binary wheels on Windows / MSVC</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1049">ARROW-1049</a> - [java] vector template cleanup</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1060">ARROW-1060</a> - [Python] Add unit test for ARROW-1053</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1063">ARROW-1063</a> - [Website] Blog post and website updates for 0.4.0 release</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1068">ARROW-1068</a> - [Python] Create external repo with appveyor.yml configured for building Python wheel installers</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1069">ARROW-1069</a> - Add instructions for publishing maven artifacts</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1078">ARROW-1078</a> - [Python] Account for PARQUET-967</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1080">ARROW-1080</a> - C++: Add tutorial about converting to/from row-wise representation</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1082">ARROW-1082</a> - [GLib] Add CI on macOS</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1084">ARROW-1084</a> - Implementations of BufferAllocator should handle Netty’s OutOfDirectMemoryError</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-897">ARROW-897</a> - [GLib] Build arrow-glib as a separate build in the Travis CI build matrix</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-986">ARROW-986</a> - [Format] Update IPC.md to account for dictionary batches</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-990">ARROW-990</a> - [JS] Add tslint support for linting TypeScript</li>
</ul>

<h2 id="bug-fixes">Bug Fixes</h2>

<ul>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1039">ARROW-1039</a> - Python: pyarrow.Filesystem.read_parquet causing error if nthreads&gt;1</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1050">ARROW-1050</a> - [C++] Export arrow::ValidateArray</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1051">ARROW-1051</a> - [Python] If pyarrow.parquet fails to import due to a shared library ABI conflict, the test_parquet.py tests silently do not run</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1056">ARROW-1056</a> - [Python] Parquet+HDFS test failure due to writing pandas index</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1057">ARROW-1057</a> - Fix cmake warning and msvc debug asserts</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1062">ARROW-1062</a> - [GLib] Examples use old API</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1066">ARROW-1066</a> - remove warning on feather for pandas &gt;= 0.20.1</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1070">ARROW-1070</a> - [C++] Feather files for date/time types should be written with the physical types</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1075">ARROW-1075</a> - [GLib] Build error on macOS</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1085">ARROW-1085</a> - [java] Follow up on template cleanup. Missing method for IntervalYear</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1086">ARROW-1086</a> - [Python] pyarrow 0.4.0 on pypi is missing pxd files</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1088">ARROW-1088</a> - [Python] test_unicode_filename test fails when unicode filenames aren’t supported by system</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1090">ARROW-1090</a> - [Python] build_ext usability</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1091">ARROW-1091</a> - Decimal scale and precision are flipped</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1092">ARROW-1092</a> - More Decimal and scale flipped follow-up</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-1094">ARROW-1094</a> - [C++] Incomplete buffer reads in arrow::io::ReadableFile should exactly truncate returned buffer</li>
  <li><a href="https://issues.apache.org/jira/browse/ARROW-424">ARROW-424</a> - [C++] Threadsafety in arrow/io/hdfs.h</li>
</ul>

<h2 id="contributors">Contributors</h2>

<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>git shortlog <span class="nt">-sn</span> apache-arrow-0.4.0..apache-arrow-0.4.1
    16  Wes McKinney
     5  Julien Le Dem
     4  Kouhei Sutou
     2  Jacob Scott
     1  Brian Hulette
     1  Jeff Knupp
     1  Jeff Reback
     1  Max Risuhin
     1  Phillip Cloud
     1  Tony Kelman
     1  Uwe L. Korn
     1  adeneche
     1  kimanjun
     1  rip.nsk
</code></pre></div></div>


    </main>

    <hr/>
<footer class="footer">
  <div class="row">
    <div class="col-md-9">
      <p>Apache Arrow, Arrow, Apache, the Apache feather logo, and the Apache Arrow project logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.</p>
      <p>&copy; 2016-2024 The Apache Software Foundation</p>
    </div>
    <div class="col-md-3">
      <a class="d-sm-none d-md-inline pr-2" href="https://www.apache.org/events/current-event.html">
        <img src="https://www.apache.org/events/current-event-234x60.png"/>
      </a>
    </div>
  </div>
</footer>

  </div>
</body>
</html>
