Skip to content

enable OTP email, add debug logs and enable realtime locally #62

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

zoedsoupe
Copy link
Collaborator

Problem

The current version of supabase-ex lacks comprehensive logging capabilities, making it difficult for developers to debug issues when interacting with Supabase services. Additionally, the local development configuration needs updates to enable essential services like Realtime and Inbucket for testing. Documentation also requires updates to reflect new dependency versions and available integrations.

Solution

This PR implements several focused improvements:

  1. Added proper logging throughout the Fetcher module using the standard Logger functionality
  2. Updated the local Supabase configuration (config.toml) to enable Realtime, Inbucket, and appropriate authentication settings
  3. Added email templates for various authentication flows
  4. Updated dependency versions in documentation from 0.5 to 0.6
  5. Added references to Edge Functions and Realtime integrations in the README
  6. Added a new section on debugging and logging configuration

The changes ensure that error handling in the HTTP client provides appropriate log messages at debug and error levels, respecting the application's configured log level.

Rationale

These improvements address several practical needs:

  1. Enhanced Logging: The strategic placement of log statements in error handling paths provides better visibility into request failures without being overly verbose. Using the standard Logger module ensures compatibility with existing logging backends and configuration.

  2. Development Configuration: Enabling Realtime, Inbucket and authentication services in the local development environment makes it easier for contributors to test their changes comprehensively.

  3. Documentation Updates: The README changes ensure users are aware of all available integrations and use the correct dependency versions.

The implementation maintains backward compatibility while improving developer experience. The logging approach follows established Elixir conventions by using appropriate log levels (debug for general issues, error for exceptions) and provides context-rich messages that will help diagnose issues during development and in production.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant