====== Postopek izdaje ====== Navodila za objavo novih verzij WvdS FPC RAD Studio. ===== Verzioniranje ===== ==== Semantično verzioniranje ==== MAJOR.MINOR.PATCH │ │ └── Popravki napak │ └── Nove funkcionalnosti (povratno združljivo) └── Prelomne spremembe ==== Pred-izdajne verzije ==== * ''1.0.0-alpha.1'' - Zgodnji razvoj * ''1.0.0-beta.1'' - Vse funkcionalnosti, testiranje * ''1.0.0-rc.1'' - Kandidat za izdajo ===== Kontrolni seznam izdaje ===== PRED IZDAJO: [ ] Vsi testi uspešni [ ] Pregled kode zaključen [ ] Dokumentacija posodobljena [ ] CHANGELOG posodobljen [ ] Verzija v package.json posodobljena [ ] Brez TODO/FIXME v kodi GRADNJA: [ ] Izdajna gradnja ustvarjena (--mode release) [ ] Gradbeni artefakti preverjeni [ ] VSIX paketi ustvarjeni [ ] Paketi lokalno testirani OBJAVA: [ ] Git oznaka ustvarjena [ ] GitHub izdaja ustvarjena [ ] Objava na tržnici [ ] Dokumentacija nameščena PO IZDAJI: [ ] Dvig verzije za naslednji razvoj [ ] Opombe ob izdaji sporočene ===== Vzdrževanje CHANGELOG ===== # Changelog ## [1.2.0] - 2024-01-15 ### Added - Nova funkcionalnost X - Podpora za Y ### Changed - Izboljšano obnašanje pri Z ### Fixed - Odpravljena napaka v funkcionalnosti A (#123) ### Removed - Odstranjena zastarela funkcionalnost B ===== Ustvarjanje gradnje ===== # Čista gradnja wvds-build clean wvds-build --mode release # Ustvari VSIX wvds-build package # Rezultat v binaries/dist/ ls binaries/dist/ # wvds-vscode-core-1.2.0.vsix # wvds-vscode-build-1.2.0.vsix # ... ===== Git potek dela ===== # Zagotovi, da je main aktualen git checkout main git pull origin main # Posodobi verzijo # Uredi package.json, CHANGELOG.md # Potrdi git add -A git commit -m "Release v1.2.0" # Ustvari oznako git tag -a v1.2.0 -m "Version 1.2.0" # Potisni git push origin main git push origin v1.2.0 ===== GitHub izdaja ===== gh release create v1.2.0 \ --title "WvdS FPC RAD Studio v1.2.0" \ --notes-file CHANGELOG.md \ binaries/dist/*.vsix ===== Objava na tržnici ===== ==== Predpogoji ==== * ''vsce'' nameščen: ''npm install -g @vscode/vsce'' * Personal Access Token (PAT) z obsegom Marketplace * Registriran založniški račun ==== Objava ==== # Posamezna razširitev vsce publish -p $PAT # Vse razširitve for vsix in binaries/dist/*.vsix; do vsce publish --packagePath "$vsix" -p $PAT done ==== Preverjanje ==== Po objavi: - Preverite stran na tržnici - Testirajte namestitev v VS Code - Ali je README pravilno prikazan? ===== Postopek nujnih popravkov ===== Pri kritičnih napakah po izdaji: # Ustvari vejo za nujni popravek iz oznake git checkout -b hotfix/1.2.1 v1.2.0 # Implementiraj popravek # ... # Testiraj, potrdi git commit -m "Fix: Critical bug in X" # Dvig verzije # package.json: 1.2.0 -> 1.2.1 git commit -m "Bump version to 1.2.1" # Oznaka in izdaja git tag -a v1.2.1 -m "Hotfix: Critical bug in X" git push origin hotfix/1.2.1 git push origin v1.2.1 # Združi v main git checkout main git merge hotfix/1.2.1 git push origin main ===== Povrnitev ===== Če je izdaja napačna: # Tržnica: Označi prejšnjo verzijo kot "latest" vsce unpublish wvds.wvds-vscode-core@1.2.0 # Ali: Objavi nujni popravek ===== Avtomatizacija ===== ==== GitHub Actions ==== name: Release on: push: tags: - 'v*' jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Build run: wvds-build --mode release - name: Package run: wvds-build package - name: Create Release uses: softprops/action-gh-release@v1 with: files: binaries/dist/*.vsix - name: Publish to Marketplace env: VSCE_PAT: ${{ secrets.VSCE_PAT }} run: | npm install -g @vscode/vsce for vsix in binaries/dist/*.vsix; do vsce publish --packagePath "$vsix" done ===== Glejte tudi ===== * [[.:build-pipeline|Gradbeni cevovod]] * [[..:p:packaging|Razširitev za pakiranje]] * [[.:testing|Testiranje]]