cubicweb #2920251 drop pre-3.9 compat [validation pending]

Replace Interface with adapter:

  • appobject: using __implements__/interfaces are deprecated in favor of adapters
  • vreg.register_if_interface_found: use .register instead
  • predicate implements, interfaces in implements selector are deprecated in favor of adapters / adaptable selector
  • predicate, score:_interface is dropped
  • WorkflowableMixIn, use adapter instead of direct access method,
  • INotifiableAdapter, use adapter instead of direct access method,
  • IDownloadable, use adapter instead of direct access method,
  • ITree, use adapter instead of direct access method,
  • IFeed, use adapter instead of direct access method,
  • IPrevNext, use adapter instead of direct access method,
  • IEditControl, use adapter instead of direct access method,
  • ICalendarable, use adapter instead of direct access method,
  • breadcrumbs() method is deprecated, define a custom IBreadCrumbsAdapter instead
  • parent() method is deprecated, define a custom IBreadCrumbsAdapter/ITreeAdapter for %s instead
  • TreeMixIn is deprecated, use ITreeAdapter instead
  • IEmailable is deprecated,use IEmailable instead
  • TreePathMixIn is deprecated override TreePathView instead
  • ProgressMixIn is deprecated IProgressAdapter instead

Hook renames

  • PropagateSubjectRelationHook has been renamed to PropagateRelationHook
  • PropagateSubjectRelationAddHook has been renamed to PropagateRelationAddHook
  • PropagateSubjectRelationDelHook has been renamed to PropagateRelationDelHook
  • schemaserial: multiple special case about migration to 3.9 (not to be dropped yet)

Client side Renames

  • WebRequest.build_ajax_replace_url use ajax_replace_url() instead, naming rql and vid arguments
  • WebRequest.external_resource use req.uiprops[rid]
  • dropping data/external_resources is deprecated, use an uiprops.py file
  • config.has_resource, use _cw.uiprops.get(rid)
  • web form, vocabulary value should be an unicode string
  • read access to form.action is deprecated, use form.form_action()
  • primary view, _render_attribute prototype has changed and renamed to render_attribute, please update
  • CSVView.call should give a 'subvid' argument instead of 'vid'
  • SecondaryView is deprecated, use one of onel ine/incontext/outofcontext
  • AutoClickAndEditFormView, specifying rvid/default_value on select is deprecated reledit_ctrl rtag to control this
  • AutoClickAndEditFormView, should_edit_attributes is deprecated, use _should_edit_attribute instead
  • AutoClickAndEditFormView, should_edit_relations is deprecated, use _should_edit_relation instead

Entity

  • clear_all_caches → cw_clear_all_caches
  • get_value → cw_attr_value
  • delete → cw_delete
  • attr_metadata → cw_attr_metadata
  • has_perm → cw_attr_metadata
  • set_related_cache → cw_set_relation_cache
  • clear_related_cache → cw_clear_relation_cache
  • related_rql → cw_related_rql
prioritynormal
typeenhancement
done in3.18.0
load0.000
load left0.000
closed by<not specified>