spark-version-upgrade SKILL.md skillA

spark-version-upgrade from openhands/extensions is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add openhands/extensions/spark-version-upgrade@git:20260701.599cc4d

Pins git:20260701.599cc4d in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
openhands/extensions
Path
skills/spark-version-upgrade/SKILL.md
Versions recorded
2
Latest version
git:20260701.599cc4d, committed Jul 1, 2026
First version recorded
Apr 6, 2026
Size
7,777 bytes
Repository stars
179
License
MIT

Upgrade Apache Spark applications between major versions (2.x→3.x, 3.x→4.x). Covers build files, deprecated APIs, configuration changes, SQL/DataFrame updates, and test validation.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

Upgrade Apache Spark applications between major versions with a structured, phase-by-phase workflow.

## When to Use

- Migrating from Spark 2.x → 3.x or Spark 3.x → 4.x
- Updating PySpark, Spark SQL, or Structured Streaming applications
- Resolving deprecation warnings before a Spark version bump

## Workflow Overview

1. **Inventory & Impact Analysis** — Scan the codebase and assess scope
2. **Build File Updates** — Bump Spark/Scala/Java dependencies
3. **API Migration** — Replace deprecated and removed APIs
4. **Configuration Migration** — Update Spark config properties
5. **SQL & DataFrame Migration** — Fix query-level breaking changes
6. **Test Validation** — Compile, run tests, verify results

---

## Phase 1: Inventory & Impact Analysis

Before changing any code, assess what needs to change. Read the official Apache Spark migration guide for the target version — it documents every API removal, config rename, and behavioral change per release:
https://spark.apache.org/docs/latest/migration-guide.html

### Checklist

- [ ] Read the migration guide section for the target Spark version
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add openhands/extensions/spark-version-upgrade@sha256:4351d37aec3b7b19

The line at the top of this page pins the label git:20260701.599cc4d, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_xhnujy6lvz3iwhcg.svg)](https://markdownregistry.com/a/art_xhnujy6lvz3iwhcg)

2 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 2 versions of this file, between Apr 6, 2026 and Jul 1, 2026, about one every 86 days.

versioncommittedcommitsizeaudit
git:20260701.599cc4d latest2026-07-01 599cc4d 7,777 BA view · diff
git:20260406.ef5a6c22026-04-06 ef5a6c2 7,592 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (7777 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

openhands/extensions · 179 stars · license MIT · pushed 2026-11-08 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_xhnujy6lvz3iwhcg
GET https://markdownregistry.com/api/v1/resolve?ref=openhands/extensions/spark-version-upgrade
GET https://markdownregistry.com/api/v1/blob/4351d37aec3b7b19cc52bba87aaa8c48c67c0ee4a50e73afcb175aeca4fe4762

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from openhands/extensions

AGENTS.md AGENTS.md file
openhands/extensions · AGENTS.md
git:20261105.ff74820 · audit A · 179 stars
build-setup SKILL.md skill
openhands/extensions · plugins/cobol-modernization/skills/build-setup/SKILL.md · Set up build environment and test fixtures for COBOL-to-Java migrations. Creates compilation infrastructure for both…
git:20260701.599cc4d · audit A · 179 stars
cobol-modernization SKILL.md skill
openhands/extensions · plugins/cobol-modernization/skills/cobol-modernization/SKILL.md · End-to-end COBOL to Java migration workflow. Handles build setup, mainframe dependency removal, and code migration with…
git:20260701.599cc4d · audit A · 179 stars
mainframe-planning SKILL.md skill
openhands/extensions · plugins/cobol-modernization/skills/mainframe-planning/SKILL.md · Create a transformation guide for replacing mainframe-specific COBOL constructs with standard COBOL equivalents. Use…
git:20260306.cebd78b · audit A · 179 stars
mainframe-removal SKILL.md skill
openhands/extensions · plugins/cobol-modernization/skills/mainframe-removal/SKILL.md · Apply mainframe dependency transformations to COBOL code using a pre-generated transformation guide. Converts CICS/VSAM…
git:20260621.c72f462 · audit A · 179 stars
to-java-migration SKILL.md skill
openhands/extensions · plugins/cobol-modernization/skills/to-java-migration/SKILL.md · Migrate COBOL code to idiomatic Java, preserving business logic while following Java best practices. Use for COBOL…
git:20260306.cebd78b · audit A · 179 stars
magic-word SKILL.md skill
openhands/extensions · plugins/magic-test/skills/magic-word/SKILL.md · A test skill that responds to the magic word "alakazam" with a specific phrase
git:20260621.c72f462 · audit A · 179 stars
migration-mapping SKILL.md skill
openhands/extensions · plugins/migration-scoring/skills/migration-mapping/SKILL.md · Create a mapping from source language files to target language files for code migrations. Use when evaluating or…
git:20260306.cebd78b · audit A · 179 stars
migration-report SKILL.md skill
openhands/extensions · plugins/migration-scoring/skills/migration-report/SKILL.md · Generate a comprehensive migration report summarizing quality scores and providing recommendations. Use after scoring a…
git:20260306.cebd78b · audit A · 179 stars
migration-scoring SKILL.md skill
openhands/extensions · plugins/migration-scoring/skills/migration-scoring/SKILL.md · Evaluate code migration quality with coverage, correctness, and style scoring. Generates executive reports with…
git:20260701.599cc4d · audit A · 179 stars
score-quality SKILL.md skill
openhands/extensions · plugins/migration-scoring/skills/score-quality/SKILL.md · Score code migration quality based on coverage and correctness. Evaluates how well target code represents source…
git:20260306.cebd78b · audit A · 179 stars
score-style SKILL.md skill
openhands/extensions · plugins/migration-scoring/skills/score-style/SKILL.md · Score migrated code against style guidelines and best practices. Evaluates code quality independent of functional…
git:20260306.cebd78b · audit A · 179 stars

Every file in openhands/extensions

Browse by kind, by grade A, or by owner.