Skip to content

Commit c69c4f0

Browse files
committed
Merge branch 'master' into c-parser
* master: (171 commits) BUG: fix Cython tz_convert bug with time zones that haven't had a UTC transition in a long time. close #1946 BUG: fix buglet BUG: try fixing tzlocal bug Minor fixes to time series doc. Adding DataFrame methods to API reference. Added Series functions to API doc. BUG: fix segfault in SeriesGrouper with non-contiguous index RLS: Version 0.9.0 Release Candidate 1 BLD: add lib depends #1945 BUG: missing case for assigning DataFrame via ix BUG: python 3.1 timedelta compat issue BUG: python 3 tzoffset is not hashable TST: adds dateutil to travis-ci install commands BUG: let selecting multiple columns in DataFrame.__getitem__ work when there are duplicates. close #1943 BUG: DatetimeConverter does not handle datetime64 arrays properly BUG: reindex with axis=1 when setting Series to scalar location, close #1942 BUG: fix formatting of Timestamps in to_html/IPython notebook. refactor to_html code. close #1940 ENH: allow single str input to na_values #1944 TST: when xlrd is not installed skip tests needing it, close #1941 BUG: DatetimeIndex localizes twice if input is localized DatetimeIndex #1838 ...
2 parents 6db79fe + 8c0e206 commit c69c4f0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+4251
-782
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ python:
99

1010
install:
1111
- "if [[ $TRAVIS_PYTHON_VERSION == '2.5' ]]; then pip install --use-mirrors simplejson; fi"
12-
- pip install --use-mirrors cython numpy nose pytz
12+
- pip install --use-mirrors cython numpy nose pytz python-dateutil
1313

1414
script:
1515
- python setup.py build_ext install

LICENSE

Lines changed: 115 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
1-
======================
2-
PANDAS LICENSING TERMS
3-
======================
1+
=======
2+
License
3+
=======
44

5-
pandas is licensed under the BSD 3-Clause (also known as "BSD New" or
6-
"BSD Simplified"), as follows:
5+
pandas is distributed under a 3-clause ("Simplified" or "New") BSD
6+
license. Parts of NumPy, SciPy, numpydoc, bottleneck, which all have
7+
BSD-compatible licenses, are included. Their licenses follow the pandas
8+
license.
9+
10+
pandas license
11+
==============
712

813
Copyright (c) 2011-2012, Lambda Foundry, Inc. and PyData Development Team
914
All rights reserved.
@@ -67,7 +72,7 @@ a record of what changes/contributions they have specific copyright on,
6772
they should indicate their copyright in the commit message of the change
6873
when they commit the change to one of the PyData repositories.
6974

70-
With this in mind, the following banner should be used in any source code
75+
With this in mind, the following banner should be used in any source code
7176
file to indicate the copyright and license terms:
7277

7378
#-----------------------------------------------------------------------------
@@ -77,4 +82,107 @@ file to indicate the copyright and license terms:
7782
# Distributed under the terms of the BSD Simplified License.
7883
#
7984
# The full license is in the LICENSE file, distributed with this software.
80-
#-----------------------------------------------------------------------------
85+
#-----------------------------------------------------------------------------
86+
87+
NumPy license
88+
-------------
89+
90+
Copyright (c) 2005-2012, NumPy Developers.
91+
All rights reserved.
92+
93+
Redistribution and use in source and binary forms, with or without
94+
modification, are permitted provided that the following conditions are
95+
met:
96+
97+
* Redistributions of source code must retain the above copyright
98+
notice, this list of conditions and the following disclaimer.
99+
100+
* Redistributions in binary form must reproduce the above
101+
copyright notice, this list of conditions and the following
102+
disclaimer in the documentation and/or other materials provided
103+
with the distribution.
104+
105+
* Neither the name of the NumPy Developers nor the names of any
106+
contributors may be used to endorse or promote products derived
107+
from this software without specific prior written permission.
108+
109+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
110+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
111+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
112+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
113+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
114+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
115+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
116+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
117+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
118+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
119+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
120+
itions of this License Agreement.
121+
122+
123+
SciPy license
124+
-------------
125+
126+
Copyright (c) 2001, 2002 Enthought, Inc.
127+
All rights reserved.
128+
129+
Copyright (c) 2003-2012 SciPy Developers.
130+
All rights reserved.
131+
132+
Redistribution and use in source and binary forms, with or without
133+
modification, are permitted provided that the following conditions are met:
134+
135+
a. Redistributions of source code must retain the above copyright notice,
136+
this list of conditions and the following disclaimer.
137+
b. Redistributions in binary form must reproduce the above copyright
138+
notice, this list of conditions and the following disclaimer in the
139+
documentation and/or other materials provided with the distribution.
140+
c. Neither the name of the Enthought nor the names of its contributors
141+
may be used to endorse or promote products derived from this software
142+
without specific prior written permission.
143+
144+
145+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
146+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
147+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
148+
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
149+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
150+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
151+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
152+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
153+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
154+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
155+
DAMAGE.
156+
157+
numpydoc license
158+
----------------
159+
160+
The numpydoc license is in pandas/doc/sphinxext/LICENSE.txt
161+
162+
Bottleneck license
163+
------------------
164+
165+
Copyright (c) 2010-2012 Archipel Asset Management AB.
166+
All rights reserved.
167+
168+
Redistribution and use in source and binary forms, with or without
169+
modification, are permitted provided that the following conditions are met:
170+
171+
* Redistributions of source code must retain the above copyright notice,
172+
this list of conditions and the following disclaimer.
173+
174+
* Redistributions in binary form must reproduce the above copyright
175+
notice, this list of conditions and the following disclaimer in the
176+
documentation and/or other materials provided with the distribution.
177+
178+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
179+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
180+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
181+
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
182+
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
183+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
184+
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
185+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
186+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
187+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
188+
POSSIBILITY OF SUCH DAMAGE.

NP_LICENSE.txt

Lines changed: 0 additions & 30 deletions
This file was deleted.

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Dependencies
6363
============
6464

6565
* `NumPy <http://www.numpy.org>`__: 1.6.1 or higher
66-
* `python-dateutil <http://labix.org/python-dateutil>`__ 1.5
66+
* `python-dateutil <http://labix.org/python-dateutil>`__ 1.5 or higher
6767

6868
Optional dependencies
6969
~~~~~~~~~~~~~~~~~~~~~

RELEASE.rst

Lines changed: 110 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Where to get it
2222
* Binary installers on PyPI: http://pypi.python.org/pypi/pandas
2323
* Documentation: http://pandas.pydata.org
2424

25-
pandas 0.8.2
25+
pandas 0.9.0
2626
============
2727

2828
**Release date:** NOT YET RELEASED
@@ -31,21 +31,52 @@ pandas 0.8.2
3131

3232
- Add ``str.encode`` and ``str.decode`` to Series (#1706)
3333
- Add `to_latex` method to DataFrame (#1735)
34+
- Add convenient expanding window equivalents of all rolling_* ops (#1785)
35+
- Add Options class to pandas.io.data for fetching options data from Yahoo!
36+
Finance (#1748, #1739)
37+
- Recognize and convert more boolean values in file parsing (Yes, No, TRUE,
38+
FALSE, variants thereof) (#1691, #1295)
3439

3540
**Improvements to existing features**
3641

3742
- Add ``flags`` option for ``re.compile`` in some Series.str methods (#1659)
3843
- Parsing of UTC date strings in read_* functions (#1693)
3944
- Handle generator input to Series (#1679)
4045
- Add `na_action='ignore'` to Series.map to quietly propagate NAs (#1661)
46+
- Add args/kwds options to Series.apply (#1829)
47+
- Add inplace option to Series/DataFrame.reset_index (#1797)
48+
- Add quoting option for DataFrame.to_csv (#1902)
49+
- Indicate long column value truncation in DataFrame output with ... (#1854)
50+
- DataFrame.dot will not do data alignment, and also work with Series (#1915)
51+
- Add ``na`` option for missing data handling in some vectorized string
52+
methods (#1689)
53+
- If index_label=False in DataFrame.to_csv, do not print fields/commas in the
54+
text output. Results in easier importing into R (#1583)
55+
- Can pass tuple/list of axes to DataFrame.dropna to simplify repeated calls
56+
(dropping both columns and rows) (#924)
57+
- Improve DataFrame.to_html output for hierarchically-indexed rows (do not
58+
repeat levels) (#1929)
4159

4260
**API Changes**
4361

4462
- Deprecated ``day_of_year`` API removed from PeriodIndex, use ``dayofyear``
4563
(#1723)
64+
- Don't modify NumPy suppress printoption at import time
65+
- The internal HDF5 data arrangement for DataFrames has been
66+
transposed. Legacy files will still be readable by HDFStore (#1834, #1824)
67+
- Legacy cruft removed: pandas.stats.misc.quantileTS
68+
- Use ISO8601 format for Period repr: monthly, daily, and on down (#1776)
69+
- Empty DataFrame columns are now created as object dtype. This will prevent
70+
a class of TypeErrors that was occurring in code where the dtype of a
71+
column would depend on the presence of data or not (e.g. a SQL query having
72+
results) (#1783)
73+
- Setting parts of DataFrame/Panel using ix now aligns input Series/DataFrame
74+
(#1630)
4675

4776
**Bug fixes**
4877

78+
- Perform arithmetic column-by-column in mixed-type DataFrame to avoid type
79+
upcasting issues. Caused downstream DataFrame.diff bug (#1896)
4980
- Fix matplotlib auto-color assignment when no custom spectrum passed. Also
5081
respect passed color keyword argument (#1711)
5182
- Fix resampling logical error with closed='left' (#1726)
@@ -96,7 +127,84 @@ pandas 0.8.2
96127
- Fix DatetimeIndex.isin to function properly (#1763)
97128
- Fix conversion of array of tz-aware datetime.datetime to DatetimeIndex with
98129
right time zone (#1777)
99-
- Fix DST issues with generating anchored date ranges (#1778)
130+
- Fix DST issues with generating ancxhored date ranges (#1778)
131+
- Fix issue calling sort on result of Series.unique (#1807)
132+
- Fix numerical issue leading to square root of negative number in
133+
rolling_std (#1840)
134+
- Let Series.str.split accept no arguments (like str.split) (#1859)
135+
- Allow user to have dateutil 2.1 installed on a Python 2 system (#1851)
136+
- Catch ImportError less aggressively in pandas/__init__.py (#1845)
137+
- Fix pip source installation bug when installing from GitHub (#1805)
138+
- Fix error when window size > array size in rolling_apply (#1850)
139+
- Fix pip source installation issues via SSH from GitHub
140+
- Fix OLS.summary when column is a tuple (#1837)
141+
- Fix bug in __doc__ patching when -OO passed to interpreter (#1792, #1741)
142+
- Fix unicode console encoding issue in IPython notebook (#1782, #1768)
143+
- Fix unicode formatting issue with Series.name (#1782)
144+
- Fix bug in DataFrame.duplicated with datetime64 columns (#1833)
145+
- Fix bug in Panel internals resulting in error when doing fillna after
146+
truncate not changing size of panel (#1823)
147+
- Prevent segfault due to MultiIndex not being supported in HDFStore table
148+
format (#1848)
149+
- Fix UnboundLocalError in Panel.__setitem__ and add better error (#1826)
150+
- Fix to_csv issues with list of string entries. Isnull works on list of
151+
strings now too (#1791)
152+
- Fix Timestamp comparisons with datetime values outside the nanosecond range
153+
(1677-2262)
154+
- Revert to prior behavior of normalize_date with datetime.date objects
155+
(return datetime)
156+
- Fix broken interaction between np.nansum and Series.any/all
157+
- Fix bug with multiple column date parsers (#1866)
158+
- DatetimeIndex.union(Int64Index) was broken
159+
- Make plot x vs y interface consistent with integer indexing (#1842)
160+
- set_index inplace modified data even if unique check fails (#1831)
161+
- Only use Q-OCT/NOV/DEC in quarterly frequency inference (#1789)
162+
- Upcast to dtype=object when unstacking boolean DataFrame (#1820)
163+
- Fix float64/float32 merging bug (#1849)
164+
- Fixes to Period.start_time for non-daily frequencies (#1857)
165+
- Fix failure when converter used on index_col in read_csv (#1835)
166+
- Implement PeriodIndex.append so that pandas.concat works correctly (#1815)
167+
- Avoid Cython out-of-bounds access causing segfault sometimes in pad_2d,
168+
backfill_2d
169+
- Fix resampling error with intraday times and anchored target time (like
170+
AS-DEC) (#1772)
171+
- Fix .ix indexing bugs with mixed-integer indexes (#1799)
172+
- Respect passed color keyword argument in Series.plot (#1890)
173+
- Fix rolling_min/max when the window is larger than the size of the input
174+
array. Check other malformed inputs (#1899, #1897)
175+
- Rolling variance / standard deviation with only a single observation in
176+
window (#1884)
177+
- Fix unicode sheet name failure in to_excel (#1828)
178+
- Override DatetimeIndex.min/max to return Timestamp objects (#1895)
179+
- Fix column name formatting issue in length-truncated column (#1906)
180+
- Fix broken handling of copying Index metadata to new instances created by
181+
view(...) calls inside the NumPy infrastructure
182+
- Support datetime.date again in DateOffset.rollback/rollforward
183+
- Raise Exception if set passed to Series constructor (#1913)
184+
- Add TypeError when appending HDFStore table w/ wrong index type (#1881)
185+
- Don't raise exception on empty inputs in EW functions (e.g. ewma) (#1900)
186+
- Make asof work correctly with PeriodIndex (#1883)
187+
- Fix extlinks in doc build
188+
- Fill boolean DataFrame with NaN when calling shift (#1814)
189+
- Fix setuptools bug causing pip not to Cythonize .pyx files sometimes
190+
- Fix negative integer indexing regression in .ix from 0.7.x (#1888)
191+
- Fix error while retrieving timezone and utc offset from subclasses of
192+
datetime.tzinfo without .zone and ._utcoffset attributes (#1922)
193+
- Fix DataFrame formatting of small, non-zero FP numbers (#1911)
194+
- Various fixes by upcasting of date -> datetime (#1395)
195+
- Raise better exception when passing multiple functions with the same name,
196+
such as lambdas, to GroupBy.aggregate
197+
- Fix DataFrame.apply with axis=1 on a non-unique index (#1878)
198+
- Proper handling of Index subclasses in pandas.unique (#1759)
199+
- Set index names in DataFrame.from_records (#1744)
200+
- Fix time series indexing error with duplicates, under and over hash table
201+
size cutoff (#1821)
202+
- Handle list keys in addition to tuples in DataFrame.xs when
203+
partial-indexing a hierarchically-indexed DataFrame (#1796)
204+
- Support multiple column selection in DataFrame.__getitem__ with duplicate
205+
columns (#1943)
206+
- Fix time zone localization bug causing improper fields (e.g. hours) in time
207+
zones that have not had a UTC transition in a long time (#1946)
100208

101209
pandas 0.8.1
102210
============

doc/make.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -150,16 +150,18 @@ def sendmail(step=None, err_msg=None):
150150
finally:
151151
server.close()
152152

153-
def _get_dir():
153+
def _get_dir(subdir=None):
154154
import getpass
155155
USERNAME = getpass.getuser()
156156
if sys.platform == 'darwin':
157157
HOME = '/Users/%s' % USERNAME
158158
else:
159159
HOME = '/home/%s' % USERNAME
160160

161-
tmp_dir = '%s/tmp' % HOME
162-
return tmp_dir
161+
if subdir is None:
162+
subdir = '/code/scripts/config'
163+
conf_dir = '%s/%s' % (HOME, subdir)
164+
return conf_dir
163165

164166
def _get_credentials():
165167
tmp_dir = _get_dir()
@@ -177,7 +179,7 @@ def _get_credentials():
177179

178180
def _get_config():
179181
tmp_dir = _get_dir()
180-
with open('%s/config' % tmp_dir, 'r') as fh:
182+
with open('%s/addresses' % tmp_dir, 'r') as fh:
181183
from_name, to_name = fh.read().split(',')
182184
return from_name, to_name
183185

0 commit comments

Comments
 (0)