<p dir="auto">A briefer way than, say, <code class="notranslate">df.xs(df.index[247])</code> though this isn't really all that bad</p>
<ul class="contains-task-list">
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked="">  _libs/window both includes "skiplist.pyx" and cimports from skiplist.  I don't know if it is necessary, but it is definitely confusing.  (closed by <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="275918467" data-permission-text="Title is private" data-url="https://github.com/pandas-dev/pandas/issues/18420" data-hovercard-type="pull_request" data-hovercard-url="/pandas-dev/pandas/pull/18420/hovercard" href="https://github.com/pandas-dev/pandas/pull/18420">#18420</a>)</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> _libs/reshape.pyx is an 18 line stub that just includes reshape_helper.pxi.  Could we just change reshape_helper.pxi.in to reshape.pyx.in? <b>update</b>It is correct as is.</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> src/reduce.pyx and src/inference.pyx are a minor PITA, should be merged directly into lib or made into their own modules.</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> src/numpy.pxd should be dropped, just defer to <code class="notranslate">np.get_include()</code> (closed by <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="292071440" data-permission-text="Title is private" data-url="https://github.com/pandas-dev/pandas/issues/19418" data-hovercard-type="pull_request" data-hovercard-url="/pandas-dev/pandas/pull/19418/hovercard" href="https://github.com/pandas-dev/pandas/pull/19418">#19418</a>)</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Only a small fraction of src/datetime/ is used outside of src/, a lot of it is only used by src/ujson/python/objToJSON.c.  On the one hand it would be nice to separate out the pieces that are only needed by objToJSON.  On the other hand, most of src/datetime is copy/pasted from numpy, and diverging from the original is liable to cause headaches.</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> src/helper.h defines PANDAS_INLINE.  Cython has a CYTHON_INLINE that AFAICT would be a drop-in replacement.  I have no idea how one would do that.</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> src/skiplist.h has a duplicate definition of PANDAS_INLINE</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> pandas_datetimestruct should either be aliased to or replaced by npy_datetimestruct (closed by <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="340862961" data-permission-text="Title is private" data-url="https://github.com/pandas-dev/pandas/issues/21886" data-hovercard-type="pull_request" data-hovercard-url="/pandas-dev/pandas/pull/21886/hovercard" href="https://github.com/pandas-dev/pandas/pull/21886">#21886</a>)</p>
</li>
<li class="task-list-item">
<p dir="auto"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> <code class="notranslate">from libc.math cimport sqrt</code> is not <code class="notranslate">nogil</code>, whereas <code class="notranslate">cdef extern from src/headers/math.h</code>... is.  That appears to have a nontrivial perf impact.  See <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="275918467" data-permission-text="Title is private" data-url="https://github.com/pandas-dev/pandas/issues/18420" data-hovercard-type="pull_request" data-hovercard-url="/pandas-dev/pandas/pull/18420/hovercard" href="https://github.com/pandas-dev/pandas/pull/18420">#18420</a>.  Go through and make sure we're using the performant implementation.</p>
</li>
</ul>
<p dir="auto">Benchmarks (technically belongs elsewhere, but not worth opening a new issue)</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> asv is particularly volatile on my machine, so this may be just me.  But I'm consistently seeing these as outliers: <code class="notranslate">timeseries.AsOfDataFrame.time_asof</code>, <code class="notranslate">timeseries.AsOfDataFrame.time_asof_nan</code>, <code class="notranslate">timeseries.DatetimeIndex.time_dti_tz_factorize</code>, <code class="notranslate">timeseries.DatetimeIndex.time_dti_factorize</code></li>
</ul>