Skip to content

Releases

v0.5.1

Choose a tag to compare

@adnankurt16 adnankurt16 released this 03 Apr 11:10

Fix

  • pxnship pack artık default olarak build alıyor (--skip-build ile atlanabilir)
  • Build adımı sayesinde static ve public dosyaları zip'e dahil ediliyor

v0.5.0

Choose a tag to compare

@adnankurt16 adnankurt16 released this 03 Apr 08:48

New Feature

  • pxnship pack komutu: upload edilecek dosyaları sunucuya göndermeden zipleyip local'e kaydeder
  • -o flag ile çıktı dosya yolu belirlenebilir

Refactor

  • collectFiles fonksiyonu ortak hale getirildi, SFTP upload'daki duplicate mantık kaldırıldı

v0.4.1

Choose a tag to compare

@adnankurt16 adnankurt16 released this 03 Apr 08:17

Bug Fix

  • SFTP fallback'te symlink'lerden kaynaklanan EISDIR hatasını düzelt
  • sshpass yüklü değilse kullanıcıyı uyar ve kurulum komutu göster

v0.4.0

Choose a tag to compare

@adnankurt16 adnankurt16 released this 30 Dec 16:45

feat(build): Pass pm2.env to build process for NEXT_PUBLIC vars

  • pm2.env values are now passed to the build process
  • This enables NEXT_PUBLIC_* environment variables to be embedded at build time
  • Useful for Next.js apps that need public env vars during static generation

v0.3.2

Choose a tag to compare

@adnankurt16 adnankurt16 released this 30 Dec 16:10

fix(pm2): Apply ecosystem.config.js changes on reload

  • When ecosystem file exists, uses pm2 reload/restart ecosystemFile --update-env command
  • This ensures PORT, env variables and other config changes are applied during deployment

v0.3.1

Choose a tag to compare

@adnankurt16 adnankurt16 released this 14 Dec 08:56

Bug Fix

Windows CMD Trailing Space Issue

Fixed a critical bug where environment variables on Windows had a trailing space.

Before (broken):

set API_BASE_URL=https://api.example.com && pm2 reload app

The space before && was included in the value: https://api.example.com

After (fixed):

set "API_BASE_URL=https://api.example.com" && pm2 reload app

Quotes prevent the trailing space from being included.

Impact

  • URLs were malformed: https://api.example.com /api/v1/...
  • API requests failed with "Invalid URL" error

Upgrade

bunx @pxilab/nextship@0.3.1 ship

v0.3.0

Choose a tag to compare

@adnankurt16 adnankurt16 released this 14 Dec 08:36

What's New

PM2 Environment Variable Injection

You can now inject environment variables when PM2 starts or reloads:

pm2: {
  appName: "myapp",
  env: {
    NODE_ENV: "production",
    API_BASE_URL: process.env.API_BASE_URL,
    DATABASE_URL: process.env.DATABASE_URL,
  },
}

How it works:

  • Environment variables are passed via shell environment
  • Windows: set VAR=val && pm2 reload app
  • Linux: VAR=val pm2 reload app
  • Variables persist after pm2 save

Use case: Deploy from GitHub Actions with secrets:

env:
  API_BASE_URL: ${{ secrets.API_BASE_URL }}

The config reads process.env.API_BASE_URL and injects it to PM2.

Other Changes

  • Added escapeShellValue() for safe command execution
  • Dry-run now shows env variable count
  • Updated documentation and example config

v0.2.0

Choose a tag to compare

@adnankurt16 adnankurt16 released this 14 Dec 07:09

What's New

Local Standalone Preparation (prepareLocally)

New prepareLocally option (default: true) that copies public/ and .next/static/ into .next/standalone/ locally after build.

Benefits:

  • Upload only .next/standalone/ to server (single folder)
  • No duplicate public/, static/, or package.json on server
  • Cleaner server directory structure
  • Slightly faster uploads (less files)

Breaking Changes

  • Default include list changed from [".next/standalone/", ".next/static/", "public/", "package.json"] to [".next/standalone/"]
  • If you have custom include in your config, you may need to update it

Migration

If you want the old behavior, set prepareLocally: false in your config:

build: {
  prepareLocally: false,
},
upload: {
  include: [".next/standalone/", ".next/static/", "public/", "package.json"],
}

v0.1.7

Choose a tag to compare

@adnankurt16 adnankurt16 released this 13 Dec 16:19

feat: show build and upload duration separately in deployment summary

v0.1.6 - Upload Size Display

Choose a tag to compare

@adnankurt16 adnankurt16 released this 13 Dec 15:54

New Features

  • Show upload size in progress message (e.g., 2679 files, 270.9 KB)
  • Show upload size in deployment summary (Uploaded: 270.9 KB)
  • Automatically format bytes to KB/MB/GB

Documentation

  • Updated README and ARCHITECTURE with .mjs config file recommendation
  • Added all supported config formats to docs