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

[FEATURE] Domain model and repository for subscribers #223

Merged
merged 1 commit into from
Nov 30, 2017

Conversation

oliverklee
Copy link
Contributor

No description provided.

@oliverklee oliverklee added this to the 4.0.0 ("phase 2") milestone Nov 30, 2017
@oliverklee oliverklee self-assigned this Nov 30, 2017
@oliverklee oliverklee requested a review from samtuke November 30, 2017 18:39
@oliverklee oliverklee mentioned this pull request Nov 30, 2017
39 tasks
private $bounceCount = 0;

/**
* Note: The uniqueness of this column will not be enforced as long as we use the old DB schema,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will not be enforced by the database engine, or will not be enforced at all (is there not application-level verification)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It currently will not be enforced at all (as this only influences that generated DB schema).

When we let Doctrine generate the DB schema for us, then this will be enforced (at the DB level).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAIK, Doctrine only enforces this at the DB level, not at application level.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(I havent't checked whether there are any additional checks in phpList 3 for this, though.)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generating duplicate IDs should be impossible using the HMAC system implemented, as I understand it. I think it's enough to rely on phpList3 to validate during generation and DB schema to enforce later when doctrine is used to generate it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it's not impossible, just very unlikely that two autogenerated UUID are the same (both in phpList 3 and 4). phpList 3 also does not check for duplicate UUIDs when generating them - it just hopes for the best (fingers crossed).

And it's not HMAC - just a bunch of random bytes.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(At least in the UUID-generating piece of code which I found. Maybe there are more than one.)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it's not impossible, just very unlikely that two autogenerated UUID are the same (both in phpList 3 and 4). phpList 3 also does not check for duplicate UUIDs when generating them - it just hopes for the best (fingers crossed).

And it's not HMAC - just a bunch of random bytes.

@michield Please can you clarify the following: does phpList 3 rely on database-level enforcement of UUID uniqueness at the time that the UUIDs are generated?

@samtuke samtuke merged commit 9769a47 into master Nov 30, 2017
@samtuke samtuke deleted the feature/subscriber branch November 30, 2017 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants