Commits


Paul Taylor authored and Wes McKinney committed 0c8853f9061
ARROW-1479: [JS] Expand JavaScript implementation Finally PR'ing https://github.com/graphistry/arrow to the official Arrow project Primary motivations: - Multi-part ArrowReader to support async and streaming - ArrowReader and related types as native JS iterators (and soon, async iterators) - Unify vectors across RecordBatches into a single logical virtual instance - Fast vector subarray/slice to dense typed Arrays (handy for GPU compute) Example: ```js import { readFileSync } from 'fs'; import { Table } from 'apache-arrow'; const table = Table.from(...[ 'latlong/schema.arrow', 'latlong/records.arrow' ].map((file) => readFileSync(file))); const column = table.getColumn('origin_lat'); const typed = column.slice(); assert(typed instanceof Float32Array); for (let i = -1, n = column.length; ++i < n;) { assert(column.get(i) === typed[i]); } console.log(table.toString()); /* origin_lat, origin_lon 35.393089294433594, -97.6007308959961 35.393089294433594, -97.6007308959961 35.393089294433594, -97.6007308959961 29.533695220947266, -98.46977996826172 29.533695220947266, -98.46977996826172 */ ``` Todos: - ArrowWriter - Map type? - [`readBuffersAsync`/`readStreamAsync`](https://github.com/graphistry/arrow/issues/8) - fix prepublish script for Arrow project CI/deploy strategy Author: Paul Taylor <paul.e.taylor@me.com> Closes #1062 from trxcllnt/new-arrow-js and squashes the following commits: 4f71e769 [Paul Taylor] add more rat excludes and delete changelog fc01b80a [Paul Taylor] Update license/docs per Wes's feedback 5f66c097 [Paul Taylor] add .npmrc to rat exlusions 927ce614 [Paul Taylor] Merge branch 'master' into new-arrow-js f6da81eb [Paul Taylor] Fix rat exlusions, add header to prepublish script aff1fdb9 [Paul Taylor] Tweak the JS CI scripts, fix case-sensitive file name in git 8b9208a1 [Paul Taylor] Merge branch 'master' into new-arrow-js 4a74d856 [Paul Taylor] Update CI scripts for new Arrow JS lib 28261892 [Paul Taylor] chore(js): Move graphistry/arrow into apache/arrow