summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshley Sommer <ashleysommer@gmail.com>2021-02-05 17:23:55 +1000
committerAshley Sommer <ashleysommer@gmail.com>2021-02-05 17:23:55 +1000
commite5f7a8b9bc7fc7e3f7ce81246a0f7a143405d238 (patch)
tree825fc0c946d55a98b40b9c500ba8fd6f162b02bf
parent7fdd271a61a6d78d93f4405df5b2541b10a0b2d8 (diff)
downloadrdflib-e5f7a8b9bc7fc7e3f7ce81246a0f7a143405d238.tar.gz
Added drone runner configtest_drone
Fixed some test deprecations
-rw-r--r--.drone.yml60
-rw-r--r--.gitignore2
-rw-r--r--rdflib/__init__.py2
-rw-r--r--rdflib/compare.py2
-rw-r--r--rdflib/plugin.py37
-rw-r--r--rdflib/plugins/serializers/nquads.py2
-rw-r--r--rdflib/plugins/serializers/nt.py12
-rw-r--r--rdflib/plugins/serializers/rdfxml.py2
-rw-r--r--rdflib/plugins/serializers/trig.py2
-rw-r--r--rdflib/plugins/serializers/trix.py2
-rw-r--r--rdflib/plugins/serializers/turtle.py2
-rw-r--r--test/test_canonicalization.py2
-rw-r--r--test/test_finalnewline.py2
-rw-r--r--test/test_prettyxml.py2
-rw-r--r--test/test_serializexml.py2
15 files changed, 97 insertions, 36 deletions
diff --git a/.drone.yml b/.drone.yml
new file mode 100644
index 00000000..bbaf37ee
--- /dev/null
+++ b/.drone.yml
@@ -0,0 +1,60 @@
+---
+kind: pipeline
+name: python-3-6
+type: docker
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+- name: test
+ image: python:3.6
+ commands:
+ - pip install -U setuptools pip
+ - bash .travis.fuseki_install_optional.sh
+ - pip install --default-timeout 60 -r requirements.txt
+ - pip install --default-timeout 60 -r requirements.dev.txt
+ - pip install --default-timeout 60 coverage coveralls nose-timer && export HAS_COVERALLS=1
+ - python setup.py install
+ - flake8 --exit-zero rdflib
+ - PYTHONWARNINGS=default nosetests --with-timer --timer-top-n 42 --with-coverage --cover-tests --cover-package=rdflib
+
+---
+kind: pipeline
+name: python-3-7
+type: docker
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+- name: test
+ image: python:3.7
+ commands:
+ - bash .travis.fuseki_install_optional.sh
+ - pip install --default-timeout 60 -r requirements.txt
+ - pip install --default-timeout 60 -r requirements.dev.txt
+ - pip install --default-timeout 60 coverage coveralls nose-timer && export HAS_COVERALLS=1
+ - python setup.py install
+ - flake8 --exit-zero rdflib
+ - PYTHONWARNINGS=default nosetests --with-timer --timer-top-n 42 --with-coverage --cover-tests --cover-package=rdflib
+
+---
+kind: pipeline
+name: python-3-8
+type: docker
+platform:
+ os: linux
+ arch: amd64
+
+steps:
+- name: test
+ image: python:3.8
+ commands:
+ - bash .travis.fuseki_install_optional.sh
+ - pip install --default-timeout 60 -r requirements.txt
+ - pip install --default-timeout 60 -r requirements.dev.txt
+ - pip install --default-timeout 60 coverage coveralls nose-timer && export HAS_COVERALLS=1
+ - python setup.py install
+ - flake8 --exit-zero rdflib
+ - PYTHONWARNINGS=default nosetests --with-timer --timer-top-n 42 --with-coverage --cover-tests --cover-package=rdflib
diff --git a/.gitignore b/.gitignore
index a88c4920..485a324e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,6 +15,8 @@ build/
/docs/draft/
*~
test_reports/*latest.ttl
+.venv/
+venv/
# PyCharm
.idea/
prepare_changelog.sh
diff --git a/rdflib/__init__.py b/rdflib/__init__.py
index b6949f5f..4ad4965d 100644
--- a/rdflib/__init__.py
+++ b/rdflib/__init__.py
@@ -23,7 +23,7 @@ A tiny example:
... if (s, p, o) not in g:
... raise Exception("It better be!")
- >>> s = g.serialize(format='nt')
+ >>> s = g.serialize(format='nt', encoding='ascii')
>>>
>>> sorted(g) == [
... (URIRef(u'http://meetings.example.com/cal#m1'),
diff --git a/rdflib/compare.py b/rdflib/compare.py
index ed4415f2..146bee09 100644
--- a/rdflib/compare.py
+++ b/rdflib/compare.py
@@ -42,7 +42,7 @@ Diff the two graphs::
Present in both::
>>> def dump_nt_sorted(g):
- ... for l in sorted(g.serialize(format='nt').splitlines()):
+ ... for l in sorted(g.serialize(format='nt', encoding='ascii').splitlines()):
... if l: print(l.decode('ascii'))
>>> dump_nt_sorted(in_both) #doctest: +SKIP
diff --git a/rdflib/plugin.py b/rdflib/plugin.py
index e1d47628..2af7370f 100644
--- a/rdflib/plugin.py
+++ b/rdflib/plugin.py
@@ -128,7 +128,6 @@ def plugins(name=None, kind=None):
yield p
-# Register Store Plugins
register("default", Store, "rdflib.plugins.stores.memory", "Memory")
register("Memory", Store, "rdflib.plugins.stores.memory", "Memory")
register("SimpleMemory", Store, "rdflib.plugins.stores.memory", "SimpleMemory")
@@ -140,7 +139,6 @@ register(
"SPARQLUpdateStore", Store, "rdflib.plugins.stores.sparqlstore", "SPARQLUpdateStore"
)
-# Register Triple Serializers
register(
"application/rdf+xml",
Serializer,
@@ -148,9 +146,6 @@ register(
"XMLSerializer",
)
register("xml", Serializer, "rdflib.plugins.serializers.rdfxml", "XMLSerializer")
-register(
- "pretty-xml", Serializer, "rdflib.plugins.serializers.rdfxml", "PrettyXMLSerializer"
-)
register("text/n3", Serializer, "rdflib.plugins.serializers.n3", "N3Serializer")
register("n3", Serializer, "rdflib.plugins.serializers.n3", "N3Serializer")
register(
@@ -158,6 +153,7 @@ register(
)
register("turtle", Serializer, "rdflib.plugins.serializers.turtle", "TurtleSerializer")
register("ttl", Serializer, "rdflib.plugins.serializers.turtle", "TurtleSerializer")
+register("trig", Serializer, "rdflib.plugins.serializers.trig", "TrigSerializer")
register(
"application/n-triples", Serializer, "rdflib.plugins.serializers.nt", "NTSerializer"
)
@@ -165,24 +161,21 @@ register("ntriples", Serializer, "rdflib.plugins.serializers.nt", "NTSerializer"
register("nt", Serializer, "rdflib.plugins.serializers.nt", "NTSerializer")
register("nt11", Serializer, "rdflib.plugins.serializers.nt", "NT11Serializer")
-# Register Quad Serializers
register(
- "application/n-quads",
- Serializer,
- "rdflib.plugins.serializers.nquads",
- "NQuadsSerializer",
+ "pretty-xml", Serializer, "rdflib.plugins.serializers.rdfxml", "PrettyXMLSerializer"
)
-register("nquads", Serializer, "rdflib.plugins.serializers.nquads", "NQuadsSerializer")
+register("trix", Serializer, "rdflib.plugins.serializers.trix", "TriXSerializer")
register(
"application/trix", Serializer, "rdflib.plugins.serializers.trix", "TriXSerializer"
)
-register("trix", Serializer, "rdflib.plugins.serializers.trix", "TriXSerializer")
register(
- "application/trig", Serializer, "rdflib.plugins.serializers.trig", "TrigSerializer"
+ "application/n-quads",
+ Serializer,
+ "rdflib.plugins.serializers.nquads",
+ "NQuadsSerializer",
)
-register("trig", Serializer, "rdflib.plugins.serializers.trig", "TrigSerializer")
+register("nquads", Serializer, "rdflib.plugins.serializers.nquads", "NQuadsSerializer")
-# Register Triple Parsers
register("application/rdf+xml", Parser, "rdflib.plugins.parsers.rdfxml", "RDFXMLParser")
register("xml", Parser, "rdflib.plugins.parsers.rdfxml", "RDFXMLParser")
register("text/n3", Parser, "rdflib.plugins.parsers.notation3", "N3Parser")
@@ -194,18 +187,16 @@ register("application/n-triples", Parser, "rdflib.plugins.parsers.ntriples", "NT
register("ntriples", Parser, "rdflib.plugins.parsers.ntriples", "NTParser")
register("nt", Parser, "rdflib.plugins.parsers.ntriples", "NTParser")
register("nt11", Parser, "rdflib.plugins.parsers.ntriples", "NTParser")
-
-# Register Quad Parsers
register("application/n-quads", Parser, "rdflib.plugins.parsers.nquads", "NQuadsParser")
register("nquads", Parser, "rdflib.plugins.parsers.nquads", "NQuadsParser")
register("application/trix", Parser, "rdflib.plugins.parsers.trix", "TriXParser")
register("trix", Parser, "rdflib.plugins.parsers.trix", "TriXParser")
-register("application/trig", Parser, "rdflib.plugins.parsers.trig", "TrigParser")
register("trig", Parser, "rdflib.plugins.parsers.trig", "TrigParser")
-# Register SPARQL Processors
+
register("sparql", Result, "rdflib.plugins.sparql.processor", "SPARQLResult")
register("sparql", Processor, "rdflib.plugins.sparql.processor", "SPARQLProcessor")
+
register(
"sparql",
UpdateProcessor,
@@ -213,7 +204,7 @@ register(
"SPARQLUpdateProcessor",
)
-# Register SPARQL Result Serializers
+
register(
"xml",
ResultSerializer,
@@ -257,7 +248,6 @@ register(
"CSVResultSerializer",
)
-# Register SPARQL Result Parsers
register(
"xml", ResultParser, "rdflib.plugins.sparql.results.xmlresults", "XMLResultParser"
)
@@ -273,12 +263,15 @@ register(
"rdflib.plugins.sparql.results.xmlresults",
"XMLResultParser",
)
+
register(
"application/rdf+xml",
ResultParser,
"rdflib.plugins.sparql.results.graph",
"GraphResultParser",
)
+
+
register(
"json",
ResultParser,
@@ -291,6 +284,7 @@ register(
"rdflib.plugins.sparql.results.jsonresults",
"JSONResultParser",
)
+
register(
"csv", ResultParser, "rdflib.plugins.sparql.results.csvresults", "CSVResultParser"
)
@@ -300,6 +294,7 @@ register(
"rdflib.plugins.sparql.results.csvresults",
"CSVResultParser",
)
+
register(
"tsv", ResultParser, "rdflib.plugins.sparql.results.tsvresults", "TSVResultParser"
)
diff --git a/rdflib/plugins/serializers/nquads.py b/rdflib/plugins/serializers/nquads.py
index 54ee42ba..650cafc3 100644
--- a/rdflib/plugins/serializers/nquads.py
+++ b/rdflib/plugins/serializers/nquads.py
@@ -28,7 +28,7 @@ class NQuadsSerializer(Serializer):
stream.write(
_nq_row(triple, context.identifier).encode(encoding, "replace")
)
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
def _nq_row(triple, context):
diff --git a/rdflib/plugins/serializers/nt.py b/rdflib/plugins/serializers/nt.py
index bc265ee5..5eb49f52 100644
--- a/rdflib/plugins/serializers/nt.py
+++ b/rdflib/plugins/serializers/nt.py
@@ -19,17 +19,21 @@ class NTSerializer(Serializer):
def __init__(self, store):
Serializer.__init__(self, store)
- self.encoding = "ascii" # n-triples are ascii encoded
+ # n-triples v1.0 files are ascii encoded
+ self.encoding = "ascii"
def serialize(self, stream, base=None, encoding=None, **args):
if base is not None:
warnings.warn("NTSerializer does not support base.")
- if encoding is not None and encoding.lower() != self.encoding.lower():
- warnings.warn("NTSerializer does not use custom encoding.")
+ if encoding is not None:
+ if encoding == "latin-1":
+ encoding = "ascii"
+ if encoding.lower() != self.encoding.lower():
+ warnings.warn("NTSerializer does not use custom encoding.")
encoding = self.encoding
for triple in self.store:
stream.write(_nt_row(triple).encode(self.encoding, "_rdflib_nt_escape"))
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
class NT11Serializer(NTSerializer):
diff --git a/rdflib/plugins/serializers/rdfxml.py b/rdflib/plugins/serializers/rdfxml.py
index d7c70849..9617ad50 100644
--- a/rdflib/plugins/serializers/rdfxml.py
+++ b/rdflib/plugins/serializers/rdfxml.py
@@ -213,7 +213,7 @@ class PrettyXMLSerializer(Serializer):
self.subject(subject, 1)
writer.pop(RDF.RDF)
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
# Set to None so that the memory can get garbage collected.
self.__serialized = None
diff --git a/rdflib/plugins/serializers/trig.py b/rdflib/plugins/serializers/trig.py
index cdaedd48..fab0142a 100644
--- a/rdflib/plugins/serializers/trig.py
+++ b/rdflib/plugins/serializers/trig.py
@@ -97,4 +97,4 @@ class TrigSerializer(TurtleSerializer):
self.write("}\n")
self.endDocument()
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
diff --git a/rdflib/plugins/serializers/trix.py b/rdflib/plugins/serializers/trix.py
index 05b6f528..28abefea 100644
--- a/rdflib/plugins/serializers/trix.py
+++ b/rdflib/plugins/serializers/trix.py
@@ -45,7 +45,7 @@ class TriXSerializer(Serializer):
raise Exception("Unknown graph type: " + type(self.store))
self.writer.pop()
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
def _writeGraph(self, graph):
self.writer.push(TRIXNS["graph"])
diff --git a/rdflib/plugins/serializers/turtle.py b/rdflib/plugins/serializers/turtle.py
index 8ec9b479..9633b5b9 100644
--- a/rdflib/plugins/serializers/turtle.py
+++ b/rdflib/plugins/serializers/turtle.py
@@ -250,7 +250,7 @@ class TurtleSerializer(RecursiveSerializer):
self.write("\n")
self.endDocument()
- stream.write("\n".encode("latin-1"))
+ stream.write(b'\n')
self.base = None
diff --git a/test/test_canonicalization.py b/test/test_canonicalization.py
index c3a8bf04..26d64ba4 100644
--- a/test/test_canonicalization.py
+++ b/test/test_canonicalization.py
@@ -10,7 +10,7 @@ from io import StringIO
def get_digest_value(rdf, mimetype):
graph = Graph()
- graph.load(StringIO(rdf), format=mimetype)
+ graph.parse(StringIO(rdf), format=mimetype)
stats = {}
ig = to_isomorphic(graph)
result = ig.graph_digest(stats)
diff --git a/test/test_finalnewline.py b/test/test_finalnewline.py
index 9b465b24..ffd95d8a 100644
--- a/test/test_finalnewline.py
+++ b/test/test_finalnewline.py
@@ -20,7 +20,7 @@ def testFinalNewline():
failed = set()
for p in rdflib.plugin.plugins(None, rdflib.plugin.Serializer):
v = graph.serialize(format=p.name, encoding="latin-1")
- lines = v.split("\n".encode("latin-1"))
+ lines = v.split(b"\n")
if b"\n" not in v or (lines[-1] != b""):
failed.add(p.name)
assert len(failed) == 0, "No final newline for formats: '%s'" % failed
diff --git a/test/test_prettyxml.py b/test/test_prettyxml.py
index 86027fb3..3e7e47c0 100644
--- a/test/test_prettyxml.py
+++ b/test/test_prettyxml.py
@@ -70,7 +70,7 @@ def serialize_and_load(sourceGraph, makeSerializer):
stream = serialize(sourceGraph, makeSerializer, False)
stream.seek(0)
reparsedGraph = ConjunctiveGraph()
- reparsedGraph.load(stream)
+ reparsedGraph.parse(stream, format='xml')
return reparsedGraph
diff --git a/test/test_serializexml.py b/test/test_serializexml.py
index 6ca25a92..338cb96d 100644
--- a/test/test_serializexml.py
+++ b/test/test_serializexml.py
@@ -69,7 +69,7 @@ def serialize_and_load(sourceGraph, makeSerializer):
stream = serialize(sourceGraph, makeSerializer, False)
stream.seek(0)
reparsedGraph = ConjunctiveGraph()
- reparsedGraph.load(stream)
+ reparsedGraph.parse(stream, format='xml')
return reparsedGraph