Skip to content

Conversation

HyukjinKwon
Copy link
Member

@HyukjinKwon HyukjinKwon commented Jun 24, 2025

What changes were proposed in this pull request?

This PR proposes to add the automatic release note process. Here is what it does:

  1. Add download link to docs
    Inserts the new release version link into documentation.md, keeping versions sorted by recency.

  2. Add download link to spark-website
    Updates js/downloads.js with the new version's metadata for the downloads page. Replaces existing entry if it's a patch; inserts new entry otherwise. Uses different package lists for Spark 3 vs. Spark 4.

  3. Generate news & release notes
    Creates a news post and release notes file as below. Note that I skipped the short link generation step here.

    • For minor/major releases (x.y.0), describes new features
    • For patch/maintenance releases (x.y.z, z > 0), mentions stability fixes and encourages upgrades.
  4. Build the Website
    Runs Jekyll to generate updated HTML files for the website.

  5. Update latest symlink (only for major/minor)
    Updates the site/docs/latest symlink to point to the new version only if it's a major or minor release (x.y.0), so maintenance releases don’t affect the default documentation version.

If the release manager needs to have better release notes, they can create a separate PR to update this.

Why are the changes needed?

To make the release process easier.

Does this PR introduce any user-facing change?

No, dev-only.

How was this patch tested?

I manually tested them in my Mac for now, and checked that they are compatible with Ubuntu. It has to be tested in the official release later again.

Was this patch authored or co-authored using generative AI tooling?

No.

@HyukjinKwon HyukjinKwon force-pushed the SPARK-52562 branch 2 times, most recently from b0048de to 70791d8 Compare June 24, 2025 03:48
@gengliangwang
Copy link
Member

Shall we rewrite most of the logic using python? It will be easier to maintain.

@HyukjinKwon HyukjinKwon marked this pull request as draft June 24, 2025 04:14
@HyukjinKwon HyukjinKwon marked this pull request as ready for review June 24, 2025 04:43
Copy link
Member

@dongjoon-hyun dongjoon-hyun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, LGTM.

CURRENT_TARGET=""
fi
if [[ "$CURRENT_TARGET" != "$RELEASE_VERSION" ]]; then
ln -sfn "$RELEASE_VERSION" "$LINK_PATH"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QQ: shall we check if the RELEASE_VERSION is newer than the existing version?

@HyukjinKwon
Copy link
Member Author

Merged to master, branch-4.0, and branch-3.5.

HyukjinKwon added a commit that referenced this pull request Jun 24, 2025
…nd push

### What changes were proposed in this pull request?

This PR proposes to add the automatic release note process. Here is what it does:

1. Add download link to docs
  Inserts the new release version link into `documentation.md`, keeping versions sorted by recency.

2. Add download link to spark-website
  Updates `js/downloads.js` with the new version's metadata for the downloads page. Replaces existing entry if it's a patch; inserts new entry otherwise. Uses different package lists for Spark 3 vs. Spark 4.

3. Generate news & release notes
  Creates a news post and release notes file as below. Note that I skipped the short link generation step here.
    - For minor/major releases (x.y.0), describes new features
    - For patch/maintenance releases (x.y.z, z > 0), mentions stability fixes and encourages upgrades.

4. Build the Website
  Runs Jekyll to generate updated HTML files for the website.

5. Update latest symlink (only for major/minor)
  Updates the `site/docs/latest` symlink to point to the new version only if it's a major or minor release (x.y.0), so maintenance releases don’t affect the default documentation version.

If the release manager needs to have better release notes, they can create a separate PR to update this.

### Why are the changes needed?

To make the release process easier.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

I manually tested them in my Mac for now, and checked that they are compatible with Ubuntu. It has to be tested in the official release later again.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes #51260 from HyukjinKwon/SPARK-52562.

Authored-by: Hyukjin Kwon <[email protected]>
Signed-off-by: Hyukjin Kwon <[email protected]>
(cherry picked from commit 82ab680)
Signed-off-by: Hyukjin Kwon <[email protected]>
HyukjinKwon added a commit that referenced this pull request Jun 24, 2025
…nd push

### What changes were proposed in this pull request?

This PR proposes to add the automatic release note process. Here is what it does:

1. Add download link to docs
  Inserts the new release version link into `documentation.md`, keeping versions sorted by recency.

2. Add download link to spark-website
  Updates `js/downloads.js` with the new version's metadata for the downloads page. Replaces existing entry if it's a patch; inserts new entry otherwise. Uses different package lists for Spark 3 vs. Spark 4.

3. Generate news & release notes
  Creates a news post and release notes file as below. Note that I skipped the short link generation step here.
    - For minor/major releases (x.y.0), describes new features
    - For patch/maintenance releases (x.y.z, z > 0), mentions stability fixes and encourages upgrades.

4. Build the Website
  Runs Jekyll to generate updated HTML files for the website.

5. Update latest symlink (only for major/minor)
  Updates the `site/docs/latest` symlink to point to the new version only if it's a major or minor release (x.y.0), so maintenance releases don’t affect the default documentation version.

If the release manager needs to have better release notes, they can create a separate PR to update this.

### Why are the changes needed?

To make the release process easier.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

I manually tested them in my Mac for now, and checked that they are compatible with Ubuntu. It has to be tested in the official release later again.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes #51260 from HyukjinKwon/SPARK-52562.

Authored-by: Hyukjin Kwon <[email protected]>
Signed-off-by: Hyukjin Kwon <[email protected]>
(cherry picked from commit 82ab680)
Signed-off-by: Hyukjin Kwon <[email protected]>
haoyangeng-db pushed a commit to haoyangeng-db/apache-spark that referenced this pull request Jul 22, 2025
…nd push

### What changes were proposed in this pull request?

This PR proposes to add the automatic release note process. Here is what it does:

1. Add download link to docs
  Inserts the new release version link into `documentation.md`, keeping versions sorted by recency.

2. Add download link to spark-website
  Updates `js/downloads.js` with the new version's metadata for the downloads page. Replaces existing entry if it's a patch; inserts new entry otherwise. Uses different package lists for Spark 3 vs. Spark 4.

3. Generate news & release notes
  Creates a news post and release notes file as below. Note that I skipped the short link generation step here.
    - For minor/major releases (x.y.0), describes new features
    - For patch/maintenance releases (x.y.z, z > 0), mentions stability fixes and encourages upgrades.

4. Build the Website
  Runs Jekyll to generate updated HTML files for the website.

5. Update latest symlink (only for major/minor)
  Updates the `site/docs/latest` symlink to point to the new version only if it's a major or minor release (x.y.0), so maintenance releases don’t affect the default documentation version.

If the release manager needs to have better release notes, they can create a separate PR to update this.

### Why are the changes needed?

To make the release process easier.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

I manually tested them in my Mac for now, and checked that they are compatible with Ubuntu. It has to be tested in the official release later again.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#51260 from HyukjinKwon/SPARK-52562.

Authored-by: Hyukjin Kwon <[email protected]>
Signed-off-by: Hyukjin Kwon <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants