We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Prior to 1.19.0, this configuration worked to prevent LongParameterList warnings on constructors with a few "known" injection annotations from dagger.
LongParameterList
LongParameterList: active: true functionThreshold: 7 constructorThreshold: 7 ignoreDefaultParameters: false ignoreDataClasses: true ignoreAnnotated: ['javax.inject.Inject', 'dagger.Provides', 'dagger.assisted.AssistedInject']
In 1.19.0, these seem to be ignored now
Here are some snippets that repro for us
class ActivityFeedPresenter @Inject constructor( private val activityApi: ActivityApi, private val userRepository: UserRepository, private val botsDataProvider: BotsDataProvider, private val mpdmDisplayNameHelper: MpdmDisplayNameHelper, private val prefsManager: PrefsManager, private val conversationRepo: ConversationRepository, private val lockedThreadTransformer: ActivityFeedLockedThreadTransformer, private val mentionItemFactoryLazy: Lazy<MentionItemFactory>, ) : ActivityFeedContract.Presenter, LoadingStateProvider { class AppDialogFragment @AssistedInject constructor( private val appDialogsRepository: AppDialogsRepository, private val presenter: AppDialogPresenter?, private val keyboardHelper: KeyboardHelper, private val snackbarHelper: SnackbarHelper, private val appBuildConfig: AppBuildConfig, private val appDialogMenuBinder: AppDialogMenuBinder, private val appDialogMenuViewFactory: AppDialogMenuView.Factory, private val appDialogSelectViewFactory: AppDialogSelectView.Factory, private val appDialogTextViewFactory: AppDialogTextView.Factory, private val platformLogger: PlatformLogger, @ForScope(UserScope::class) private val fragmentNavRegistrar: FragmentNavRegistrar ) : ViewBindingFragment(), AppDialogContract.View, MenuSelectionListener, BackPressedListener { class AppActionDelegateImpl @Inject constructor( private val appActionsRepository: Lazy<AppActionsRepository>, private val attachmentActionHelperLazy: Lazy<AttachmentActionHelper>, private val attachmentRepositoryLazy: Lazy<AttachmentRepository>, private val blockKitActionDelegateLazy: Lazy<BlockKitActionDelegate>, private val blockKitDialogHelperLazy: Lazy<BlockKitDialogHelper>, private val customTabHelperLazy: Lazy<CustomTabHelper>, private val formattedTextBinderLazy: Lazy<FormattedTextBinder>, private val messageActionsHelperLazy: Lazy<MessageActionsHelper>, private val commandRepository: Lazy<CommandRepository>, private val platformEventHandler: Lazy<PlatformEventHandler>, private val toasterLazy: Lazy<Toaster>, private val typefaceSubstitutionHelperLazy: Lazy<TypefaceSubstitutionHelper>, private val networkInfoManagerLazy: Lazy<NetworkInfoManager>, private val platformAppsManagerLazy: Lazy<PlatformAppsManager>, private val messageDaoLazy: Lazy<MessageDao>, private val messageEventBroadcasterLazy: Lazy<MessageEventBroadcaster>, private val slackActionDelegateLazy: Lazy<SlackActionDelegate>, private val snackbarDelegate: SnackbarDelegate, private val blockKitStateProvider: BlockKitStateProvider, private val triggerResolver: TriggerResolver, @ForLegacyFeature(MOBILE_INPUT_BLOCKS_IN_MESSAGES) private val isMobileInputBlocksInMessagesEnabled: Boolean ) : AppActionDelegate, SnackbarDelegate by snackbarDelegate {
It is a regression
--scan
The text was updated successfully, but these errors were encountered:
I assume that you are not using type solving. I need to check how the old implementation was getting the full qualified names...
As a "workaround" you can use the name of the annotation instead of the full qualified name. Or enable type solving.
Sorry, something went wrong.
Yeah type solving is a nonstarter for us as we run this via CLI in a commit hook
AnnotationExcluder
Successfully merging a pull request may close this issue.
Expected Behavior
Prior to 1.19.0, this configuration worked to prevent
LongParameterList
warnings on constructors with a few "known" injection annotations from dagger.Observed Behavior
In 1.19.0, these seem to be ignored now
Steps to Reproduce
Here are some snippets that repro for us
Context
It is a regression
Your Environment
--scan
option when running the gradle task): private repoThe text was updated successfully, but these errors were encountered: