appwrite / sdk-for-cli

[READ-ONLY] Official Appwrite CLI >_
BSD 3-Clause "New" or "Revised" License
85 stars 28 forks source link

🚀 Feature: Improve Error Message when Authentication is Required #80

Open stnguyen90 opened 1 year ago

stnguyen90 commented 1 year ago

🔖 Feature description

If the cookie in the pref.json is set but invalid, appwrite init project returns with:

✗ Error User (role: guests) missing scope (projects.read)
with verbose ```shell $ appwrite init project --verbose ? How would you like to start? Link this directory to an existing Appwrite project AppwriteException [Error]: User (role: guests) missing scope (projects.read) at Client.call (/Users/steven/.nvm/versions/node/v16.16.0/lib/node_modules/appwrite-cli/lib/client.js:209:19) at processTicksAndRejections (node:internal/process/task_queues:96:5) at async projectsList (/Users/steven/.nvm/versions/node/v16.16.0/lib/node_modules/appwrite-cli/lib/commands/projects.js:33:16) at async Object.choices (/Users/steven/.nvm/versions/node/v16.16.0/lib/node_modules/appwrite-cli/lib/questions.js:129:28) { code: 401, response: [Object: null prototype] { message: 'User (role: guests) missing scope (projects.read)', code: 401, type: 'general_unauthorized_scope', version: 'dev', file: '/usr/src/code/app/controllers/general.php', line: 365, trace: [ [Object: null prototype], [Object: null prototype], [Object: null prototype] ] } } ✗ Error User (role: guests) missing scope (projects.read) ```

It would be nice if the error message was more helpful. Tanmoy Karmakar has suggested:

Cannot access projects. Login is required use appwrite login command

FYI, if the cookie is not set we respond with:

✗ Error Session not found. Please run `appwrite login` to create a session

🎤 Pitch

The current error is very technical and doesn't give the user any guidance on how to proceed. A clearer, more helpful error message will create a better developer experience.

👀 Have you spent some time to check if this issue has been raised before?

🏢 Have you read the Code of Conduct?

Udassi-Pawan commented 1 year ago

Hey @stnguyen90 , I would like to work on this issue, would you assign it to me?

stnguyen90 commented 1 year ago

@Udassi-Pawan assigned! Thanks for your interest! 🙏🏼 Remember to make the change in our sdk-generator repo!