Follow-up of request #39713 Migrate javascript app into compat mode
The Baseline app is the last Vue 2 app in Tuleap. Even though it might be replaced by another feature in Tuleap, we choose to take the opportunity now to convert it to Vue 3, with the following decision drivers in mind:
- One app in Vue 2 still means we need to keep supporting Vue 2 overall
- eslint must still apply Vue 2 rules to it
- webpack must still have loaders for Vue 2
- jest must still be able to handle Vue 2
- gettext extraction must still be able to handle Vue 2
- we must keep alive our own libraries built for vue 2 :
@tuleap/vue-breadcrumb-privacy
, @tuleap/vue2-dompurify-html
, @tuleap/vue2-gettext-init
, @tuleap/vuex-store-wrapper-jest
, @tuleap/vue2-gettext-composition-helper
- At the moment, migration to Vue 3 is still fresh on our mind, but if we wait for some months or years, we will forget how to do migrations to Vue 3 and might have to re-learn some painful lessons.
Thus, even though the Baseline app could be replaced later, we choose to migrate it to Vue 3 now, while we still have momentum, in order to be able to kill off both our internal libs and our tooling dependencies on Vue 2.