Phabricator Link
|
Wiki Link
|
Status
|
Priority
|
Author
|
Assignee
|
Projects
|
Subtasks
|
Parent Tasks
|
T110620
|
T110620: Make User::newFromId(0) not return current user's IP
|
open
|
Medium (orange)
|
|
|
|
|
|
T195069
|
T195069: Factor PageStore and PageRecord out of WikiPage
|
open
|
Medium (orange)
|
|
|
|
|
|
T204792
|
T204792: [20h] Why is the url key undefined in language objects for categories?
|
open
|
Medium (orange)
|
|
|
|
|
|
T208764
|
T208764: Remove cyclic dependency between Title and User classes
|
open
|
Medium (orange)
|
|
|
|
|
|
T208778
|
T208778: Make User::getPage and User::getTalkPage return a LinkTarget
|
open
|
Low (yellow)
|
|
|
|
|
|
T214319
|
T214319: In File and FileRepo, replace usage of Title with usage of LinkTarget and PageIdentity
|
open
|
Medium (orange)
|
|
|
|
|
|
T218395
|
T218395: Create RestrictionStore service
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T218674
|
T218674: User::getRights() applies session rights restrictions to non-session users
|
open
|
Medium (orange)
|
|
|
|
|
|
T222212
|
T222212: RevisionStore must not expose user IDs from a foreign wiki
|
resolved
|
High (red)
|
|
|
|
|
|
T222380
|
T222380: Decide how to represent the identity of users from another wiki.
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T231930
|
T231930: Introduce Authority objects to represent the user performing a given action
|
open
|
Medium (orange)
|
|
|
|
|
|
T232878
|
T232878: The "SecondaryDataUpdates" hook is listed in documentation as deprecated but doesn't emit deprecation warnings yet
|
resolved
|
Needs Triage (violet)
|
|
|
|
|
|
T233222
|
T233222: Factor rev_deleted logic out of the API modules
|
open
|
Medium (orange)
|
|
|
|
|
|
T234921
|
T234921: Factor group membership management out of User class
|
open
|
Medium (orange)
|
|
|
|
|
|
T236701
|
T236701: Consider enforcing read permissions at the storage layer
|
open
|
Medium (orange)
|
|
|
|
|
|
T239753
|
T239753: Figure out a way to inject/request a current user from REST API handlers
|
resolved
|
High (red)
|
|
|
|
|
|
T247143
|
T247143: Remove the Revision class [1.37]
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T249265
|
T249265: Getting Action name is too heavy on dependencies
|
open
|
Low (yellow)
|
|
|
|
|
|
T252934
|
T252934: Hard deprecate manually constructing MovePage objects
|
resolved
|
Needs Triage (violet)
|
|
|
|
|
|
T253432
|
T253432: Create a User factory
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T253834
|
T253834: Turn properties into protected Getters in LanguageConverter based hierarchy
|
resolved
|
High (red)
|
|
|
|
|
|
T254537
|
T254537: UserGroupManager/PermissionManager cyclic dependency
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T254838
|
T254838: Move User::changeableGroups and User::changeableByGroup to UserGroupManager
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T255309
|
T255309: Remove UserRightsProxy and replace it's usages with UserGroupManager
|
open
|
Needs Triage (violet)
|
|
|
|
|
|
T260933
|
T260933: Make UserIdentity objects aware of which wiki they belong to
|
open
|
High (red)
|
|
|
|
|
|
T261744
|
T261744: Introduce ThrottleStore
|
open
|
Medium (orange)
|
|
|
|
|
|
T261963
|
T261963: Spike to explore Authority concept, implementation, and migration
|
resolved
|
High (red)
|
|
|
|
|
|
T262296
|
T262296: Authority [high effort]
|
open
|
High (red)
|
|
|
|
|
|
T263207
|
T263207: The `UserrightsPage` class is not safe to extend
|
open
|
Medium (orange)
|
|
|
|
|
|
T264058
|
T264058: OAuth extension REST tests must not instantiate a Router
|
resolved
|
High (red)
|
|
|
|
|
|
T265775
|
T265775: Retire TitleExists hook
|
open
|
Medium (orange)
|
|
|
|
|
|
T265944
|
T265944: Make class WatchAction a real action class and move helper function to own service
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T267013
|
T267013: How to replace deprecated User::getTokenFromOption for the watchlisttoken?
|
open
|
Needs Triage (violet)
|
|
|
|
|
|
T269234
|
T269234: Eliminate the split between canonical and non-canonical ParserOptions
|
resolved
|
Needs Triage (violet)
|
|
|
|
|
|
T271081
|
T271081: Flaky tests ParserOutputAccessTest::testOldRevisionCacheSplit and ::testOldRevisionUseCached
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T271300
|
T271300: Stop using the global service locator in RevisionRecord::userCanBitfield
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T271458
|
T271458: RevisionRecord should use Authority for permission checks
|
resolved
|
High (red)
|
|
|
|
|
|
T271459
|
T271459: User should implement Authority
|
resolved
|
High (red)
|
|
|
|
|
|
T271460
|
T271460: Authority should be available via IContextSource
|
resolved
|
High (red)
|
|
|
|
|
|
T271462
|
T271462: Experiment with converting action API modules to Authority
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T271463
|
T271463: Refactor PermissionManager into Authority [hard]
|
open
|
Medium (orange)
|
|
|
|
|
|
T271464
|
T271464: Change the mechanism used to establish which permissions are exempt from user block
|
open
|
Low (yellow)
|
|
|
|
|
|
T271465
|
T271465: Use Authority in EditPage
|
duplicate
|
Needs Triage (violet)
|
|
|
|
|
|
T271466
|
T271466: Authority and JSON serialization
|
open
|
Low (yellow)
|
|
|
|
|
|
T271494
|
T271494: Expose information about user blocks via Authority and PermissionStatus
|
resolved
|
High (red)
|
|
|
|
|
|
T271504
|
T271504: PermissionsError should be instantiatable with PermissionStatus returned by Authority
|
resolved
|
High (red)
|
|
|
|
|
|
T271593
|
T271593: Replace specific PermissionManager calls with GroupPermissionsLookup calls in all deployed extensions
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T271596
|
T271596: Migrate relevant User method usages to GroupPermissionsLookup and hard-deprecate User methods.
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T271741
|
T271741: Decouple BlockErrorFormatter from Message and Language
|
open
|
Low (yellow)
|
|
|
|
|
|
T271837
|
T271837: Convert PreferencesFactory to Authority [hard]
|
open
|
Medium (orange)
|
|
|
|
|
|
T271854
|
T271854: Convert Action API tests in core to use authority directly
|
open
|
Low (yellow)
|
|
|
|
|
|
T271972
|
T271972: Create new parameter type for groups
|
open
|
Low (yellow)
|
|
|
|
|
|
T271975
|
T271975: Convert EditPage to Authority
|
open
|
Low (yellow)
|
|
|
|
|
|
T271977
|
T271977: Convert EditConstraint system to use Authority
|
resolved
|
Low (yellow)
|
|
|
|
|
|
T272036
|
T272036: StatusValue should support MessageValue
|
open
|
Low (yellow)
|
|
|
|
|
|
T272039
|
T272039: Convert BlockPermissionChecker and BlockPermissionCheckerFactory to use Authority
|
resolved
|
Low (yellow)
|
|
|
|
|
|
T272079
|
T272079: PermissionManager:: 'edit' right check should also check for 'create' if the page does not exist
|
resolved
|
Low (yellow)
|
|
|
|
|
|
T272081
|
T272081: Introduce StatusValue::ignore method
|
open
|
Low (yellow)
|
|
|
|
|
|
T272100
|
T272100: Status/StatusValue errors/warnings should be unique
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272101
|
T272101: Introduce compatibility methods to PermissionStatus
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272420
|
T272420: Define equality for PageIdentity and LinkTarget
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272421
|
T272421: Make WikiPage a PageRecord
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272422
|
T272422: Introduce PageRecord and ExistingPageRecord interfaces
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272424
|
T272424: Make WikiPage a ProperPageIdentity
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272485
|
T272485: Make RevisionRecord::getId() take a wiki ID
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272518
|
T272518: Watch for extensions broken by WikiPage now deprecating construction on bad titles
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272519
|
T272519: Implement private wiki read permission in a way that works with Authority
|
open
|
High (red)
|
|
|
|
|
|
T272557
|
T272557: Convert blocks to PageIdentity
|
open
|
High (red)
|
|
|
|
|
|
T272560
|
T272560: Hard deprecate RevisionStore::newMutableRevisionFromArray
|
resolved
|
High (red)
|
|
|
|
|
|
T272658
|
T272658: Figure out how to deprecate TitleExists hook
|
duplicate
|
Medium (orange)
|
|
|
|
|
|
T272669
|
T272669: Redesign RevisionStoreCacheRecord with actor migration in mind
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272689
|
T272689: Investigate design of UserStore or UserAccountStore
|
open
|
Low (yellow)
|
|
|
|
|
|
T272691
|
T272691: Extract UserAccount from User
|
open
|
Low (yellow)
|
|
|
|
|
|
T272886
|
T272886: Start conversion of RevisionStore public interface to PageIdentity
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T272901
|
T272901: Standardize RevisionRecord/Store use of wikiID vs dbDomain
|
resolved
|
High (red)
|
|
|
|
|
|
T273007
|
T273007: CacheTime.php Undefined index Version
|
resolved
|
Unbreak Now! (pink)
|
|
|
|
|
|
T273101
|
T273101: Accessing WikiPage that cannot exist as a page: w:Help:Books/Book creator text. [Called from WikiPage::exists]
|
resolved
|
Unbreak Now! (pink)
|
|
|
|
|
|
T273284
|
T273284: Make RevisionRecord::getPageId() take a wiki ID
|
open
|
High (red)
|
|
|
|
|
|
T273285
|
T273285: Add type hints for return types to methods on UserIdentity
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T273287
|
T273287: UserIdentityValue should require a Wiki ID to be passed to the constructor.
|
open
|
Medium (orange)
|
|
|
|
|
|
T273288
|
T273288: Create an ActorLookup service
|
resolved
|
High (red)
|
|
|
|
|
|
T273290
|
T273290: Make RevisionStore use ActorLookup instead of User
|
resolved
|
High (red)
|
|
|
|
|
|
T273296
|
T273296: Some administrators can no longer add/remove users from the autochecked/editor user groups
|
resolved
|
High (red)
|
|
|
|
|
|
T273317
|
T273317: some users with access are unable to configure pending changes
|
resolved
|
High (red)
|
|
|
|
|
|
T273510
|
T273510: Convert AuthManager to Authority
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T273511
|
T273511: Convert CentralAuthUtilityService to Authority instead of PermissionManager
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T273540
|
T273540: Explore what changes would be needed to re-use MW core's new JsonUnserializable and JsonCodec interfaces
|
open
|
Needs Triage (violet)
|
|
|
|
|
|
T273576
|
T273576: Hard-deprecate IDatabase parameter for UserIdentity:getActorId()
|
resolved
|
High (red)
|
|
|
|
|
|
T273667
|
T273667: Survey extensions for cross-wiki RevisionStore usage
|
open
|
High (red)
|
|
|
|
|
|
T273788
|
T273788: ApiQueryUserInfo needs to use UserEditTracker
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T273932
|
T273932: Obscure phan taint-check failures for ActorStore patches
|
resolved
|
Needs Triage (violet)
|
|
|
|
|
|
T273933
|
T273933: Standadize user name normalization in MW
|
open
|
Medium (orange)
|
|
|
|
|
|
T273934
|
T273934: Support wgSharedTables setup in UserStore
|
open
|
Medium (orange)
|
|
|
|
|
|
T273935
|
T273935: Introduce UserIdentity::isExternal
|
open
|
Medium (orange)
|
|
|
|
|
|
T273948
|
T273948: Introduce WikiAwareEntityTrait
|
resolved
|
High (red)
|
|
|
|
|
|
T273972
|
T273972: Survey cross-wiki User object creation and replace with ActorStore
|
open
|
High (red)
|
|
|
|
|
|
T273974
|
T273974: Introduce caching into ActorStore
|
resolved
|
High (red)
|
|
|
|
|
|
T274067
|
T274067: RevisionStore::getKnownCurrentRevision should be able to work with non-local PageIdentityValue
|
resolved
|
Medium (orange)
|
|
|
|
|
|
T274148
|
T274148: Remove UserIdentity::getActorId method
|
duplicate
|
Needs Triage (violet)
|
|
|
|
|
|
T274151
|
T274151: Clean up Title deprecated methods
|
resolved
|
Medium (orange)
|
|
|
|
|
|