github-tools / github-tools/github
Repository.writeFile fails if no options object is passed
- Lingua principale
- JavaScript
- Stelle
- 3.8k
- Fork
- 809
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
In the [documentation](http://github-tools.github.io/github/docs/3.1.0/Repository.html#writeFile) about `Repository.writeFile`, the `options` parameter is specified as optional. Despite this, the function fails if no `options` object is passed and throws this error:
```
TypeError: Cannot read property 'encode' of undefined
at Repository.writeFile (/Users/lucasantchougov/Documents/Work/oauth-rule-manager/node_modules/github-api/dist/components/Repository.js:941:37)
at GitHubRuleManager.commitWorkspace (/Users/lucasantchougov/Documents/Work/oauth-rule-manager/lib/rule_managers/github-rule-manager.js:143:18)
at /Users/lucasantchougov/Documents/Work/matey/matey-server/app.js:74:25
at Layer.handle [as handle_request] (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/layer.js:95:5)
at next (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/route.js:137:13)
at Route.dispatch (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/route.js:112:3)
at Layer.handle [as handle_request] (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/layer.js:95:5)
at /Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/index.js:281:22
at param (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/index.js:354:14)
at param (/Users/lucasantchougov/Documents/Work/matey/matey-server/node_modules/express/lib/router/index.js:365:14)
```
The error seems to get thrown when `options.encode` is read in `Repository.writeFile`. It only works for me when passing an empty object. This should be better documented or a default empty object should be instantiated in the method.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Start with Repository.writeFile, which the report identifies in dist/components/Repository.js, and compare its behavior with the linked Repository documentation. Reproduce the call without an options object, then verify that the documented optional parameter and the observed behavior agree, either through the relevant documentation or a focused test if one is available.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript
- Ambito
- api
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100