{"action":"created","issue":{"url":"https://api.github.com/repos/SheetJS/js-xls/issues/68","labels_url":"https://api.github.com/repos/SheetJS/js-xls/issues/68/labels{/name}","comments_url":"https://api.github.com/repos/SheetJS/js-xls/issues/68/comments","events_url":"https://api.github.com/repos/SheetJS/js-xls/issues/68/events","html_url":"https://github.com/SheetJS/js-xls/issues/68","id":57407270,"number":68,"title":"why is readFile synchronous by default, not async?","user":{"login":"jmarca","id":70304,"avatar_url":"https://avatars.githubusercontent.com/u/70304?v=3","gravatar_id":"","url":"https://api.github.com/users/jmarca","html_url":"https://github.com/jmarca","followers_url":"https://api.github.com/users/jmarca/followers","following_url":"https://api.github.com/users/jmarca/following{/other_user}","gists_url":"https://api.github.com/users/jmarca/gists{/gist_id}","starred_url":"https://api.github.com/users/jmarca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmarca/subscriptions","organizations_url":"https://api.github.com/users/jmarca/orgs","repos_url":"https://api.github.com/users/jmarca/repos","events_url":"https://api.github.com/users/jmarca/events{/privacy}","received_events_url":"https://api.github.com/users/jmarca/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-02-12T02:03:49Z","updated_at":"2015-02-12T18:28:38Z","closed_at":null,"body":"It is surprising to me, given that node.js is by design async, that readFile uses readFileSync (see https://github.com/SheetJS/js-xls/blob/master/xls.js#L7121).  \r\n\r\nAt the very least, I would have expected readFile to be called \"readFileSync.\"  Otherwise I think you're breaking the usual node.js customs. \r\n\r\nApologies if this was already hashed out in a flame war somewhere.  I searched the issues and didn't find anything."},"comment":{"url":"https://api.github.com/repos/SheetJS/js-xls/issues/comments/74124343","html_url":"https://github.com/SheetJS/js-xls/issues/68#issuecomment-74124343","issue_url":"https://api.github.com/repos/SheetJS/js-xls/issues/68","id":74124343,"user":{"login":"notatestuser","id":1255926,"avatar_url":"https://avatars.githubusercontent.com/u/1255926?v=3","gravatar_id":"","url":"https://api.github.com/users/notatestuser","html_url":"https://github.com/notatestuser","followers_url":"https://api.github.com/users/notatestuser/followers","following_url":"https://api.github.com/users/notatestuser/following{/other_user}","gists_url":"https://api.github.com/users/notatestuser/gists{/gist_id}","starred_url":"https://api.github.com/users/notatestuser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/notatestuser/subscriptions","organizations_url":"https://api.github.com/users/notatestuser/orgs","repos_url":"https://api.github.com/users/notatestuser/repos","events_url":"https://api.github.com/users/notatestuser/events{/privacy}","received_events_url":"https://api.github.com/users/notatestuser/received_events","type":"User","site_admin":false},"created_at":"2015-02-12T18:28:38Z","updated_at":"2015-02-12T18:28:38Z","body":"That seems solvable though (stream to disk, catch metadata, make second pass from disk with knowledge of metadata). "}}