| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The BIND form allows a value to be assigned to a variable from a graph
pattern:
SELECT ?u ?hour
{ ?u a rdfs:Resource .
nfo:fileLastModified ?modified
BIND (HOUR (?modified) AS ?hour)
}
It will be specially useful on places where we use the result of a
calculation on more than one places, eg. on SELECT and FILTER(). It will
also be useful combined with DELETE...INSERT...WHERE to perform complex
mass-updates in a single query.
http://www.w3.org/TR/sparql11-query/#bind
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
context
This is necessary for BIND support, as the variables looked up to add the
BIND alias likely belong to the same scope that we're currently building.
This results in SQL like (very simplified, and shortened):
SELECT "nie:url" AS "1_u", "1_u" AS "2_u" ...
The second "1_u" can't be looked up yet in this scope (only on the WHERE
clause, or a wrapping SELECT), so ends up as the string itself. With this
change, this kind of queries will result in (shortened again):
SELECT "nie:url" AS "1_u", "nie:url" AS "2_u" ...
Which is legal, and results in the expected values assigned to the BIND
alias.
|
|
|
|
|
| |
It will be necessary so we can figure out at query construction time
whether we are in a scope where we can use the variable alias or not.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sparql1.1 defines updates as a single statement of the form:
DELETE {} INSERT {} WHERE {}
With delete/insert-only syntax being special cases for that common
form: http://www.w3.org/TR/sparql11-update/#deleteInsert
This is now implemented in litracker-data, the parser will accept
this new syntax, and perform the delete/insert operations on all
solution items. We first perform all deletes and then all inserts
in order to minimize database flushing.
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-now
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#idp2130040
|
|
|
|
|
|
|
| |
This will be used to back up the RAND() sparql 1.1 function. Unlike
the random() sqlite builtin function, g_random_double() gives us
the random number in the same range than described in the
recommendation, so it seems a better fit.
|
|
|
|
|
|
|
|
| |
These functions are defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-md5
http://www.w3.org/TR/sparql11-query/#func-sha1
http://www.w3.org/TR/sparql11-query/#func-sha256
http://www.w3.org/TR/sparql11-query/#func-sha512
|
|
|
|
|
| |
This function will be used to back the various sparql checksum
functions.
|
|
|
|
|
|
|
|
|
|
| |
These functions are defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-year
http://www.w3.org/TR/sparql11-query/#func-month
http://www.w3.org/TR/sparql11-query/#func-day
http://www.w3.org/TR/sparql11-query/#func-hours
http://www.w3.org/TR/sparql11-query/#func-minutes
http://www.w3.org/TR/sparql11-query/#func-seconds
|
|
|
|
|
|
| |
Instead of storing it in an internal variable, we might be applying
different operation types here, so it will be clearer overall if
we pass the operation around.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The datetime functions were very specific at only accepting variables
(backed by a table column), using the :localDate and :localTime
decomposed fields, specific internally to datetime properties.
So, actually make it able to accept other than variables (we will still
use the decomposed local time for these), and translate these as a
primary expression. This makes all these queries work (as opposed
to just the first):
select year(?date) { ?u nie:contentCreated ?date }
select year(now()) {}
select year("2015-07-29T23:00:00Z"^^xsd:dateTime) {}
select year("2015-07-29"^^xsd:date) {}
|
|
|
|
|
|
| |
These functions are defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-ceil
http://www.w3.org/TR/sparql11-query/#func-floor
|
|
|
|
| |
These will be used to implement CEIL/FLOOR, as per Sparql 1.1
|
|
|
|
|
|
| |
These functions are defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-strbefore
http://www.w3.org/TR/sparql11-query/#func-strafter
|
|
|
|
| |
These will be used in STRBEFORE/STRAFTER, as per sparql 1.1
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-encode
|
|
|
|
| |
This will be used on ENCODE_FOR_URI(), as per sparql 1.1.
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-round
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-abs
|
|
|
|
|
|
| |
These are defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-strstarts
http://www.w3.org/TR/sparql11-query/#func-strends
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommedation,
http://www.w3.org/TR/sparql11-query/#func-substr
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query recommendation,
http://www.w3.org/TR/sparql11-query/#func-strlen
|
|
|
|
|
|
| |
These functions are defined in Sparql 1.1 query recommendation,
http://www.w3.org/TR/sparql11-query/#func-lcase
http://www.w3.org/TR/sparql11-query/#func-ucase
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-contains
|
|
|
|
|
| |
This function is defined in Sparql 1.1 query language recommendation,
http://www.w3.org/TR/sparql11-query/#func-concat
|
| |
|
|
|
|
|
| |
Failing tests shouldn't take 30 seconds to fail. 5 seconds is still a
long time.
|
| |
|
|
|
|
|
| |
Also, the test-runner.sh now runs all .py files, instead of just those
marked executable.
|
|
|
|
| |
dbus-python is deprecated.
|
|
|
|
|
| |
If a process was never started, the .stop method should do nothing
instead of raising an AttributeError.
|
|
|
|
|
|
|
|
|
|
|
| |
The commandline option parsing is totally broken and interferes with the
real argument parsing of the unittest module or whatever other test
runner you are using.
You can now enable verbose test output by setting
TRACKER_TESTS_VERBOSE=1 in the environment. The
TRACKER_TESTS_MANUAL_START variable also exists but probably doesn't
work at present.
|
|
|
|
|
|
|
|
|
| |
Owner UID of the /proc/[pid]/cmdline could be different than process real UID
while /proc/[pid] owner is expected to be equal.
Signed-off-by: Denis Zalevskiy <denis.zalevskiy@jolla.com>
https://bugzilla.gnome.org/show_bug.cgi?id=755945
|
| |
|
|
|
|
|
|
|
|
| |
When "Couldn't" is used in an m4 macro, vim will highlight all the
code until the next "'" to close it. Work around that by replacing
"Couldn't" by "Could not".
https://bugzilla.gnome.org/show_bug.cgi?id=755218
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Recent glib forbids duplicate test paths, as the test relies on that
in order to find the .rq/.out files, copy these files from graph-4*.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The ModuleInfo typedef contains 6 items, of which the last is 'optional' (predefined).
TRUE as parameter for TrackerExtractShutdownFunc though is not a good idea: it's used as an
integer and passed as a pointer to a function call.
As there is no shudown function for the dummy module, just pass an additional NULL in there.
https://bugzilla.gnome.org/show_bug.cgi?id=754448
|