kobotoolbox / kpi

kpi is the (frontend) server for KoboToolbox. It includes an API for users to access data and manage their forms, question library, sharing settings, create reports, and export data.
https://www.kobotoolbox.org
GNU Affero General Public License v3.0
130 stars 177 forks source link

Decaffeinate Form Builder code to JavaScript (ES6) #3018

Open magicznyleszek opened 3 years ago

magicznyleszek commented 3 years ago

Description

We need to take a look at https://decaffeinate-project.org/

Steps:

  1. See conversion guide https://github.com/decaffeinate/decaffeinate/blob/master/docs/conversion-guide.md
  2. Cleanup current coffee code, so it is tidy enough for the decaffeinate
    • we have coffeelint configuration set up now, let's first use it to fix everything :)
    • there is bulk-decaffeinate check that gives a list of errors in files
  3. Make sure there are no open PRs for coffee code.
    • Especially make sure there are no big features that changes significant portions of coffee files, if so these ought to be merged first
  4. Convert code 🥳
  5. Cleanup new JS code (https://github.com/decaffeinate/decaffeinate/blob/master/docs/correctness-issues.md)
  6. Convert tests and make sure they work
jnm commented 3 years ago

@magicznyleszek I was talking with @tinok and there may be some funding to do this work, depending on how long it'll take. What's your guess for that?