Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,29 +1,14 @@
on:
push:
branches:
- main
release:
types: [published]

permissions:
contents: write
pull-requests: write
contents: read

name: Release Please
name: Publish NuGet

jobs:
release-please:
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
tag_name: ${{ steps.release.outputs.tag_name }}
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
token: ${{ secrets.GITHUB_TOKEN }}

publish:
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
Expand All @@ -48,7 +33,7 @@ jobs:

- name: Pack NuGet
env:
TAG_NAME: ${{ needs.release-please.outputs.tag_name }}
TAG_NAME: ${{ github.event.release.tag_name }}
run: just pack-version ${TAG_NAME#v}

- name: Push NuGet
Expand Down
3 changes: 0 additions & 3 deletions .release-please-manifest.json

This file was deleted.

36 changes: 3 additions & 33 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,24 @@

## [5.0.0-alpha.21.5](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21.4...v5.0.0-alpha.21.5) (2025-12-21)


### Bug Fixes

* remove XUnit dependency from Testing module ([3a35e44](https://github.com/fable-compiler/Fable.Python/commit/3a35e4404624a0c2c13b8c869ff987ac7c81a7d7))

## [5.0.0-alpha.21.4](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21.4...v5.0.0-alpha.21.4) (2025-12-21)


### Bug Fixes

* remove XUnit dependency from Testing module ([3a35e44](https://github.com/fable-compiler/Fable.Python/commit/3a35e4404624a0c2c13b8c869ff987ac7c81a7d7))

## [5.0.0-alpha.21.4](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21.3...v5.0.0-alpha.21.4) (2025-12-21)


### Features

* add Fable.Python.Testing module for cross-platform testing ([#186](https://github.com/fable-compiler/Fable.Python/issues/186)) ([2356705](https://github.com/fable-compiler/Fable.Python/commit/235670557cfb1913b9e67f7ad2e0fd4772a6de6b))

## [5.0.0-alpha.21.3](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21.2...v5.0.0-alpha.21.3) (2025-12-19)


### Features

* add Fable.Types module for runtime type detection ([#184](https://github.com/fable-compiler/Fable.Python/issues/184)) ([6e1e902](https://github.com/fable-compiler/Fable.Python/commit/6e1e902a0203d24206c3a7e6719383e464193fd5))

## [5.0.0-alpha.21.2](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21.1...v5.0.0-alpha.21.2) (2025-12-18)


### Features

* add typed array support to Json serialization ([#182](https://github.com/fable-compiler/Fable.Python/issues/182)) ([ef67b4b](https://github.com/fable-compiler/Fable.Python/commit/ef67b4ba9258fde6a3f4ff3db0b843228953e7bc))
Expand All @@ -41,32 +30,13 @@

* Add Json static class with Fable-aware serialization ([#175](https://github.com/fable-compiler/Fable.Python/issues/175)) ([1eb5005](https://github.com/fable-compiler/Fable.Python/commit/1eb500523c6d6f43247bc3510a6045ec8d9d9d4e))

### Bug Fixes

* correct manifest to last released version ([bb9cb88](https://github.com/fable-compiler/Fable.Python/commit/bb9cb881c00b7ea6809ad3a87a35a7ebc0ff9008))
* remove versioning strategy from release-please config ([ce84cae](https://github.com/fable-compiler/Fable.Python/commit/ce84caeeb7caa24eaecd96fb8e0723e7cb6e7c6a))
* update release-please to use prerelease versioning ([7c219e8](https://github.com/fable-compiler/Fable.Python/commit/7c219e848fd3201d4567685ddfefae48c362856c))

## [5.0.0-alpha.21.0](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.21...v5.0.0-alpha.21.0) (2025-12-16)
## [5.0.0-alpha.21.0](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.20.2...v5.0.0-alpha.21.0) (2025-12-16)

### Features

* Add exception types ([#173](https://github.com/fable-compiler/Fable.Python/issues/173)) ([72f09b2](https://github.com/fable-compiler/Fable.Python/commit/72f09b2ff6e208e3ab057430a355814611abd46c))
* add Python stdlib bindings for logging, random, and expand string module ([#166](https://github.com/fable-compiler/Fable.Python/issues/166)) ([709d6c2](https://github.com/fable-compiler/Fable.Python/commit/709d6c2b29199965926ff639727fdcc1bb2e1fb8))
* add write ([334e800](https://github.com/fable-compiler/Fable.Python/commit/334e80089c081bda25633f83dae037fc6c8fe6f5))
* Added bindings for Pydantic and FastAPI + examples ([#151](https://github.com/fable-compiler/Fable.Python/issues/151)) ([826629e](https://github.com/fable-compiler/Fable.Python/commit/826629e465fca15d444a4ca37b851b8aab488f9a))
* Fable v5 ([#147](https://github.com/fable-compiler/Fable.Python/issues/147)) ([abf8e6a](https://github.com/fable-compiler/Fable.Python/commit/abf8e6a1f7bbc2eae152431d04d6b8b5675f7795))
* FastAPI async handlers ([#174](https://github.com/fable-compiler/Fable.Python/issues/174)) ([26cec1f](https://github.com/fable-compiler/Fable.Python/commit/26cec1f239f9244a7c1da1d00bbf1a479596bb3c))

### Bug Fixes

* add missing models.py for pydantic example and update README ([#168](https://github.com/fable-compiler/Fable.Python/issues/168)) ([b76ce98](https://github.com/fable-compiler/Fable.Python/commit/b76ce989e0598d0007a8a1be9addfea97936eae7))
* handle return type correctly ([a634168](https://github.com/fable-compiler/Fable.Python/commit/a6341684ac8bb3f1b244f448c22e1fe6f208fbc0))
* relax FSharp.Core dependency to >= 5.0.0 ([#163](https://github.com/fable-compiler/Fable.Python/issues/163)) ([10eb65b](https://github.com/fable-compiler/Fable.Python/commit/10eb65b22a157078e1b66bd8fb202b0cd2acbedc))
* update pyproject toml details ([#62](https://github.com/fable-compiler/Fable.Python/issues/62)) ([b511351](https://github.com/fable-compiler/Fable.Python/commit/b5113514ca6b4a9ba00734e9b3caaf363f3385af))
* use plain int/string types for open ([b202a25](https://github.com/fable-compiler/Fable.Python/commit/b202a25bd7f48538fadc50125294a9252714d364))
* use string types for open ([f211f8b](https://github.com/fable-compiler/Fable.Python/commit/f211f8bb9445dd6930926fe48aab6a69720dd30f))

### Miscellaneous Chores

* sync with Fable 5.0.0-alpha.21 ([fd2685c](https://github.com/fable-compiler/Fable.Python/commit/fd2685c2f992c2d8058ac1bc1261d647271359df))
Expand All @@ -81,9 +51,9 @@

### Bug Fixes

* relax FSharp.Core dependency to >= 5.0.0 ([#163](https://github.com/fable-compiler/Fable.Python/issues/163)) ([10eb65b](https://github.com/fable-compiler/Fable.Python/commit/10eb65b22a157078e1b66bd8fb202b0cd2acbedc))
* relax FSharp.Core dependency to >= 5.0.0 ([#163](https://github.com/fable-compiler/Fable.Python/issues/163)) ([10eb65b](https://github.com/fable-compiler/Fable.Python/commit/10eb65b22a157078e1b66bd8fb202b0cd2acbedc))

## [5.0.0-alpha.20](https://github.com/fable-compiler/Fable.Python/compare/v5.0.0-alpha.20...v5.0.0-alpha.20) (2025-12-08)
## [5.0.0-alpha.20](https://github.com/fable-compiler/Fable.Python/compare/v4.0.0...v5.0.0-alpha.20) (2025-12-08)

### Features

Expand Down
60 changes: 14 additions & 46 deletions RELEASING.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,37 @@
# Releasing Fable.Python

This document describes the release process for Fable.Python and how to keep versions in sync with Fable.

## Version Format

Fable.Python uses the version format `X.Y.Z-alpha.N.P` where:

- `X.Y.Z-alpha.N` matches the Fable version (e.g., `5.0.0-alpha.21`)
- `X.Y.Z-alpha.N` matches the Fable version (e.g., `5.0.0-alpha.22`)
- `P` is the patch version for Fable.Python releases (0, 1, 2, etc.)

Example: `5.0.0-alpha.21.0`, `5.0.0-alpha.21.1`, `5.0.0-alpha.21.2`
Example: `5.0.0-alpha.22.0`, `5.0.0-alpha.22.1`, `5.0.0-alpha.22.2`

## Release Process

This project uses [release-please](https://github.com/googleapis/release-please) to automate releases. Release-please creates and maintains a release PR that updates automatically as commits are merged to main.

**Important:** Due to the custom version format, use `Release-As:` to specify the version.

### Setting the Version

Add `Release-As:` in the commit message or PR description:

#### In the commit message

```text
feat: add new feature

Release-As: 5.0.0-alpha.21.1
```

#### In the PR description
1. Go to [GitHub Releases](https://github.com/fable-compiler/Fable.Python/releases)
2. Click **"Draft a new release"**
3. Create a new tag in the format `v5.0.0-alpha.22.0` (with `v` prefix)
4. Set the release title (e.g., `5.0.0-alpha.22.0`)
5. Write release notes (or use "Generate release notes")
6. For pre-release versions, check **"Set as a pre-release"**
7. Click **"Publish release"**

Add this line anywhere in the PR body:
The publish workflow will automatically build and push the NuGet package.

```text
Release-As: 5.0.0-alpha.21.1
```
## Syncing with a New Fable Version

Release-please will use the specified version for the release.

### Syncing with a New Fable Version

When Fable releases a new version (e.g., `5.0.0-alpha.22`):
When Fable releases a new version (e.g., `5.0.0-alpha.23`):

1. Update the codebase to work with the new Fable version
2. Use `Release-As: 5.0.0-alpha.22.0` in the commit or PR
3. Merge the release-please PR
2. Create a release with tag `v5.0.0-alpha.23.0`

### Version History Example
## Version History Example

- `5.0.0-alpha.21.0` (initial sync with Fable 5.0.0-alpha.21)
- `5.0.0-alpha.21.1` (first patch)
- `5.0.0-alpha.21.2` (second patch)
- `5.0.0-alpha.22.0` (sync with Fable 5.0.0-alpha.22)
- `5.0.0-alpha.22.1` (first patch for alpha.22)

## Configuration Files

- `release-please-config.json` - Release-please configuration (release type, tag format)
- `.release-please-manifest.json` - Tracks the current released version

## Conventional Commits

This project uses [conventional commits](https://www.conventionalcommits.org/):

- `feat:` - New features
- `fix:` - Bug fixes
- `chore:`, `docs:`, `style:`, `refactor:`, `test:` - Other changes
12 changes: 0 additions & 12 deletions release-please-config.json

This file was deleted.