Commit Graph

1919 Commits

Author SHA1 Message Date
Ben Kalman
d1b8e5f805 Update splore to use @attic/webpack-config/run.py (#1244) 2016-04-13 16:54:53 -07:00
Ben Kalman
11c79b2d56 Add run.py script to jsmodules/webpack-config (#1243)
This is intended to replace simpler uses of .npm_run_helper.py, then
    I'll continually migrate views until they can use the simpler form.
    Currently it will only be Splore that uses it.
2016-04-13 16:31:08 -07:00
Ben Kalman
8cc93e7591 Pull @attic/webpack-config from npm (#1239) 2016-04-13 16:23:38 -07:00
Rafael Weinstein
7344ae199b Merge pull request #1237 from rafael-atticlabs/treeWalkRef
tree walks now operate over types.RefBase
2016-04-13 15:36:43 -07:00
Aaron Boodman
383f767b08 Merge pull request #1192 from aboodman/fs
Introduce clients/fs: beginning of a filesystem importer
2016-04-13 15:27:51 -07:00
Rafael Weinstein
45e5dc6260 tree walks now operate over types.RefBase 2016-04-13 15:26:44 -07:00
Aaron Boodman
0decfbdee6 Introduce clients/fs: beginning of a filesystem importer 2016-04-13 15:23:34 -07:00
cmasone-attic
ff4dc2c688 Merge pull request #1233 from cmasone-attic/ds-bug
Special-case Package chunks when caching reachables during ReadValue
2016-04-13 15:17:13 -07:00
Erik Arvidsson
9a244c851a Revert "JS SDK: Export emptyRef (#1240)"
This reverts commit 13bddf763f.

I hadn't landed the change with emptyRef yet
2016-04-13 15:15:25 -07:00
Erik Arvidsson
13bddf763f JS SDK: Export emptyRef (#1240) 2016-04-13 15:12:47 -07:00
Chris Masone
a8423c9234 Special-case Package chunks when caching reachables during ReadValue
For performance reasons, Package objects for generated Noms Types are
side-loaded when reading Values. This means that the
opportunistically-populated chunk->Type map used by DataStore when
validating writes won't see these chunks in a number of cases. This
can lead to false negatives and erroneous validation failures. This
patch special-cases RefOfPackage when caching the Chunks reachable
from a newly-read Value, manually fetching them from the
types.PackageRegistry and crawling their reachable Chunks.

Fixes #1229.
2016-04-13 15:08:18 -07:00
Ben Kalman
9c0e148e18 Remove pitchmap directory and travis entry (#1236) 2016-04-13 14:34:42 -07:00
cmasone-attic
265d9d19ac Merge pull request #1201 from cmasone-attic/issue654
Pull DataStore API over the wire and kill chunks.HTTPStore
2016-04-13 14:28:05 -07:00
Ben Kalman
7c8d95bc8e Move js/webpack-config to jsmodules in preparation for publishing to npm (#1235) 2016-04-13 14:20:36 -07:00
Chris Masone
11382ad716 Code review fixes 2016-04-13 14:01:40 -07:00
Ben Kalman
20101a3eee Make noms-webpack-config export an object not a function (#1228)
* Make noms-webpack-config export an object not a function

* V2

* Add noms-webpack-config to build.py

* Update other build.py files, fix webpack config issue

* Don't effectively exclude out.js
2016-04-13 11:49:23 -07:00
Chris Masone
7db243745b httpHintedChunkStore uses one big batch
A novel chunk may contain references to any other novel chunk, as long
as there are no cycles. This means that breaking up the stream of
novel chunks being written to the server into batches risks creating
races -- chunks in one batch might reference chunks in another,
meaning that the server would somehow need to be able to
cross-reference batches. This seems super hard, so we've just forced
the code to write in one massive batch upon Commit(). We'll evaluate
the performance of this solution and see what we need to change.

Also, there's a terrible hack in HandleWriteValue to make it so that
pulls can work by back-channeling all their chunks via postRefs/ and
then writing the final Commit object via writeValue/
This can be fixed once we fix issue 822
2016-04-12 18:50:35 -07:00
Ben Kalman
66e60150f1 Lower random map diff test size even more, to 50 (#1225) 2016-04-12 17:00:31 -07:00
Ben Kalman
927459c3fd Fix Splore form (#1223) 2016-04-12 16:37:53 -07:00
Erik Arvidsson
726235fdd1 Splore: Fix bug with unions (#1224) 2016-04-12 16:35:55 -07:00
Ben Kalman
7c253e272e Lower random map diff test size (#1221) 2016-04-12 15:59:28 -07:00
Ben Kalman
3cdf75d6d0 Implement Set/Map diff (#1139) 2016-04-12 14:58:39 -07:00
Chris Masone
d8a2d285e9 Pull DataStore API over the wire and kill chunks.HTTPStore
This patch is unfortunately large, but it seemed necessary to make all
these changes at once to transition away from having an HTTP
ChunkStore that could allow for invalid state in the DB. Now, we have
a RemoteDataStoreClient that allows for reading and writing of Values,
and performs validation on the server side before persisting chunks.
The semantics of DataStore are that written values can be read back
out immediately, but are not guaranteed to be persistent until after
Commit() The semantics are now that Put() blocks until the Chunk is
persisted, and the new PutMany() can be used to write a number of
Chunks all at once.

From a command-line tool point of view, -h and -h-auth still work as
expected.
2016-04-12 14:08:58 -07:00
Chris Masone
7bb5cf93a9 Remove only use of DataStore.Has 2016-04-12 13:29:31 -07:00
Erik Arvidsson
3cb7f804fd Auto deply JS SDK 2016-04-11 18:14:40 -07:00
Erik Arvidsson
3b76423cd0 Auto deploy JS (#1215)
Trying to use the version in package.json again

Issue #1200
2016-04-11 18:05:00 -07:00
Ben Kalman
b0b4fc6d00 Implement noms-view and splore-view (a splore compatible with noms-view) (#1194)
* Implement noms-view and make splore compatible

* Comments

* npm test

* Fewer changes to readme/build/etc

* comment in noms_view.go

* More updates

* Typo
2016-04-11 17:57:44 -07:00
Rafael Weinstein
eb0c9b6c39 Merge pull request #1213 from rafael-atticlabs/removeSetTargetValue
Remove Ref.SetTargetValue
2016-04-11 17:39:41 -07:00
Erik Arvidsson
fd10c789d6 Auto deploy JS SDK (#1214)
Use rev-list instead?

Issue #1200
2016-04-11 17:36:31 -07:00
Rafael Weinstein
4006746b21 Remove Ref.SetTargetValue 2016-04-11 17:25:56 -07:00
Rafael Weinstein
8315071088 Merge pull request #1199 from rafael-atticlabs/writeValueReturnsRefBase
(Go) WriteValue returns RefBase, (JS) writeValue returns RefValue
2016-04-11 17:16:06 -07:00
Rafael Weinstein
1676707906 WriteValue returns RefBase 2016-04-11 17:09:25 -07:00
Erik Arvidsson
9748e720ae Aut deploy JS SDK (#1211)
npm publish if the version has changed

Issue #1200
2016-04-11 17:06:59 -07:00
Erik Arvidsson
3758d0e6d9 Auto deploy JS SDK (#1210)
When the version in js/package.json is updated, publish a new version.

This does not yet do the actual publish. If this works it will be
updated in a later commit.

Issue #1200
2016-04-11 16:58:59 -07:00
Erik Arvidsson
a6cd5b9838 Revert "Auto deploy Noms JS SDK (#1208)"
This reverts commit af72024d35.

The computed version number is not good because `git log` does not
contain the full history so the number of rows is wrong.
2016-04-11 16:37:48 -07:00
Erik Arvidsson
af72024d35 Auto deploy Noms JS SDK (#1208)
This computes a new version based on the number of changes to the
js directory.

This does not yet actually publish the new version. I need to see how
Travis behaves before I can do that.

Towards #1200
2016-04-11 16:28:32 -07:00
Erik Arvidsson
1b7cf1d2bb Fix package.json version 2016-04-11 15:21:14 -07:00
Erik Arvidsson
65206c8336 defToNoms (#1204)
This is a convenience function for creating deeply nested Noms structures.
2016-04-11 15:19:37 -07:00
Erik Arvidsson
bfc7a5d88e JS: Remove makePrimitiveType (#1206)
type.js no longer exports makePrimitiveType. It is recommended to use
the type constants directly. There are a few cases where we had a
NomsKind and needed a Type. For those cases there is now a
getPrimitiveType but it is not exported by noms.

Fixes #1168
2016-04-11 15:00:39 -07:00
Erik Arvidsson
72fe7d2860 JS: Reduce map size in test (#1207)
BuildMap keeps timing out. This changes the size from 5k to 1k.

Fixes #1142
2016-04-11 14:27:25 -07:00
Erik Arvidsson
33cbf99ec4 Add more detailed error information when writing the wrong type (#1202) 2016-04-11 12:10:52 -07:00
Erik Arvidsson
5c705d42c2 JS Codegen: Do not export typeForT (#1197)
Issue #1081
2016-04-11 10:34:23 -07:00
Rafael Weinstein
7f06df15e3 Revert "typeOfBlob -> blobType, +refOfBlobType"
This reverts commit c5667dcbc3.
2016-04-10 11:40:25 -07:00
Rafael Weinstein
a74ddd4032 Merge pull request #1198 from rafael-atticlabs/blobType
typeForBlob -> blobType, +refOfBlobType
2016-04-10 11:09:39 -07:00
Rafael Weinstein
c5667dcbc3 typeOfBlob -> blobType, +refOfBlobType 2016-04-10 11:08:34 -07:00
Erik Arvidsson
9e4266871e JS CodeGen: Add newSetOfT etc (#1195)
* JS CodeGen: Add newSetOfT etc

This generates convenience functions for new list/set/map.

Issue #1081
2016-04-08 15:01:08 -07:00
Erik Arvidsson
c2d1edc436 Fix compare/equal/less on booleans (#1191)
The codegen tests were hitting this not implemented path.
2016-04-08 14:07:53 -07:00
Erik Arvidsson
e59dfacf1b JS codegen: Add test for recursive type (#1190)
To make this work we also have to export the noms `Type` for types
defined in the package.

Issue #1081
2016-04-08 09:51:49 -07:00
Erik Arvidsson
b79d89963f JS codegen: Add tests and make more things work (#1182)
Now the generated code is tested and most things work.



To generate a .noms.js file use the codegen go binary



Things that are not complete/needs improvements include:

- Recursive structs

- Structs with annonymous unions

- Enum -- constants for the values



Issue #1081
2016-04-07 14:11:40 -07:00
Erik Arvidsson
b85ce637b5 Noms SDK: Export primitive types (#1189) 2016-04-07 11:41:41 -07:00