2024-06-20 15:35:28 +02:00
import { execSync } from 'child_process'
import path from 'path'
import { fileURLToPath } from 'url'
2025-06-03 17:51:55 +02:00
import { readFileSync } from 'fs'
2024-06-20 15:35:28 +02:00
const dirname = path . join ( path . dirname ( fileURLToPath ( import . meta . url )))
const conventionalChangelog = path . join ( dirname , '..' , 'node_modules' , '.bin' , 'conventional-changelog' )
2025-06-03 17:51:55 +02:00
const packageJsonPath = path . join ( dirname , '..' , 'package.json' )
const packageJson = JSON . parse ( readFileSync ( packageJsonPath , 'utf8' ))
const version = packageJson . version
2023-09-18 00:08:27 +00:00
// sometimes release-count 1 is empty
let releaseChangelog =
execSync ( ` ${ conventionalChangelog } --preset angular --release-count 1` ). toString () ||
execSync ( ` ${ conventionalChangelog } --preset angular --release-count 2` ). toString ()
// format
releaseChangelog = releaseChangelog . trim (). replace ( /\n\n+/g , '\n\n' )
2025-06-04 15:00:46 +02:00
const releaseBody = `This version adds minor features and fixes some bugs.
2025-06-03 17:51:55 +02:00
- Web app: https://plebchan.app
- Decentralized web app: https://plebchan.eth (only works on [Brave Browser](https://brave.com/) or via [IPFS Companion](https://docs.ipfs.tech/install/ipfs-companion/#prerequisites))
## Downloads
- Android app: [Download APK](https://github.com/plebbit/plebchan/releases/download/v ${ version } /plebchan- ${ version } .apk)
- Linux app: [Download AppImage](https://github.com/plebbit/plebchan/releases/download/v ${ version } /plebchan- ${ version } .AppImage)
- macOS app: [Download DMG](https://github.com/plebbit/plebchan/releases/download/v ${ version } /plebchan- ${ version } .dmg)
- Windows app: [Download EXE](https://github.com/plebbit/plebchan/releases/download/v ${ version } /plebchan.Setup. ${ version } .exe)
2023-09-18 00:08:27 +00:00
${ releaseChangelog } `
console . log ( releaseBody )