Skip to content

Commit 609fe40

Browse files
Merge branch 'main' into scatter_color
2 parents 62427ad + 13cdd11 commit 609fe40

Some content is hidden

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

70 files changed

+1493
-805
lines changed

.circleci/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
if pip show pandas 1>/dev/null; then
3333
pip uninstall -y pandas
3434
fi
35-
python -m pip install --no-build-isolation -ve . --config-settings=setup-args="--werror"
35+
python -m pip install --no-build-isolation -ve . -Csetup-args="--werror"
3636
PATH=$HOME/miniconda3/envs/pandas-dev/bin:$HOME/miniconda3/condabin:$PATH
3737
sudo apt-get update && sudo apt-get install -y libegl1 libopengl0
3838
ci/run_tests.sh
@@ -57,7 +57,7 @@ jobs:
5757
. ~/virtualenvs/pandas-dev/bin/activate
5858
python -m pip install --no-cache-dir -U pip wheel setuptools meson-python==0.13.1 meson[ninja]==1.2.1
5959
python -m pip install --no-cache-dir versioneer[toml] cython numpy python-dateutil pytest>=7.3.2 pytest-xdist>=3.4.0 hypothesis>=6.84.0
60-
python -m pip install --no-cache-dir --no-build-isolation -e . --config-settings=setup-args="--werror"
60+
python -m pip install --no-cache-dir --no-build-isolation -e . -Csetup-args="--werror"
6161
python -m pip list --no-cache-dir
6262
export PANDAS_CI=1
6363
python -m pytest -m 'not slow and not network and not clipboard and not single_cpu' pandas --junitxml=test-data.xml

.github/actions/build_pandas/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@ runs:
3333
run: |
3434
if [[ ${{ inputs.editable }} == "true" ]]; then
3535
pip install -e . --no-build-isolation -v --no-deps \
36-
--config-settings=setup-args="--werror"
36+
-Csetup-args="--werror"
3737
else
3838
pip install . --no-build-isolation -v --no-deps \
39-
--config-settings=setup-args="--werror"
39+
-Csetup-args="--werror"
4040
fi
4141
shell: bash -el {0}

.github/workflows/unit-tests.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -235,9 +235,9 @@ jobs:
235235
/opt/python/cp311-cp311/bin/python -m venv ~/virtualenvs/pandas-dev
236236
. ~/virtualenvs/pandas-dev/bin/activate
237237
python -m pip install --no-cache-dir -U pip wheel setuptools meson[ninja]==1.2.1 meson-python==0.13.1
238-
python -m pip install numpy --config-settings=setup-args="-Dallow-noblas=true"
238+
python -m pip install numpy -Csetup-args="-Dallow-noblas=true"
239239
python -m pip install --no-cache-dir versioneer[toml] cython python-dateutil pytest>=7.3.2 pytest-xdist>=3.4.0 hypothesis>=6.84.0
240-
python -m pip install --no-cache-dir --no-build-isolation -e . --config-settings=setup-args="--werror"
240+
python -m pip install --no-cache-dir --no-build-isolation -e . -Csetup-args="--werror"
241241
python -m pip list --no-cache-dir
242242
export PANDAS_CI=1
243243
python -m pytest -m 'not slow and not network and not clipboard and not single_cpu' pandas --junitxml=test-data.xml
@@ -275,7 +275,7 @@ jobs:
275275
. ~/virtualenvs/pandas-dev/bin/activate
276276
python -m pip install --no-cache-dir -U pip wheel setuptools meson-python==0.13.1 meson[ninja]==1.2.1
277277
python -m pip install --no-cache-dir versioneer[toml] cython numpy python-dateutil pytest>=7.3.2 pytest-xdist>=3.4.0 hypothesis>=6.84.0
278-
python -m pip install --no-cache-dir --no-build-isolation -e . --config-settings=setup-args="--werror"
278+
python -m pip install --no-cache-dir --no-build-isolation -e . -Csetup-args="--werror"
279279
python -m pip list --no-cache-dir
280280
281281
- name: Run Tests
@@ -349,7 +349,7 @@ jobs:
349349
python -m pip install --pre --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy
350350
python -m pip install versioneer[toml]
351351
python -m pip install python-dateutil tzdata cython hypothesis>=6.84.0 pytest>=7.3.2 pytest-xdist>=3.4.0 pytest-cov
352-
python -m pip install -ve . --no-build-isolation --no-index --no-deps --config-settings=setup-args="--werror"
352+
python -m pip install -ve . --no-build-isolation --no-index --no-deps -Csetup-args="--werror"
353353
python -m pip list
354354
355355
- name: Run Tests
@@ -392,7 +392,7 @@ jobs:
392392
python -m pip install --pre --extra-index-url https://pypi.anaconda.org/scientific-python-nightly-wheels/simple numpy cython
393393
python -m pip install versioneer[toml]
394394
python -m pip install python-dateutil pytz tzdata hypothesis>=6.84.0 pytest>=7.3.2 pytest-xdist>=3.4.0 pytest-cov
395-
python -m pip install -ve . --no-build-isolation --no-index --no-deps --config-settings=setup-args="--werror"
395+
python -m pip install -ve . --no-build-isolation --no-index --no-deps -Csetup-args="--werror"
396396
python -m pip list
397397
398398
- name: Run Tests

.gitpod.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ tasks:
1313
mkdir -p .vscode
1414
cp gitpod/settings.json .vscode/settings.json
1515
git fetch --tags
16-
python -m pip install -ve . --no-build-isolation --config-settings editable-verbose=true
16+
python -m pip install -ve . --no-build-isolation -Ceditable-verbose=true
1717
pre-commit install --install-hooks
1818
command: |
19-
python -m pip install -ve . --no-build-isolation --config-settings editable-verbose=true
19+
python -m pip install -ve . --no-build-isolation -Ceditable-verbose=true
2020
echo "✨ Pre-build complete! You can close this terminal ✨ "
2121
2222
# --------------------------------------------------------

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ or for installing in [development mode](https://pip.pypa.io/en/latest/cli/pip_in
138138

139139

140140
```sh
141-
python -m pip install -ve . --no-build-isolation --config-settings=editable-verbose=true
141+
python -m pip install -ve . --no-build-isolation -Ceditable-verbose=true
142142
```
143143

144144
See the full instructions for [installing from source](https://pandas.pydata.org/docs/dev/development/contributing_environment.html).

ci/code_checks.sh

Lines changed: 0 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
7171
-i ES01 `# For now it is ok if docstrings are missing the extended summary` \
7272
-i "pandas.Series.dt PR01" `# Accessors are implemented as classes, but we do not document the Parameters section` \
7373
-i "pandas.MultiIndex.reorder_levels RT03,SA01" \
74-
-i "pandas.MultiIndex.to_frame RT03" \
7574
-i "pandas.NA SA01" \
7675
-i "pandas.NaT SA01" \
7776
-i "pandas.Period.freq GL08" \
@@ -81,27 +80,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
8180
-i "pandas.Period.to_timestamp SA01" \
8281
-i "pandas.PeriodDtype SA01" \
8382
-i "pandas.PeriodDtype.freq SA01" \
84-
-i "pandas.PeriodIndex.day SA01" \
85-
-i "pandas.PeriodIndex.day_of_week SA01" \
86-
-i "pandas.PeriodIndex.day_of_year SA01" \
87-
-i "pandas.PeriodIndex.dayofweek SA01" \
88-
-i "pandas.PeriodIndex.dayofyear SA01" \
89-
-i "pandas.PeriodIndex.days_in_month SA01" \
90-
-i "pandas.PeriodIndex.daysinmonth SA01" \
91-
-i "pandas.PeriodIndex.from_fields PR07,SA01" \
92-
-i "pandas.PeriodIndex.from_ordinals SA01" \
93-
-i "pandas.PeriodIndex.hour SA01" \
94-
-i "pandas.PeriodIndex.is_leap_year SA01" \
95-
-i "pandas.PeriodIndex.minute SA01" \
96-
-i "pandas.PeriodIndex.month SA01" \
97-
-i "pandas.PeriodIndex.quarter SA01" \
98-
-i "pandas.PeriodIndex.qyear GL08" \
99-
-i "pandas.PeriodIndex.second SA01" \
100-
-i "pandas.PeriodIndex.to_timestamp RT03,SA01" \
101-
-i "pandas.PeriodIndex.week SA01" \
102-
-i "pandas.PeriodIndex.weekday SA01" \
103-
-i "pandas.PeriodIndex.weekofyear SA01" \
104-
-i "pandas.PeriodIndex.year SA01" \
10583
-i "pandas.RangeIndex PR07" \
10684
-i "pandas.RangeIndex.from_range PR01,SA01" \
10785
-i "pandas.RangeIndex.start SA01" \
@@ -124,7 +102,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
124102
-i "pandas.Series.dt.month_name PR01,PR02" \
125103
-i "pandas.Series.dt.nanoseconds SA01" \
126104
-i "pandas.Series.dt.normalize PR01" \
127-
-i "pandas.Series.dt.qyear GL08" \
128105
-i "pandas.Series.dt.round PR01,PR02" \
129106
-i "pandas.Series.dt.seconds SA01" \
130107
-i "pandas.Series.dt.strftime PR01,PR02" \
@@ -133,34 +110,11 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
133110
-i "pandas.Series.dt.tz_convert PR01,PR02" \
134111
-i "pandas.Series.dt.tz_localize PR01,PR02" \
135112
-i "pandas.Series.dt.unit GL08" \
136-
-i "pandas.Series.gt SA01" \
137-
-i "pandas.Series.list.__getitem__ SA01" \
138-
-i "pandas.Series.list.flatten SA01" \
139-
-i "pandas.Series.list.len SA01" \
140-
-i "pandas.Series.lt SA01" \
141-
-i "pandas.Series.ne SA01" \
142113
-i "pandas.Series.pad PR01,SA01" \
143-
-i "pandas.Series.pop SA01" \
144-
-i "pandas.Series.prod RT03" \
145-
-i "pandas.Series.product RT03" \
146-
-i "pandas.Series.reorder_levels RT03,SA01" \
147-
-i "pandas.Series.sem PR01,RT03,SA01" \
148-
-i "pandas.Series.sparse PR01,SA01" \
149-
-i "pandas.Series.sparse.density SA01" \
150114
-i "pandas.Series.sparse.fill_value SA01" \
151115
-i "pandas.Series.sparse.from_coo PR07,SA01" \
152116
-i "pandas.Series.sparse.npoints SA01" \
153117
-i "pandas.Series.sparse.sp_values SA01" \
154-
-i "pandas.Series.sparse.to_coo PR07,RT03,SA01" \
155-
-i "pandas.Series.std PR01,RT03,SA01" \
156-
-i "pandas.Series.str.match RT03" \
157-
-i "pandas.Series.str.normalize RT03,SA01" \
158-
-i "pandas.Series.str.repeat SA01" \
159-
-i "pandas.Series.str.replace SA01" \
160-
-i "pandas.Series.str.wrap RT03,SA01" \
161-
-i "pandas.Series.str.zfill RT03" \
162-
-i "pandas.Series.struct.dtypes SA01" \
163-
-i "pandas.Series.to_markdown SA01" \
164118
-i "pandas.Timedelta.asm8 SA01" \
165119
-i "pandas.Timedelta.ceil SA01" \
166120
-i "pandas.Timedelta.components SA01" \
@@ -173,40 +127,19 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
173127
-i "pandas.Timedelta.to_timedelta64 SA01" \
174128
-i "pandas.Timedelta.total_seconds SA01" \
175129
-i "pandas.Timedelta.view SA01" \
176-
-i "pandas.TimedeltaIndex.as_unit RT03,SA01" \
177130
-i "pandas.TimedeltaIndex.components SA01" \
178131
-i "pandas.TimedeltaIndex.microseconds SA01" \
179132
-i "pandas.TimedeltaIndex.nanoseconds SA01" \
180133
-i "pandas.TimedeltaIndex.seconds SA01" \
181134
-i "pandas.TimedeltaIndex.to_pytimedelta RT03,SA01" \
182-
-i "pandas.Timestamp.day GL08" \
183-
-i "pandas.Timestamp.fold GL08" \
184-
-i "pandas.Timestamp.hour GL08" \
185135
-i "pandas.Timestamp.max PR02" \
186-
-i "pandas.Timestamp.microsecond GL08" \
187136
-i "pandas.Timestamp.min PR02" \
188-
-i "pandas.Timestamp.minute GL08" \
189-
-i "pandas.Timestamp.month GL08" \
190137
-i "pandas.Timestamp.nanosecond GL08" \
191138
-i "pandas.Timestamp.resolution PR02" \
192-
-i "pandas.Timestamp.second GL08" \
193139
-i "pandas.Timestamp.tzinfo GL08" \
194140
-i "pandas.Timestamp.value GL08" \
195141
-i "pandas.Timestamp.year GL08" \
196-
-i "pandas.api.extensions.ExtensionArray._pad_or_backfill PR01,RT03,SA01" \
197-
-i "pandas.api.extensions.ExtensionArray._reduce RT03,SA01" \
198-
-i "pandas.api.extensions.ExtensionArray._values_for_factorize SA01" \
199-
-i "pandas.api.extensions.ExtensionArray.astype SA01" \
200-
-i "pandas.api.extensions.ExtensionArray.dropna RT03,SA01" \
201-
-i "pandas.api.extensions.ExtensionArray.dtype SA01" \
202-
-i "pandas.api.extensions.ExtensionArray.duplicated RT03,SA01" \
203-
-i "pandas.api.extensions.ExtensionArray.fillna SA01" \
204-
-i "pandas.api.extensions.ExtensionArray.insert PR07,RT03,SA01" \
205142
-i "pandas.api.extensions.ExtensionArray.interpolate PR01,SA01" \
206-
-i "pandas.api.extensions.ExtensionArray.isin PR07,RT03,SA01" \
207-
-i "pandas.api.extensions.ExtensionArray.tolist RT03,SA01" \
208-
-i "pandas.api.extensions.ExtensionArray.unique RT03,SA01" \
209-
-i "pandas.api.extensions.ExtensionArray.view SA01" \
210143
-i "pandas.api.interchange.from_dataframe RT03,SA01" \
211144
-i "pandas.api.types.is_bool PR01,SA01" \
212145
-i "pandas.api.types.is_categorical_dtype SA01" \
@@ -259,7 +192,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
259192
-i "pandas.core.groupby.DataFrameGroupBy.nunique SA01" \
260193
-i "pandas.core.groupby.DataFrameGroupBy.ohlc SA01" \
261194
-i "pandas.core.groupby.DataFrameGroupBy.plot PR02" \
262-
-i "pandas.core.groupby.DataFrameGroupBy.prod SA01" \
263195
-i "pandas.core.groupby.DataFrameGroupBy.sem SA01" \
264196
-i "pandas.core.groupby.DataFrameGroupBy.sum SA01" \
265197
-i "pandas.core.groupby.SeriesGroupBy.__iter__ RT03,SA01" \
@@ -276,7 +208,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
276208
-i "pandas.core.groupby.SeriesGroupBy.nth PR02" \
277209
-i "pandas.core.groupby.SeriesGroupBy.ohlc SA01" \
278210
-i "pandas.core.groupby.SeriesGroupBy.plot PR02" \
279-
-i "pandas.core.groupby.SeriesGroupBy.prod SA01" \
280211
-i "pandas.core.groupby.SeriesGroupBy.sem SA01" \
281212
-i "pandas.core.groupby.SeriesGroupBy.sum SA01" \
282213
-i "pandas.core.resample.Resampler.__iter__ RT03,SA01" \
@@ -295,11 +226,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
295226
-i "pandas.core.resample.Resampler.sum SA01" \
296227
-i "pandas.core.resample.Resampler.transform PR01,RT03,SA01" \
297228
-i "pandas.core.resample.Resampler.var SA01" \
298-
-i "pandas.core.window.expanding.Expanding.corr PR01" \
299-
-i "pandas.core.window.expanding.Expanding.count PR01" \
300-
-i "pandas.core.window.rolling.Rolling.max PR01" \
301-
-i "pandas.core.window.rolling.Window.std PR01" \
302-
-i "pandas.core.window.rolling.Window.var PR01" \
303229
-i "pandas.date_range RT03" \
304230
-i "pandas.errors.AbstractMethodError PR01,SA01" \
305231
-i "pandas.errors.AttributeConflictWarning SA01" \
@@ -329,34 +255,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
329255
-i "pandas.errors.UnsupportedFunctionCall SA01" \
330256
-i "pandas.errors.ValueLabelTypeMismatch SA01" \
331257
-i "pandas.infer_freq SA01" \
332-
-i "pandas.io.formats.style.Styler.apply RT03" \
333-
-i "pandas.io.formats.style.Styler.apply_index RT03" \
334-
-i "pandas.io.formats.style.Styler.background_gradient RT03" \
335-
-i "pandas.io.formats.style.Styler.bar RT03,SA01" \
336-
-i "pandas.io.formats.style.Styler.clear SA01" \
337-
-i "pandas.io.formats.style.Styler.concat RT03,SA01" \
338-
-i "pandas.io.formats.style.Styler.export RT03" \
339-
-i "pandas.io.formats.style.Styler.from_custom_template SA01" \
340-
-i "pandas.io.formats.style.Styler.hide RT03,SA01" \
341-
-i "pandas.io.formats.style.Styler.highlight_between RT03" \
342-
-i "pandas.io.formats.style.Styler.highlight_max RT03" \
343-
-i "pandas.io.formats.style.Styler.highlight_min RT03" \
344-
-i "pandas.io.formats.style.Styler.highlight_null RT03" \
345-
-i "pandas.io.formats.style.Styler.highlight_quantile RT03" \
346-
-i "pandas.io.formats.style.Styler.map RT03" \
347-
-i "pandas.io.formats.style.Styler.map_index RT03" \
348-
-i "pandas.io.formats.style.Styler.set_caption RT03,SA01" \
349-
-i "pandas.io.formats.style.Styler.set_properties RT03,SA01" \
350-
-i "pandas.io.formats.style.Styler.set_sticky RT03,SA01" \
351-
-i "pandas.io.formats.style.Styler.set_table_attributes PR07,RT03" \
352-
-i "pandas.io.formats.style.Styler.set_table_styles RT03" \
353-
-i "pandas.io.formats.style.Styler.set_td_classes RT03" \
354-
-i "pandas.io.formats.style.Styler.set_tooltips RT03,SA01" \
355-
-i "pandas.io.formats.style.Styler.set_uuid PR07,RT03,SA01" \
356-
-i "pandas.io.formats.style.Styler.text_gradient RT03" \
357-
-i "pandas.io.formats.style.Styler.to_excel PR01" \
358-
-i "pandas.io.formats.style.Styler.to_string SA01" \
359-
-i "pandas.io.formats.style.Styler.use RT03" \
360258
-i "pandas.io.json.build_table_schema PR07,RT03,SA01" \
361259
-i "pandas.io.stata.StataReader.data_label SA01" \
362260
-i "pandas.io.stata.StataReader.value_labels RT03,SA01" \

doc/source/development/contributing_environment.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ To compile pandas with meson, run::
227227
# By default, this will print verbose output
228228
# showing the "rebuild" taking place on import (see section below for explanation)
229229
# If you do not want to see this, omit everything after --no-build-isolation
230-
python -m pip install -ve . --no-build-isolation --config-settings editable-verbose=true
230+
python -m pip install -ve . --no-build-isolation -Ceditable-verbose=true
231231

232232
.. note::
233233
The version number is pulled from the latest repository tag. Be sure to fetch the latest tags from upstream
@@ -242,15 +242,15 @@ To compile pandas with meson, run::
242242
It is possible to pass options from the pip frontend to the meson backend if you would like to configure your
243243
install. Occasionally, you'll want to use this to adjust the build directory, and/or toggle debug/optimization levels.
244244

245-
You can pass a build directory to pandas by appending ``--config-settings builddir="your builddir here"`` to your pip command.
245+
You can pass a build directory to pandas by appending ``-Cbuilddir="your builddir here"`` to your pip command.
246246
This option allows you to configure where meson stores your built C extensions, and allows for fast rebuilds.
247247

248248
Sometimes, it might be useful to compile pandas with debugging symbols, when debugging C extensions.
249-
Appending ``--config-settings setup-args="-Ddebug=true"`` will do the trick.
249+
Appending ``-Csetup-args="-Ddebug=true"`` will do the trick.
250250

251251
With pip, it is possible to chain together multiple config settings (for example specifying both a build directory
252252
and building with debug symbols would look like
253-
``--config-settings builddir="your builddir here" --config-settings=setup-args="-Dbuildtype=debug"``.
253+
``-Cbuilddir="your builddir here" -Csetup-args="-Dbuildtype=debug"``.
254254

255255
**Compiling pandas with setup.py**
256256

@@ -291,7 +291,7 @@ At this point you may want to try
291291

292292
When building pandas with meson, importing pandas will automatically trigger a rebuild, even when C/Cython files are modified.
293293
By default, no output will be produced by this rebuild (the import will just take longer). If you would like to see meson's
294-
output when importing pandas, you can set the environment variable ``MESONPY_EDTIABLE_VERBOSE``. For example, this would be::
294+
output when importing pandas, you can set the environment variable ``MESONPY_EDITABLE_VERBOSE``. For example, this would be::
295295

296296
# On Linux/macOS
297297
MESONPY_EDITABLE_VERBOSE=1 python
@@ -302,7 +302,7 @@ output when importing pandas, you can set the environment variable ``MESONPY_EDT
302302

303303
If you would like to see this verbose output every time, you can set the ``editable-verbose`` config setting to ``true`` like so::
304304

305-
python -m pip install -ve . --config-settings editable-verbose=true
305+
python -m pip install -ve . -Ceditable-verbose=true
306306

307307
.. tip::
308308
If you ever find yourself wondering whether setuptools or meson was used to build your pandas,

doc/source/development/debugging_extensions.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Debugging locally
1919

2020
By default building pandas from source will generate a release build. To generate a development build you can type::
2121

22-
pip install -ve . --no-build-isolation --config-settings=builddir="debug" --config-settings=setup-args="-Dbuildtype=debug"
22+
pip install -ve . --no-build-isolation -Cbuilddir="debug" -Csetup-args="-Dbuildtype=debug"
2323

2424
.. note::
2525

@@ -42,7 +42,7 @@ Inside the image, you can use meson to build/install pandas and place the build
4242

4343
.. code-block:: sh
4444
45-
python -m pip install -ve . --no-build-isolation --config-settings=builddir="debug" --config-settings=setup-args="-Dbuildtype=debug"
45+
python -m pip install -ve . --no-build-isolation -Cbuilddir="debug" -Csetup-args="-Dbuildtype=debug"
4646
4747
If planning to use cygdb, the files required by that application are placed within the build folder. So you have to first ``cd`` to the build folder, then start that application.
4848

0 commit comments

Comments
 (0)