Skip to content
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

Merge Upstream Changes #2

Merged
merged 137 commits into from
Nov 8, 2024
Merged

Conversation

slamanna212
Copy link
Owner

No description provided.

- Splits domain-related classes into individual files for better
modularity
- Improves maintainability and clarity of the domain logic
* Introduces API endpoints for getting and saving branding settings.
* Adds new route and view for managing domain branding settings.
* Enables users to configure logo, colors, description, font, and button style.
Changes the ID for the AuthView heading for improved accessibility.
Removes the redundant signup link from the form footer.
These adjustments streamline the UI and reduce unnecessary elements.
* Improves styling and design of account domain brand form
* Adds `DomainBrandView` component for a refined display setup
* Incorporates new navigation and loading animations
* Increases maximum logo file size limit to 10MB and adds support for
new
image formats (SVG, WEBP, BMP, TIFF).

* Refactors UI components for better user interactions, such as updating
UI
elements for logo upload and providing instant feedback.

* Simplifies methods for updating brand settings and improves API
interaction.
* Refines layout by centering and limiting form width for better user
focus and aesthetics.
* Updates visual style for inputs and labels,
including larger and brand-matched fonts.
* Modifies file upload
interface for clarity and user guidance.
* Improves form submission UX by adding a loading spinner and better
feedback messaging.
* Removes redundant DomainBrandView, integrating form directly into
AccountDomainBrand for simplicity and maintainability, eliminating
unnecessary complexity and code redundancy.
* Better visual consistency
* Improves accessibility with aria attributes and hidden labels
* Polishes button designs and introduces icon usage
* Introduces SecretPreview component to display branding information.
* Enhances user experience by showing live preview of brand settings.
* Form and preview are side by side.
* Reverts SPA 'not found' response code to 404 for correct status
* Adjusts 'error response' status from 401 to 400 for proper usage
* Introduces 'raise_not_found' helper to streamline exception handling.
* Introduces the GetImage class for retrieving and processing domain
images.
* Sanitizes input parameters to ensure filename and domain ID validity.
* Performs checks for domain existence and filename matching to prevent
errors.
* Decodes image data from Base64 format while calculating content
length.
* Introduces a new '/imagine' route for serving images.
* Implements logic for retrieving and processing image data.
* Implements setting of CSRF token in request headers for compatibility
with new (v2) endpoints.
* Maintains backward compatibility by retaining CSRF token in form data.
delano and others added 28 commits November 2, 2024 15:21
(Pre-review for CustomDomain)

Moves domain parsing and validation logic from create() to init() method for better
encapsulation and earlier validation

* Ensures domain parts are parsed and stored during object initialization
* Generates TXT validation records immediately upon object creation
* Fixes potential orphaned records by saving before adding to indices
* Updates tests to reflect new initialization flow
- Introduces structured domain verification states and validation checks
- Improves Redis transaction handling with proper error recovery
- Adds comprehensive TXT record validation for domain ownership
- Simplifies domain creation workflow with atomic operations
- Enhances error logging and user-facing error messages

The changes make domain verification more robust while
improving data consistency and error handling throughout
the custom domain lifecycle.
Introduces extensive test coverage for domain validation and
verification:
- Validates domain creation, uniqueness, and format constraints
- Tests TXT record generation and verification states
- Verifies customer domain associations and conflict handling
- Ensures proper handling of apex domains and subdomains
- Validates domain length and depth restrictions

Reorganizes test files by moving to models directory for better
structure
Improves custom domain state management with clearer verification states:
- Updates state machine to better reflect DNS resolution status
- Only displays verified and resolving domains in the UI
- Enhances error logging for domain verification failures

The verification states are now more accurately defined:
- unverified -> no verification attempted
- pending -> waiting for DNS resolution
- resolving -> DNS resolving but verification incomplete
- verified -> fully verified and ready for traffic
Prevents unnecessary TXT validation records from being created during
object
instantiation by moving the generation call to the actual verification
step.
This fixes potential issues with duplicate or unused validation records.
Enhances CLI functionality with new commands for customer and domain management:
- Adds customer listing with domain grouping and email verification checks
- Implements domain listing with grouping and display options
- Adds domain revalidation tool with batch processing and throttling
- Includes options for targeting specific customers or domains

Improves CLI usability with visual separation of output from banner

Signed-off-by: delano <[email protected]>
Modifies custom domain verification handling to log unverified domains instead of
skipping them, maintaining backward compatibility while increasing visibility
into verification issues.

* Temporary change to understand impact of stricter domain verification
  requirements on existing customers
* Adds logging to track affected domains and their verification status
Adds graceful handling when string custid is passed instead of Customer instance
- Logs friendly reminder to pass proper Customer instance
- Maintains backward compatibility by auto-loading Customer from id

This improves code robustness while encouraging better practice through
developer feedback
…ndex-db-index-is-out-of-range

Update Redis connection management and refine model database configurations
Removes unused entropy module and related code

Removes deprecated entropy generation functionality that was no longer
used for
digest generation. This cleanup eliminates unused code and simplifies
the
codebase by:
- Removing the entropy module and its associated test file
- Removing entropy-related attributes and calculations from colonel
logic
…opy-module-and-related-digest-generation-code

Remove deprecated Entropy module and related code
Converts Feedback from a module to a full Familia model class for better
integration:
- Moves configuration to Redis DB mapping in config
- Adds backwards compatibility for legacy DB IDs
- Improves documentation of Redis configuration options
- Maintains existing functionality while modernizing implementation

Part of Familia v1.0 upgrade initiative
…e-to-full-familia-v10-model

Upgrade Feedback module to full Familia model class
Refactors rate limiting to use instance methods instead of class
methods for better encapsulation and testability. Key improvements:

- Adds instance-level increment handling with proper error reporting
- Introduces attribute readers for better object introspection
- Expands test coverage with comprehensive integration scenarios
- Improves Redis key management and TTL handling

The changes make the rate limiting system more maintainable and easier
to debug
while maintaining backward compatibility.
- Adds comprehensive documentation for Redis-backed rate limiting implementation
- Improves time window management with proper rounding and isolation
- Adds methods to extract identifier and event from Redis keys
- Enhances test coverage for time window edge cases and multiple events
- Implements cleaner exception handling for exceeded limits

Part of the effort to modernize rate limiting implementation and improve code
maintainability.
Transitions RateLimit from Familia::String to Familia::Horreum for
improved functionality and maintainability. Key changes:

- Adds quantization feature for time-based rate limiting
- Implements proper field management and delegation
- Enhances Redis key structure with better organization
- Adds more robust existence checking and value handling
- Fixes expiration handling with proper TTL updates
Improve CustomDomain initialization, verification, and error handling
…amilia-v10-model-implementation

Upgrade RateLimit to Familia v1.0 Model Implementation
Bumps [sorbet](https://github.com/sorbet/sorbet) from 0.5.11608 to 0.5.11633.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11608 to 0.5.11633.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Enhance domain branding and UI/UX improvements
…-4415e84133

Bump rexml from 3.3.8 to 3.3.9 in the bundler group
…runtime-0.5.11633

Bump sorbet-runtime from 0.5.11608 to 0.5.11633
…0.5.11633

Bump sorbet from 0.5.11608 to 0.5.11633
Bumps [sorbet](https://github.com/sorbet/sorbet) from 0.5.11633 to 0.5.11641.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…0.5.11641

Bump sorbet from 0.5.11633 to 0.5.11641
…aywright/test-1.48.2

Bump @playwright/test from 1.47.2 to 1.48.2
@slamanna212 slamanna212 merged commit 3f79320 into slamanna212:develop Nov 8, 2024
6 checks passed
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.

2 participants