Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@salsabeeljamal
Copy link
Member

Pull Request Description

Changes Made

  • Feature addition
  • Bug fix
  • Performance improvement
  • Refactoring
  • Documentation update
  • Other (Version updates, configuration improvements)

Description

This pull request includes comprehensive updates to the Elixir/Erlang ecosystem and significant refactoring across various modules to improve code clarity, maintainability, and compatibility with newer versions.

Version Updates:

  • Updated Elixir to 1.18.4 and Erlang to 26.0.2 / 27.3.4 in:
    • .tool-versions
    • Dockerfile
    • Dockerfile.dev
    • elixir_buildpack.config
  • Updated OTP to 26.0.2 and Debian to bookworm-20250610 in Dockerfile
  • Updated dependencies in mix.exs and mix.lock:
    • bcrypt_elixir, bunt, castore, certifi, and others

Configuration Improvements:

  • Added :type to metadata in Logger config
  • Disabled deprecated builder warning in Tesla
  • Removed included_environments setting from Sentry production config
  • Moved self-hosted deployment config to runtime in Enterprise module

Code Refactoring:

  • Refactored billing.update_subscription_transaction/1 to accept map parameters
  • Improved generate_chart/1 and validate_custom_period_interval/1 in documents.ex
  • Enhanced form field deletion logic in WraftDoc.Forms
  • Renamed is_frame_file? to frame_file? for clarity
  • Refactored HTML tag handling and added rowspan support in Prosemirror → Markdown conversion
  • Updated Gettext usage in WraftDocWeb
  • Improved error handling in TemplateAssets and FallbackController
  • Modernized Phoenix HTML helper usage and cleaned up imports

Motivation and Context

The update ensures compatibility with recent Elixir and Erlang versions, improves code maintainability, and addresses configuration deprecations and cleanup.

How Has This Been Tested?

  • All affected modules were tested with existing unit and integration test suites.
  • Manual testing performed on major workflows such as document processing, billing updates, and deployment configuration behavior.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • My changes generate no new warnings.
  • I have checked my code and corrected any misspellings.

Additional Notes

These updates lay the groundwork for smoother future upgrades and enhance long-term maintainability across the codebase.

@salsabeeljamal salsabeeljamal requested a review from Faheemvc June 12, 2025 09:19
…factor code

- Updated Erlang to 27.0.1 and Elixir to 1.18.4 in .tool-versions and elixir_buildpack.config.
- Refactored mix.exs to align with new Elixir version, updating dependencies and their versions.
- Adjusted configuration in config.exs to disable deprecated warnings for Tesla.
- Refactored Gettext usage in WraftDocWeb to use the new backend approach.
- Updated error handling in template_assets and other modules for better exception management.
- Refactored array field handling in admin to improve code clarity and functionality.
- Minor adjustments in HTML templates for better readability and maintainability.
- Enhanced logging configuration in config.exs by adding :type to metadata.
- Refactored update_subscription_transaction and generate_chart functions for better readability.
- Improved form field deletion logic by introducing helper functions in forms.ex.
- Simplified validation logic in forms.ex and documents.ex.
- Renamed methods in enterprise.ex for clarity regarding deployment checks.
- Updated file validation logic in file_helper.ex and file_validator.ex for better maintainability.
- Refactored markdown to Prosemirror conversion functions for improved clarity.
- Cleaned up unused code and improved formatting in various modules, including admin and controllers.
@salsabeeljamal salsabeeljamal merged commit 6cc19ca into main Jun 12, 2025
1 check passed
@salsabeeljamal salsabeeljamal deleted the elixir-upgrade branch June 12, 2025 14:33
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.

3 participants