← Back to team overview

launchpad-dev team mailing list archive

obsolete feature flags

 

I tried to get an overview of our current usage of feature flags: Which
flags appear in https://launchpad.net/+feature-rules, which flags are
documented in lp.services.features.flags.flag_info, which flags appear
somewhere in the code base without appearing in flag_info. This is what
I found:

flag                                            doc     used in
                                                        production?
--------------------------------------------------------------------
bugs.autoconfirm.enabled_distribution_names	yes     distro: ubuntu
bugs.autoconfirm.enabled_product_names	        yes     product:
                                                        launchpad
bugs.batched_comment_loading.enabled	        no      for testing
bugs.private_notification.enabled	        no      on by default
                                                        and for testing
code.ajax_revision_diffs.enabled	        yes     for testing
disclosure.person_affiliation_rank.enabled	yes     default: off
disclosure.personpicker_affiliation.enabled	yes     default: on
disclosure.picker_enhancements.enabled	        yes     default: on
disclosure.picker_expander.enabled              yes     default: on
disclosure.private_bug_visibility_rules.enabled	yes     for
                                                        team:launchpad
disclosure.target_picker_enhancements.enabled	yes     default: on
hard_timeout	                                yes     default value
                                                        and tweaks for
                                                        certain pages
malone.disable_targetnamesearch	                yes     default: on
memcache                                        yes     tweaks for
                                                        certain pages
soyuz.copypackage.enabled                       no      default: on
soyuz.derived_series.max_synchronous_syncs      yes     default: 1000000
soyuz.derived_series_jobs.enabled               yes     default: on
soyuz.derived_series_sync.enabled               yes     default: on
soyuz.derived_series_ui.enabled                 yes     default: on
translations.sharing_information.enabled        yes     default: on
visible_render_time                             yes     for
                                                        team:launchpad
bugs.bugtracker_components.enabled              yes     no
bugs.dynamic_bug_listings.enabled               yes     no
code.branchmergequeue                           yes     no
code.incremental_diffs.enabled                  yes     no
mail.dkim_authentication.disabled               yes     no
soyuz.derived_series_upgrade.enabled            yes     no
disclosure.dsp_picker.enabled                   yes     no
disclosure.private_bug_visibility_rules.enabled yes     no
disclosure.enhanced_private_bug_subscriptions.enabled
                                                yes     no
longpoll.merge_proposals.enabled                yes     no
soyuz.derived_series_upgrade.enabled            no      no
soyuz.copypackageppa.enabled                    no      no
mail.dkim_authentication.disabled               no      no
profiling.enabled                               no      no

I suspect that we could do some cleanup, at least get rid of the flags
that are enabled by default (assuming that they are enabled since more
than, let's say, two months or so):

disclosure.personpicker_affiliation.enable,
disclosure.picker_enhancements.enabled,
disclosure.picker_expander.enabled,
disclosure.target_picker_enhancements.enabled,
malone.disable_targetnamesearch,
soyuz.derived_series_jobs.enabled,
soyuz.derived_series_sync.enabled,
soyuz.derived_series_ui.enabled,
translations.sharing_information.enabled,

And the undocumented flags would IMHO deserve an entry in flag_info.


Follow ups