<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I tried using the latest <code class="notranslate">xxxx/xxxx.d.ts</code> file in this repo and had problems.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I tried using the latest stable version of tsc. <a href="https://www.npmjs.com/package/typescript" rel="nofollow">https://www.npmjs.com/package/typescript</a></li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have a question that is inappropriate for <a href="https://stackoverflow.com/" rel="nofollow">StackOverflow</a>.  (Please ask any appropriate questions there).</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I want to talk about <code class="notranslate">knex/knex.d.ts</code>.
<ul dir="auto">
<li>The authors of that type definition are cc/ <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tkqubo/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tkqubo">@tkqubo</a></li>
</ul>
</li>
</ul>
<p dir="auto">It looks like the knex.d.ts definition file declares a dependency on bluebird 2.0 typings. The current version of knex.js relies in the 3.x branch of bluebird. Using bluebird (3.0) at the top level and knex in the same project results in <code class="notranslate">error TS2300 Duplicate identifier 'export='</code> errors, as the type system seems to be looking at both types/bluebird (for 3.0) and types/knex/node_modules/types/bluebird (for 2.0). Manually modifying the package.json and types/knex directories in my node_modules directory clear this problem up.</p>
<p dir="auto"><a href="https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/d3/d3.d.ts">d3/d3.d.ts</a> /cc <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/gustavderdrache/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/gustavderdrache">@gustavderdrache</a> <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/borisyankov/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/borisyankov">@borisyankov</a></p>
<p dir="auto">d3.js got a major overhaul. Its API has improved considerably. See <a href="https://github.com/d3/d3/blob/master/CHANGES.md">d3 v4 changes</a>. I'm quite excited about it, but for the time being I have to stay with v3 or abandon TypeScript for a critical class.</p>
<p dir="auto">Fascinating article by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mbostock/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mbostock">@mbostock</a> discussing examples of poor d3.js API pre-v4 and the rationale behind v4's API: <a href="https://medium.com/@mbostock/what-makes-software-good-943557f8a488" rel="nofollow">What Makes Software Good</a> - well worth the read no matter what walk of programming you come from.</p>
<p dir="auto">Edit: hang on- I just saw <a href="https://github.com/tomwanzek/d3-v4-definitelytyped">https://github.com/tomwanzek/d3-v4-definitelytyped</a> so perhaps <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tomwanzek/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tomwanzek">@tomwanzek</a> is already taking care of this?</p>