Skip to content

App Modules - Consolidate User resources #73856

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

Closed
markstory opened this issue Jul 4, 2024 · 1 comment
Closed

App Modules - Consolidate User resources #73856

markstory opened this issue Jul 4, 2024 · 1 comment

Comments

@markstory
Copy link
Member

markstory commented Jul 4, 2024

User and its direct relations are control_silo scoped resources. Currently the components that comprise the control silo aspects of users are spread throughout the repository. Consolidating those classes and functions into sentry.users will help clarify the application's design and make running subsets of tests easier and faster.

  • Communicate these changes with the broader ecosystem team
  • Move endpoints, serializers, models, and tasks to be co-located.

We'll need to provide import shims for any symbols used in getsentry until those imports can be updated separately. Furthremore, within django shell we should preserve sentry.models.User as an import.

cc @Christinarlong

Christinarlong added a commit that referenced this issue Jul 12, 2024
Moves all User and authenticator specific models and tests to their own directories.

ref(#73856)
Christinarlong added a commit that referenced this issue Aug 9, 2024
Move email model to the users module and leave shim for getsentry.

ref(#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Christinarlong added a commit that referenced this issue Aug 12, 2024
)

Part of moving control silo user related resources into the users module. Includes adding of types for the user model functions.

Apart of (#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Co-authored-by: getsantry[bot] <66042841+getsantry[bot]@users.noreply.github.com>
Christinarlong added a commit that referenced this issue Aug 13, 2024
Part of moving control silo user related resources into the users module. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 13, 2024
…5597)

Part of consolidating (user) control silo resources to be located with other user related models. Leaves behind a shim for any getsentry references. Also includes a fix for backfill_outboxes to ensure batch.count doesn't become negative which caused tests in test_backfill_outboxes to fail.

Ref(#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Christinarlong added a commit that referenced this issue Aug 13, 2024
Part of moving control silo user related resources into the users module, this PR does not include an old UserRole import shim as it's not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
ameliahsu pushed a commit that referenced this issue Aug 13, 2024
…5597)

Part of consolidating (user) control silo resources to be located with other user related models. Leaves behind a shim for any getsentry references. Also includes a fix for backfill_outboxes to ensure batch.count doesn't become negative which caused tests in test_backfill_outboxes to fail.

Ref(#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Christinarlong added a commit that referenced this issue Aug 13, 2024
Part of moving control silo user related resources into the users module. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 13, 2024
Part of moving control silo user related resources into the users module. Includes adding import shim for any getsentry refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the usersmodule, this PR does not include an old UserRole import shim as it's not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module, this PR does not include an old UserRole import shim as it's not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module. Includes adding of types for functions and an import shim for any getsentry refs.

Apart of (#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module, this PR does not include an old UserIp import shim as it's not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module. Includes adding any missing types for the model.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module. Includes adding import shim for any getsentry refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 14, 2024
Part of moving control silo user related resources into the users module. Includes adding import shim for any getsentry refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 15, 2024
Part of moving control silo user related resources into the usersmodule. Includes adding import shim for any getsentry refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 15, 2024
Part of moving control silo user related resources into the users module, this PR does not include an old UserIP import shim as the UserIP model is not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 15, 2024
Part of moving control silo user related resources into the users module. Includes adding import shim for any getsentry refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 15, 2024
Part of moving control silo user related resources into the users module, this PR does not include an old UserRole import shim as it's not used in getsentry. Includes adding of types for functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 16, 2024
Part of moving control silo user related resources into the usersmodule. Includes adding import shim for any getsentry refs. Also addsminor typing to some identity functions.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 16, 2024
Part of moving control silo user related resources into the users module. Moves endpoints & tests and updates and refs.

Apart of (#73856)
Christinarlong added a commit that referenced this issue Aug 29, 2024
Part of moving control silo user related resources into the users module. Moves endpoints & tests and updates and refs.

Apart of (#73856)

---------

Co-authored-by: Mark Story <[email protected]>
Co-authored-by: getsantry[bot] <66042841+getsantry[bot]@users.noreply.github.com>
Christinarlong added a commit that referenced this issue Sep 6, 2024
Moves rest of user's serializers to the user's directory 
- UserIP
- UserRole
- Identity
- IdentitiyProvider
- UserEmail
Adds typing - mainly serializer response dicts to the serializers

split of (#76822)
ref(#73856 )
Christinarlong added a commit that referenced this issue Sep 9, 2024
Update the CODEOWNERS, mainly update moved filepaths
Issue ref (#73856)
---------

Co-authored-by: Mark Story <[email protected]>
c298lee pushed a commit that referenced this issue Sep 10, 2024
Moves rest of user's serializers to the user's directory 
- UserIP
- UserRole
- Identity
- IdentitiyProvider
- UserEmail
Adds typing - mainly serializer response dicts to the serializers

split of (#76822)
ref(#73856 )
c298lee pushed a commit that referenced this issue Sep 10, 2024
Update the CODEOWNERS, mainly update moved filepaths
Issue ref (#73856)
---------

Co-authored-by: Mark Story <[email protected]>
Christinarlong added a commit that referenced this issue Sep 10, 2024
Christinarlong added a commit that referenced this issue Sep 11, 2024
what if we deleted the user shims since getsentry refs are updated and updated any missed import paths

ref(#73856)
mifu67 pushed a commit that referenced this issue Sep 12, 2024
what if we deleted the user shims since getsentry refs are updated and updated any missed import paths

ref(#73856)
Christinarlong added a commit that referenced this issue Sep 17, 2024
Remove bases shim & add barrel file for users models. Looks like if you use a ForeignKeyRef in a model, django stubs won't be able to recognize it unless there exists a barrel file.

issue ref(#73856)

---------

Co-authored-by: Mark Story <[email protected]>
@markstory
Copy link
Member Author

Closing as we've finished users off.

@github-actions github-actions bot locked and limited conversation to collaborators Nov 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant