This is an automated email from the ASF dual-hosted git repository. kentontaylor pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/allura.git
commit 76104cbd79742abd46b48f2a9cd6a75ed2e3253f Author: Dave Brondsema <[email protected]> AuthorDate: Wed Sep 29 10:00:38 2021 -0400 Special property hinting --- Allura/allura/model/auth.py | 7 ++++--- Allura/allura/model/discuss.py | 3 ++- Allura/allura/model/notification.py | 4 ++-- Allura/allura/model/oauth.py | 7 ++++--- Allura/allura/model/project.py | 2 +- ForgeFeedback/forgefeedback/model/feedback.py | 2 +- ForgeFiles/forgefiles/model/files.py | 3 ++- ForgeTracker/forgetracker/model/ticket.py | 4 ++-- 8 files changed, 18 insertions(+), 14 deletions(-) diff --git a/Allura/allura/model/auth.py b/Allura/allura/model/auth.py index f33bb38..add60ac 100644 --- a/Allura/allura/model/auth.py +++ b/Allura/allura/model/auth.py @@ -33,6 +33,7 @@ import re from pytz import timezone import pymongo from pymongo.errors import DuplicateKeyError +from bson import ObjectId from tg import config from tg import tmpl_context as c, app_globals as g from tg import request @@ -277,7 +278,7 @@ class User(MappedClass, ActivityNode, ActivityObject, SearchIndexable): )) # Additional top-level fields can/should be accessed with get/set_pref also # Not sure why we didn't put them within the 'preferences' dictionary :( - display_name = FieldPropertyDisplayName(str) + display_name: str = FieldPropertyDisplayName(str) # Personal data sex = FieldProperty( S.OneOf('Male', 'Female', 'Other', 'Unknown', @@ -861,7 +862,7 @@ class ProjectRole(MappedClass): query: 'Query[ProjectRole]' _id = FieldProperty(S.ObjectId) - user_id = AlluraUserProperty(if_missing=None) + user_id: ObjectId = AlluraUserProperty(if_missing=None) project_id = ForeignIdProperty('Project', if_missing=None) name = FieldProperty(str) roles = FieldProperty([S.ObjectId]) @@ -1079,7 +1080,7 @@ class UserLoginDetails(MappedClass): query: 'Query[UserLoginDetails]' _id = FieldProperty(S.ObjectId) - user_id = AlluraUserProperty(required=True) + user_id: ObjectId = AlluraUserProperty(required=True) ip = FieldProperty(str) ua = FieldProperty(str) extra = FieldProperty({ diff --git a/Allura/allura/model/discuss.py b/Allura/allura/model/discuss.py index f0b4bc1..cfcc1e1 100644 --- a/Allura/allura/model/discuss.py +++ b/Allura/allura/model/discuss.py @@ -33,6 +33,7 @@ from ming.orm.base import session from ming.orm.property import (FieldProperty, RelationProperty, ForeignIdProperty) from ming.utils import LazyProperty +from bson import ObjectId from allura.lib import helpers as h from allura.lib import security @@ -529,7 +530,7 @@ class Post(Message, VersionedArtifact, ActivityObject, ReactableArtifact): status = FieldProperty(schema.OneOf('ok', 'pending', 'spam', if_missing='pending')) last_edit_date = FieldProperty(datetime, if_missing=None) - last_edit_by_id = AlluraUserProperty() + last_edit_by_id: ObjectId = AlluraUserProperty() edit_count = FieldProperty(int, if_missing=0) spam_check_id = FieldProperty(str, if_missing='') text_cache = FieldProperty(MarkdownCache) diff --git a/Allura/allura/model/notification.py b/Allura/allura/model/notification.py index 558f426..97314d4 100644 --- a/Allura/allura/model/notification.py +++ b/Allura/allura/model/notification.py @@ -104,7 +104,7 @@ class Notification(MappedClass): subject = FieldProperty(str) text = FieldProperty(str) link = FieldProperty(str) - author_id = AlluraUserProperty() + author_id: ObjectId = AlluraUserProperty() feed_meta = FieldProperty(S.Deprecated) artifact_reference = FieldProperty(S.Deprecated) pubdate = FieldProperty(datetime, if_missing=datetime.utcnow) @@ -412,7 +412,7 @@ class Mailbox(MappedClass): query: 'Query[Mailbox]' _id = FieldProperty(S.ObjectId) - user_id = AlluraUserProperty(if_missing=lambda: c.user._id) + user_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) project_id = ForeignIdProperty('Project', if_missing=lambda: c.project._id) app_config_id = ForeignIdProperty( 'AppConfig', if_missing=lambda: c.app.config._id) diff --git a/Allura/allura/model/oauth.py b/Allura/allura/model/oauth.py index c661bb0..cd585c5 100644 --- a/Allura/allura/model/oauth.py +++ b/Allura/allura/model/oauth.py @@ -29,6 +29,7 @@ import pymongo from ming import schema as S from ming.orm import FieldProperty, RelationProperty, ForeignIdProperty, session from ming.orm.declarative import MappedClass +from bson import ObjectId from allura.lib import helpers as h from .session import main_orm_session @@ -75,7 +76,7 @@ class OAuthConsumerToken(OAuthToken): query: 'Query[OAuthConsumerToken]' type = FieldProperty(str, if_missing='consumer') - user_id = AlluraUserProperty(if_missing=lambda: c.user._id) + user_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) name = FieldProperty(str) description = FieldProperty(str, if_missing='') description_cache = FieldProperty(MarkdownCache) @@ -121,7 +122,7 @@ class OAuthRequestToken(OAuthToken): type = FieldProperty(str, if_missing='request') consumer_token_id = ForeignIdProperty('OAuthConsumerToken') - user_id = AlluraUserProperty(if_missing=lambda: c.user._id) + user_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) callback = FieldProperty(str) validation_pin = FieldProperty(str) @@ -138,7 +139,7 @@ class OAuthAccessToken(OAuthToken): type = FieldProperty(str, if_missing='access') consumer_token_id = ForeignIdProperty('OAuthConsumerToken') request_token_id = ForeignIdProperty('OAuthToken') - user_id = AlluraUserProperty(if_missing=lambda: c.user._id) + user_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) is_bearer = FieldProperty(bool, if_missing=False) user = RelationProperty('User') diff --git a/Allura/allura/model/project.py b/Allura/allura/model/project.py index de1ff2f..694e0eb 100644 --- a/Allura/allura/model/project.py +++ b/Allura/allura/model/project.py @@ -229,7 +229,7 @@ class Project(SearchIndexable, MappedClass, ActivityNode, ActivityObject): parent_id = FieldProperty(S.ObjectId, if_missing=None) neighborhood_id = ForeignIdProperty(Neighborhood) shortname = FieldProperty(str) - name = ProjectNameFieldProperty(str) + name: str = ProjectNameFieldProperty(str) show_download_button = FieldProperty(S.Deprecated) short_description = FieldProperty(str, if_missing='') summary = FieldProperty(str, if_missing='') diff --git a/ForgeFeedback/forgefeedback/model/feedback.py b/ForgeFeedback/forgefeedback/model/feedback.py index 2e30ca8..5d12523 100644 --- a/ForgeFeedback/forgefeedback/model/feedback.py +++ b/ForgeFeedback/forgefeedback/model/feedback.py @@ -60,7 +60,7 @@ class Feedback(VersionedArtifact, ActivityObject): created_date = FieldProperty(datetime, if_missing=datetime.utcnow) rating = FieldProperty(str, if_missing='') description = FieldProperty(str, if_missing='') - reported_by_id = AlluraUserProperty(if_missing=lambda: c.user._id) + reported_by_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) project_id = ForeignIdProperty('Project', if_missing=lambda: c.project._id) reported_by = RelationProperty(User, via='reported_by_id') diff --git a/ForgeFiles/forgefiles/model/files.py b/ForgeFiles/forgefiles/model/files.py index c5af9de..e5090e5 100755 --- a/ForgeFiles/forgefiles/model/files.py +++ b/ForgeFiles/forgefiles/model/files.py @@ -29,6 +29,7 @@ import typing from ming import schema as S from ming.orm import Mapper from ming.orm import FieldProperty, ForeignIdProperty, RelationProperty +from bson import ObjectId from tg import tmpl_context as c @@ -173,7 +174,7 @@ class UploadFiles(File): parent_folder_id = ForeignIdProperty('UploadFolder') created_date = FieldProperty(datetime, if_missing=datetime.utcnow) mod_date = FieldProperty(datetime, if_missing=datetime.utcnow) - author_id = AlluraUserProperty(if_missing=lambda: c.user._id) + author_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) parent_folder = RelationProperty('UploadFolder', via='parent_folder_id') linked_to_download = FieldProperty(bool, if_missing=False) path = FieldProperty(str) diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py index 404223f..7033407 100644 --- a/ForgeTracker/forgetracker/model/ticket.py +++ b/ForgeTracker/forgetracker/model/ticket.py @@ -669,8 +669,8 @@ class Ticket(VersionedArtifact, ActivityObject, VotableArtifact): summary = FieldProperty(str) description = FieldProperty(str, if_missing='') description_cache = FieldProperty(MarkdownCache) - reported_by_id = AlluraUserProperty(if_missing=lambda: c.user._id) - assigned_to_id = AlluraUserProperty(if_missing=None) + reported_by_id: ObjectId = AlluraUserProperty(if_missing=lambda: c.user._id) + assigned_to_id: ObjectId = AlluraUserProperty(if_missing=None) milestone = FieldProperty(str, if_missing='') status = FieldProperty(str, if_missing='') custom_fields = FieldProperty({str: None})
