Vamsi-klu opened a new pull request, #58093:
URL: https://github.com/apache/spark/pull/58093
### What changes were proposed in this pull request?
Add a Cursor Cloud Agent environment so a Spark checkout can be used without
a manual bootstrap:
- `.cursor/environment.json` — environment name, `ubuntu` user, and
`install` hook
- `.cursor/install.sh` — idempotent install that:
- makes `python` resolve to `python3` (`python-is-python3`)
- pip-installs PySpark runtime deps matching the minimums in
`python/packaging/classic/setup.py`
- builds with the pinned Maven wrapper: `./build/mvn -DskipTests -pl
assembly,examples -am package`
`install.sh` includes the standard ASF license header so `dev/check-license`
can pass. No `start` phase: Spark is a library/CLI here, not a long-running
service.
### Why are the changes needed?
Cursor Cloud Agents need a deterministic, source-derived install. Without
these files, each agent or contributor repeats Java / Python / Maven setup by
hand, and `bin/spark-shell`, `bin/pyspark`, and `bin/run-example` are not ready
after clone.
This does not change Spark's runtime, APIs, or build for users who ignore
`.cursor/`.
### Does this PR introduce _any_ user-facing change?
No.
### How was this patch tested?
The same install was previously validated on a Cloud Agent VM (Java 21, 4
cores, 15 GB RAM):
| Check | Result |
| --- | --- |
| `bin/run-example SparkPi 10` | `Pi is roughly 3.14446...` |
| Scala `spark-shell` `spark.range(1e9).count()` | `1000000000` |
| PySpark `spark-submit` (range count + aggregation) | `1000000000`,
`sum_id=6` |
| Maven `assembly,examples -am` | `BUILD SUCCESS`, 33/33 modules |
| Install idempotence | Passed on a second run |
No unit tests: these files are contributor-environment setup, not Spark
runtime code.
### Was this patch authored or co-authored using generative AI tooling?
Generated-by: Cursor Grok 4.6
cc @HyukjinKwon @dongjoon-hyun @nchammas
--
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]