github meceware/wapy.dev v2.0.0

10 hours ago

Features

  • Migrated from Auth.js to BetterAuth for more robust and maintainable authentication handling. (#88)

  • [New] Added external services:

    Note: The previous safe webhook option has been removed. If you were using it, please re-enter the URL under the new Webhook service.

  • [New] Repeat reminder until marked as paid (#72)
    Subscriptions will now send daily reminders using the last used notification types for 3 days.

  • Removed Resend deprecation. (#65)

Fixes

  • Corrected contact form link in the mobile menu.
  • General code cleanup.
  • Dependency and package updates.

Migration Notes

  • Removed from .env:

    AUTH_TRUST_HOST
    AUTH_URL
  • Provider Configuration Changes

Old New
KEYCLOAK_*
AUTHENTIK_*
GENERIC_AUTH_PROVIDER
GENERIC_AUTH_CLIENT_ID
GENERIC_AUTH_CLIENT_SECRET
GENERIC_AUTH_ISSUER

Migration Steps

  1. Back up your database
    Run the command below or use your preferred method for database backup.

    ./scripts/backup.sh
  2. Clean up old .env values
    Remove:

    AUTH_TRUST_HOST=true
    AUTH_URL=${SITE_URL}/api/auth
  3. For Keycloak and Authentik users

    • Update OAuth redirect URIs to:

      http(s)://<yourdomain.com>/api/auth/oauth2/callback/authentik
      http(s)://<yourdomain.com>/api/auth/oauth2/callback/keycloak 
      
    • Update your .env accordingly:
      If using Keycloak:

      GENERIC_AUTH_PROVIDER=keycloak
      GENERIC_AUTH_CLIENT_ID=<KEYCLOAK_ID>
      GENERIC_AUTH_CLIENT_SECRET=<KEYCLOAK_SECRET>
      GENERIC_AUTH_ISSUER=<KEYCLOAK_ISSUER>

      If using Authentik:

      GENERIC_AUTH_PROVIDER=authentik
      GENERIC_AUTH_CLIENT_ID=<AUTHENTIK_ID>
      GENERIC_AUTH_CLIENT_SECRET=<AUTHENTIK_SECRET>
      GENERIC_AUTH_ISSUER=<AUTHENTIK_ISSUER>

After Migration

  1. If you see a collation warning on the database container, refresh the collation version without dropping any data:

    # Enter the running Postgres container, or use your preferred method
    docker exec -it <container_name> sh
    # Inside the container
    # Connect to Postgres
    psql -U wapydev
    
    # Rebuild all indexes in the database that depend on the default collation
    REINDEX DATABASE wapydev;
    # Refresh the stored collation version to match the current OS/library
    ALTER DATABASE wapydev REFRESH COLLATION VERSION;

What's Changed

Full Changelog: v1.7.0...v2.0.0

Don't miss a new wapy.dev release

NewReleases is sending notifications on new releases.