Copilot commented on code in PR #22:
URL: https://github.com/apache/solr-orbit/pull/22#discussion_r3293638406


##########
pyproject.toml:
##########
@@ -0,0 +1,211 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+[build-system]
+requires = ["setuptools>=68", "wheel"]
+build-backend = "setuptools.build_meta"
+
+[project]
+name = "solr-orbit"
+dynamic = ["version"]
+description = "Macrobenchmarking framework for Apache Solr"
+readme = {file = "README.md", content-type = "text/markdown"}
+license = {text = "Apache License, Version 2.0"}
+requires-python = ">=3.12,<3.14"
+classifiers = [
+    "Topic :: System :: Benchmark",
+    "Development Status :: 5 - Production/Stable",
+    "License :: OSI Approved :: Apache Software License",
+    "Intended Audience :: Developers",
+    "Operating System :: MacOS :: MacOS X",
+    "Operating System :: POSIX",
+    "Programming Language :: Python",
+    "Programming Language :: Python :: 3",
+    "Programming Language :: Python :: 3.12",
+    "Programming Language :: Python :: 3.13",
+]
+dependencies = [
+    # License: BSD
+    # Solr HTTP client for data operations (indexing, search, commit, optimize)
+    "pysolr>=3.10.0",
+    # License: Apache 2.0
+    # HTTP client for Solr V2 API admin operations
+    # transitive dependencies:
+    #   urllib3: MIT
+    "requests>=2.28.0",
+    # License: BSD
+    "psutil>=5.8.0",
+    # License: MIT
+    "py-cpuinfo>=7.0.0",
+    # License: MIT
+    "tabulate>=0.9.0",
+    # License: MIT
+    "jsonschema>=3.1.1",
+    # License: BSD
+    "Jinja2>=3.1.3",
+    # License: BSD
+    "markupsafe>=2.0.1",
+    # License: MIT
+    # With 3.10.7, we get InvalidActorAddress exception while initialize Actor
+    "thespian>=3.10.1,<3.10.7",
+    # always use the latest version, these are certificate files...
+    # License: MPL 2.0
+    "certifi",
+    # License: Apache 2.0
+    "yappi>=1.4.0",
+    # License: BSD
+    "ijson>=2.6.1",
+    # License: Apache 2.0
+    # transitive dependencies:
+    #   google-crc32c: Apache 2.0
+    "google-resumable-media>=1.1.0",
+    # License: Apache 2.0
+    "google-auth>=1.22.1",
+    # License: MIT
+    "wheel>=0.38.4",
+    # License: Apache 2.0
+    # transitive dependencies:
+    #   botocore: Apache 2.0
+    #   jmespath: MIT
+    #   s3transfer: Apache 2.0
+    "boto3>=1.28.62",
+    # Licence: BSD-3-Clause
+    "zstandard>=0.22.0",
+    # License: BSD
+    # Required for knnvector workload
+    "h5py>=3.10.0",
+    # License: BSD
+    # Required for knnvector workload
+    "numpy>=1.24.2,<=1.26.4",
+    # License: MIT
+    "tqdm",
+    # License: MIT
+    "faker",
+    # License: BSD
+    "pandas>=1.4.3",
+    # License: MIT
+    "mimesis==11.1.0",
+    # Licence: BSD-3-Clause
+    "dask",
+    # Licence: BSD-3-Clause
+    "dask[distributed]",
+    # Licence: BSD-3-Clause
+    "bokeh!=3.0.*,>=2.4.2",
+    # License: MIT
+    "pydantic>=2.10.6",
+    # License: MIT
+    "pydantic_core>=2.27.2",
+    # License: MIT
+    "PyYAML>=5.4",
+]
+
+[project.urls]
+Homepage = "https://github.com/apache/solr-orbit";
+
+[project.scripts]
+solr-orbit = "osbenchmark.benchmark:main"
+solr-orbitd = "osbenchmark.benchmarkd:main"
+
+[project.optional-dependencies]
+test = [
+    "ujson",
+    "pytest==7.2.2",
+    "pytest-benchmark==3.2.2",
+    "pytest-asyncio==0.14.0",
+]
+develop = [
+    "ujson",
+    "pytest==7.2.2",
+    "pytest-benchmark==3.2.2",
+    "pytest-asyncio==0.14.0",
+    "tox>=4.0",
+    "coverage==5.5",
+    "twine==6.0.1",

Review Comment:
   `tox.ini` has been removed and tox config is now in `pyproject.toml`, which 
requires tox 4+ to be discoverable. However, the `make it` targets install 
`tox` only if it's missing and don't ensure a compatible version; if a 
developer/CI already has tox 3 installed, `tox` will run without finding 
config. Consider pinning/enforcing `tox>=4` wherever tox is installed/invoked 
(e.g., update the Makefile install command or document the minimum tox version).



##########
pyproject.toml:
##########
@@ -0,0 +1,211 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+[build-system]
+requires = ["setuptools>=68", "wheel"]
+build-backend = "setuptools.build_meta"
+
+[project]
+name = "solr-orbit"
+dynamic = ["version"]
+description = "Macrobenchmarking framework for Apache Solr"
+readme = {file = "README.md", content-type = "text/markdown"}
+license = {text = "Apache License, Version 2.0"}

Review Comment:
   Project docs still reference `setup.py` and `tox.ini` as the places to 
update supported Python versions (see `PYTHON_SUPPORT_GUIDE.md`), but this PR 
removes those files and moves config into `pyproject.toml`. Please update the 
guide (or add a brief note here) so contributors know where to change 
`requires-python` / classifiers and tox envs going forward.
   



##########
MANIFEST.in:
##########
@@ -3,7 +3,6 @@ include CONTRIBUTING.md
 include LICENSE
 include MANIFEST.in
 include README.md
-include setup.py
 include version.txt
 include osbenchmark/min-os-version.txt

Review Comment:
   MANIFEST.in includes `osbenchmark/min-os-version.txt`, but the repository 
contains `osbenchmark/min-version.txt` (used at runtime by 
`osbenchmark/version.py`). This will omit the required resource from 
sdists/wheels and can break `minimum_solr_version()` in installed 
distributions. Update the manifest (and/or setuptools package-data) to include 
the correct `osbenchmark/min-version.txt` file.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to