Coder Social home page Coder Social logo

jassa-core's People

Contributors

aklakan avatar leipert avatar lukovnikov avatar maroe avatar patrickwestphal avatar yamalight avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jassa-core's Issues

hashCode function in util.HashMap returns same value for an integer and a string containing same integer

The hashCode function of the util.HashMap class generates the same hash for, e.g. 23 and '23' (integer and string type, respectively). In this respect the function behaves differently than many other hash functions, e.g. in
Node

> var md5 = require('MD5');
undefined
> md5(23)
'1fab1cffea9b6fd2f36bfb46e182fd77'
> md5('23')
'37693cfc748049e45d87b8c7d8b9aacd'

Python

>>> hash(23)
23
>>> hash('23')
6400038450057767

and R

> library(hashFunction)
> cityhash.64('23')
[1] 1301089509  153739053
> cityhash.64(as.integer(23))
[1]  1257865039 -2072067122

Moreover it breaks this test.

Is this behaviour intended or a bug?

Please provide some documentation that show how namespace objects should look like

In the devel branch's util.Serializer there is a comment for the indexClasses function that (as far as I can interpret) states that a namespace is expected to be a JavaScript object:

/**
 * Find and index all classes that appear as members of the namespace (a JavaScript Object)
 */

Can you please provide some kind of documentation that give hints of how a namespace object should look like? Since the Serializer is never used somewhere in the whole project I cannot infer anything and thus not test this function.

Replace cache with platform agnostic one

Currently cache (monsur-jscache) relies on localStorage, and thus works only in browsers.
Some sort of solution that works both for node.js and browser would be better.

Inject Promise and .ajax() function

Currently Promise class is hardcoded into the library (with node.js version of bluebird).
Would be good to have a way to inject Promise class and ajaxRequest function on requiring of jassa, e.g.:

var Promise = require('bluebird');
var ajaxRequest = $.ajax
var jassa = require('jassa-core')(Promise, ajaxRequest);

The main problem is passing injected deps to all sub-modules. Doing it by hand is a pain.

installation problem

  • Node Version: 8.2.1
  • NPM Version: 5.3.0
  • Platform: UBUNTU 16.04
  • Compiler: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) -->
  • Module: npm install jassa
  • Python: 2.7.13 (default, Aug 14 2017, 15:08:31)
the installation of jassa module ends with error : `make` failed with exit code: 2

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'install', 'jassa' ]
2 info using [email protected]
3 info using [email protected]
4 verbose config Skipping project config: /home/wamo/.npmrc. (matches userconfig)
5 verbose npm-session 2ad8b776b6af5c85
6 silly install loadCurrentTree
7 silly install readLocalPackageData
8 http fetch GET 200 https://registry.npmjs.org/jassa 15ms (from cache)
9 silly pacote tag manifest for jassa@latest fetched in 31ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 silly install loadShrinkwrap
13 silly install loadAllDepsIntoIdealTree
14 silly resolveWithNewModule [email protected] checking installable status
15 http fetch GET 200 https://registry.npmjs.org/jquery 5ms (from cache)
16 silly pacote range manifest for jquery@1.8.3 fetched in 10ms
17 warn deprecated [email protected]: Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0.
18 silly resolveWithNewModule [email protected] checking installable status
19 http fetch GET 200 https://registry.npmjs.org/xmlhttprequest 9ms (from cache)
20 http fetch GET 200 https://registry.npmjs.org/contextify 10ms (from cache)
21 silly pacote range manifest for xmlhttprequest@1.4.2 fetched in 12ms
22 silly resolveWithNewModule [email protected] checking installable status
23 silly pacote range manifest for contextify@0.1.3 fetched in 12ms
24 silly resolveWithNewModule [email protected] checking installable status
25 http fetch GET 200 https://registry.npmjs.org/bindings 3ms (from cache)
26 http fetch GET 200 https://registry.npmjs.org/nan 3ms (from cache)
27 silly pacote range manifest for bindings@^1.2.1 fetched in 5ms
28 silly resolveWithNewModule [email protected] checking installable status
29 silly pacote range manifest for nan@^2.1.0 fetched in 5ms
30 silly resolveWithNewModule [email protected] checking installable status
31 silly currentTree wamo
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”€ [email protected]
31 silly currentTree Ò”œÒ”€Ò”¬ [email protected]
31 silly currentTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
31 silly currentTree Ò””Ò”€Ò”€ [email protected]
32 silly idealTree wamo
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”€ [email protected]
32 silly idealTree Ò”œÒ”€Ò”¬ [email protected]
32 silly idealTree Γ’β€β€š Ò””Ò”€Ò”€ [email protected]
32 silly idealTree Ò””Ò”€Ò”€ [email protected]
33 silly install generateActionsToTake
34 silly diffTrees action count 6
35 silly diffTrees add [email protected]
36 silly diffTrees add [email protected]
37 silly diffTrees add [email protected]
38 silly diffTrees add [email protected]
39 silly diffTrees add [email protected]
40 silly diffTrees add [email protected]
41 silly decomposeActions action count 48
42 silly decomposeActions fetch [email protected]
43 silly decomposeActions extract [email protected]
44 silly decomposeActions preinstall [email protected]
45 silly decomposeActions build [email protected]
46 silly decomposeActions install [email protected]
47 silly decomposeActions postinstall [email protected]
48 silly decomposeActions finalize [email protected]
49 silly decomposeActions refresh-package-json [email protected]
50 silly decomposeActions fetch [email protected]
51 silly decomposeActions extract [email protected]
52 silly decomposeActions preinstall [email protected]
53 silly decomposeActions build [email protected]
54 silly decomposeActions install [email protected]
55 silly decomposeActions postinstall [email protected]
56 silly decomposeActions finalize [email protected]
57 silly decomposeActions refresh-package-json [email protected]
58 silly decomposeActions fetch [email protected]
59 silly decomposeActions extract [email protected]
60 silly decomposeActions preinstall [email protected]
61 silly decomposeActions build [email protected]
62 silly decomposeActions install [email protected]
63 silly decomposeActions postinstall [email protected]
64 silly decomposeActions finalize [email protected]
65 silly decomposeActions refresh-package-json [email protected]
66 silly decomposeActions fetch [email protected]
67 silly decomposeActions extract [email protected]
68 silly decomposeActions preinstall [email protected]
69 silly decomposeActions build [email protected]
70 silly decomposeActions install [email protected]
71 silly decomposeActions postinstall [email protected]
72 silly decomposeActions finalize [email protected]
73 silly decomposeActions refresh-package-json [email protected]
74 silly decomposeActions fetch [email protected]
75 silly decomposeActions extract [email protected]
76 silly decomposeActions preinstall [email protected]
77 silly decomposeActions build [email protected]
78 silly decomposeActions install [email protected]
79 silly decomposeActions postinstall [email protected]
80 silly decomposeActions finalize [email protected]
81 silly decomposeActions refresh-package-json [email protected]
82 silly decomposeActions fetch [email protected]
83 silly decomposeActions extract [email protected]
84 silly decomposeActions preinstall [email protected]
85 silly decomposeActions build [email protected]
86 silly decomposeActions install [email protected]
87 silly decomposeActions postinstall [email protected]
88 silly decomposeActions finalize [email protected]
89 silly decomposeActions refresh-package-json [email protected]
90 silly install executeActions
91 silly doSerial global-install 48
92 verbose correctMkdir /home/wamo/.npm/_locks correctMkdir not in flight; initializing
93 verbose lock using /home/wamo/.npm/_locks/staging-0549fb20fc9b4533.lock for /home/wamo/node_modules/.staging
94 silly doParallel extract 48
95 silly extract [email protected]
96 silly extract [email protected]
97 silly extract [email protected]
98 silly extract [email protected]
99 silly extract [email protected]
100 silly extract [email protected]
101 silly doReverseSerial unbuild 48
102 silly doSerial remove 48
103 silly doSerial move 48
104 silly doSerial finalize 48
105 silly finalize /home/wamo/node_modules/bindings
106 silly finalize /home/wamo/node_modules/jquery/node_modules/xmlhttprequest
107 silly finalize /home/wamo/node_modules/nan
108 silly finalize /home/wamo/node_modules/contextify
109 silly finalize /home/wamo/node_modules/jquery
110 silly finalize /home/wamo/node_modules/jassa
111 silly doParallel refresh-package-json 48
112 silly refresh-package-json /home/wamo/node_modules/bindings
113 silly refresh-package-json /home/wamo/node_modules/jquery/node_modules/xmlhttprequest
114 silly refresh-package-json /home/wamo/node_modules/nan
115 silly refresh-package-json /home/wamo/node_modules/contextify
116 silly refresh-package-json /home/wamo/node_modules/jquery
117 silly refresh-package-json /home/wamo/node_modules/jassa
118 silly doParallel preinstall 48
119 silly preinstall [email protected]
120 info lifecycle [email protected]
preinstall: [email protected]
121 silly preinstall [email protected]
122 info lifecycle [email protected]
preinstall: [email protected]
123 silly preinstall [email protected]
124 info lifecycle [email protected]
preinstall: [email protected]
125 silly preinstall [email protected]
126 info lifecycle [email protected]preinstall: [email protected]
127 silly preinstall [email protected]
128 info lifecycle [email protected]
preinstall: [email protected]
129 silly preinstall [email protected]
130 info lifecycle [email protected]preinstall: [email protected]
131 silly doSerial build 48
132 silly build [email protected]
133 info linkStuff [email protected]
134 silly linkStuff [email protected] has /home/wamo/node_modules as its parent node_modules
135 verbose linkBins [email protected]
136 verbose linkMans [email protected]
137 silly build [email protected]
138 info linkStuff [email protected]
139 silly linkStuff [email protected] has /home/wamo/node_modules/jquery/node_modules as its parent node_modules
140 verbose linkBins [email protected]
141 verbose linkMans [email protected]
142 silly build [email protected]
143 info linkStuff [email protected]
144 silly linkStuff [email protected] has /home/wamo/node_modules as its parent node_modules
145 verbose linkBins [email protected]
146 verbose linkMans [email protected]
147 silly build [email protected]
148 info linkStuff [email protected]
149 silly linkStuff [email protected] has /home/wamo/node_modules as its parent node_modules
150 verbose linkBins [email protected]
151 verbose linkMans [email protected]
152 silly build [email protected]
153 info linkStuff [email protected]
154 silly linkStuff [email protected] has /home/wamo/node_modules as its parent node_modules
155 verbose linkBins [email protected]
156 verbose linkMans [email protected]
157 silly build [email protected]
158 info linkStuff [email protected]
159 silly linkStuff [email protected] has /home/wamo/node_modules as its parent node_modules
160 verbose linkBins [email protected]
161 verbose linkMans [email protected]
162 silly doSerial global-link 48
163 silly doParallel update-linked 48
164 silly doSerial install 48
165 silly install [email protected]
166 info lifecycle [email protected]
install: [email protected]
167 silly install [email protected]
168 info lifecycle [email protected]install: [email protected]
169 silly install [email protected]
170 info lifecycle [email protected]
install: [email protected]
171 silly install [email protected]
172 info lifecycle [email protected]install: [email protected]
173 verbose lifecycle [email protected]
install: unsafe-perm in lifecycle true
174 verbose lifecycle [email protected]install: PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/home/wamo/node_modules/contextify/node_modules/.bin:/home/wamo/node_modules/.bin:/home/wamo/bin:/home/wamo/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
175 verbose lifecycle [email protected]
install: CWD: /home/wamo/node_modules/contextify
176 silly lifecycle [email protected]install: Args: [ '-c', 'node-gyp rebuild' ]
177 silly lifecycle [email protected]
install: Returned: code: 1 signal: null
178 info lifecycle [email protected]~install: Failed to exec install script
179 verbose unlock done using /home/wamo/.npm/_locks/staging-0549fb20fc9b4533.lock for /home/wamo/node_modules/.staging
180 warn enoent ENOENT: no such file or directory, open '/home/wamo/package.json'
181 verbose enoent This is related to npm not being able to find a file.
182 warn wamo No description
183 warn wamo No repository field.
184 warn wamo No README data
185 warn wamo No license field.
186 verbose stack Error: [email protected] install: node-gyp rebuild
186 verbose stack Exit status 1
186 verbose stack at EventEmitter. (/usr/lib/node_modules/npm/lib/utils/lifecycle.js:289:16)
186 verbose stack at emitTwo (events.js:125:13)
186 verbose stack at EventEmitter.emit (events.js:213:7)
186 verbose stack at ChildProcess. (/usr/lib/node_modules/npm/lib/utils/spawn.js:40:14)
186 verbose stack at emitTwo (events.js:125:13)
186 verbose stack at ChildProcess.emit (events.js:213:7)
186 verbose stack at maybeClose (internal/child_process.js:921:16)
186 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
187 verbose pkgid [email protected]
188 verbose cwd /home/wamo/arq/testingClient
189 verbose Linux 4.4.0-62-generic
190 verbose argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "jassa"
191 verbose node v8.2.1
192 verbose npm v5.3.0
193 error code ELIFECYCLE
194 error errno 1
195 error [email protected] install: node-gyp rebuild
195 error Exit status 1
196 error Failed at the [email protected] install script.
196 error This is probably not a problem with npm. There is likely additional logging output above.
197 verbose exit [ 1, true ]

Expose all the internal submodules

Currently Jassa lib only exposes modules that are used in basic test cases.
It's probably a good idea to expose all the modules same way old jassa code did.

100% test coverage

Currently there are only few small tests which cover only around ~30% of code, we need 100% coverage.

Concept Intersection fails

filterConcept := "?s http://geovocab.org/geometry#geometry ?fv_2; ?fv_2"

attrConcept := "?s http://www.opengis.net/ont/geosparql#asWKT ?w; ?s"

intersection using ConceptUtils.createCombinedConcept(attrConcept, filterConcept, true, false, false) yields

actual := "?s http://geovocab.org/geometry#geometry ?s . ?s http://www.opengis.net/ont/geosparql#asWKT ?w; ?s"

expected := "?freshVar http://geovocab.org/geometry#geometry ?s . ?s http://www.opengis.net/ont/geosparql#asWKT ?w; ?s"

with ?freshVar being a newly allocated variable distinct from any other variable

Promise.method is non standard and breaks browser compatibility

Hello,

The method function being used to wrap functions isn't actually available on standard Promise objects in browsers which really makes Bluebird a required dependency. The Promises/A+ standard doesn't specificy it and I know this is pretty tedious since it can be easily prototyped but it's something worth mentioning.

Thanks and awesome library!

Browser build script

Add gulp build script for compiling (minified) browser version of jassa-core.

Is the ObjectMap class really needed?

Currently the class ObjectMap exists in the devel branch which wraps simple JavaScript objects. This class does not add any functionality but just defines a different (Java hash map-like) API. Moreover it is used nowhere in the current Jassa Core code. Is this class really needed?

Browserified Jassa-Core does not work

I ran gulp browserify and recieve Uncaught ReferenceError: Jassa is not defined with this minimal example:

<html>
<head>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

    <!-- The minified version also does not work.-->
    <!--<script src="dist/jassa.min.js"></script>-->
    <script src="dist/jassa.js"></script>

    <script type="text/javascript">
        var jassa = new Jassa(Promise, $.ajax);
        console.log("The Jassa object: ", jassa);
    </script>
</head>
</html>

Redundant RDF datatype classes?

In the lib/rdf/rdf_datatype/ directory there are the following classes defined:

Β«abstractΒ»
RdfDatatype
getUri()
unparse()
parse()
BaseDatatype (extends RdfDatatype)
getUri()
unparse(value)
parse(str)
toString()
RdfDatatypeBase (extends RdfDatatype)
getUri()
RdfDatatypeLabel (extends RdfDatatypeBase)
parse(str)
unparse(val)

For me it seems like either RdfDatatypeBase and RdfDatatypeLabel or BaseDatatype is needed. Is there a reason for having all of them?
Moreover I'm wondering if we really need this class hierachy here, since it (IMHO) only complicates things unnecessarily.

Better docs/readme

Currently readme lacks some parts (e.g. browser inclusion example) - add those once ready.

Errors in Jassa-Core get not propagated

If a sponate query has an error, it will not be propagated. Check this minimal example (Please note the error in the "from query" uri)

var jassa = new Jassa(Promise, $.ajax);
var sparql = jassa.sparql;
var service = jassa.service;
var sponate = jassa.sponate;

var sparqlService = new service.SparqlServiceHttp('http://dbpedia.org/sparql', ["http://dbpedia.org"]);
sparqlService = new service.SparqlServiceCache(sparqlService);
var store = new sponate.StoreFacade(sparqlService);

store.addMap({
    name: 'test',
    template: [
        {
            id: '?uri'
        }
    ],
    from: '?uri a <http://dbpedia.org/ontology/Person'
});

store['test'].find().list()
    .then(
    function (data) {
        console.warn(data)
    })
    .catch(function (error) {
        //Never gets called
        console.warn(error);
    });

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.