mirror of
				https://github.com/cookiengineer/audacity
				synced 2025-10-30 17:23:51 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			3114 lines
		
	
	
		
			110 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			3114 lines
		
	
	
		
			110 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 2006-11-18  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: Track when a stream is active and
 | ||
| 	store pending queries for SQLite in a list an apply after.
 | ||
| 	(librdf_storage_sqlite_exec): When the execution returns
 | ||
| 	SQLITE_LOCKED and in a stream, save the query for running later.
 | ||
| 	(librdf_storage_sqlite_serialise,
 | ||
| 	librdf_storage_sqlite_find_statements,
 | ||
| 	librdf_storage_sqlite_context_serialise,
 | ||
| 	librdf_storage_sqlite_get_contexts): Mark in stream.
 | ||
| 	(librdf_storage_sqlite_serialise_finished,
 | ||
| 	librdf_storage_sqlite_find_statements_finished
 | ||
| 	librdf_storage_sqlite_context_serialise_finished): End in stream.
 | ||
| 	(librdf_storage_sqlite_query_flush): Added.
 | ||
| 	Fixes Issue #0000139
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=139
 | ||
| 
 | ||
| 2006-10-31  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/Makefile.am: FIx AM_CPPFLAGS AM_CFLAGS
 | ||
| 
 | ||
| 2006-10-22  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* configure.ac, librdf/win32_rdf_config.h: Bump version to 1.0.5
 | ||
| 
 | ||
| 2006-10-21  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c:
 | ||
| 	(librdf_storage_sqlite_literal_helper): Check for no language or
 | ||
| 	no datatype when they are NULL.
 | ||
| 	Fixes Issue#0000136 http://bugs.librdf.org/mantis/view.php?id=136
 | ||
| 
 | ||
| 2006-10-14  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: Add a 'sychronous' storage option
 | ||
| 	for the sqlite store with values off, normal or full.
 | ||
| 	(librdf_storage_sqlite_init, librdf_storage_sqlite_open): set
 | ||
| 	synchronous flag and do creation in a transaction.
 | ||
| 	(librdf_storage_sqlite_contains_statement,
 | ||
| 	librdf_storage_sqlite_context_add_statement): Add transaction
 | ||
| 	around operation.
 | ||
| 	(librdf_storage_sqlite_context_remove_statement): Add trailing ;
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: Revert change:
 | ||
| 	> r11074 | dajobe | 2006-07-29 17:18:34 -0700 (Sat, 29 Jul 2006) | 5 lines
 | ||
| 	> (librdf_storage_mysql_add_statements): Use
 | ||
| 	> librdf_storage_mysql_context_add_statements.
 | ||
| 	> (librdf_storage_mysql_context_add_statements): Add check for adding
 | ||
| 	> duplicate statements and remove the check when in bulk mode.
 | ||
| 
 | ||
| 2006-10-08  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_hashes.c:
 | ||
| 	(librdf_storage_hashes_add_remove_statement,
 | ||
| 	librdf_storage_hashes_contains_statement): Fix debug calls.
 | ||
| 	Fixes Issue#0000132 http://bugs.librdf.org/mantis/view.php?id=132
 | ||
| 
 | ||
| 	* librdf/rdf_query.c: (librdf_query_register_factory): Fix debug call.
 | ||
| 	Fixes Issue#0000132 http://bugs.librdf.org/mantis/view.php?id=132
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c: (main): Reuse serializer
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: (main): Free test big literal.
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: (main): Add test for big 100,000-length literal.
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: (librdf_new_node_from_literal): Call
 | ||
| 	librdf_new_node_from_typed_counted_literal directly.
 | ||
| 	(librdf_new_node_from_typed_counted_literal): Added, with guts of
 | ||
| 	librdf_new_node_from_typed_literal.
 | ||
| 	(librdf_new_node_from_typed_literal): Call
 | ||
| 	librdf_new_node_from_typed_counted_literal with additional
 | ||
| 	strlen()s.
 | ||
| 	(librdf_node_encode, librdf_node_decode): Added new long literal
 | ||
| 	type 'N' when the string length > 0xFFFF.  Does not affect
 | ||
| 	existing shorter literal encoding. Use
 | ||
| 	librdf_new_node_from_typed_counted_literal to save un-necessary
 | ||
| 	strlen()s.
 | ||
| 
 | ||
| 	* librdf/rdf_node.h: Added
 | ||
| 	librdf_new_node_from_typed_counted_literal prototype.
 | ||
| 
 | ||
| 	* librdf/rdf_node_internal.h: struct librdf_node_s now counts XML
 | ||
| 	language length
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: Add tests for node encoding URIs, literals
 | ||
| 
 | ||
| 	* librdf/rdf_list.c, librdf/rdf_list_internal.h: rdf_list_context
 | ||
| 	restores current and next fields. When a node is deleted, just
 | ||
| 	adjust the next pointer.
 | ||
| 
 | ||
| 2006-10-07  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: (librdf_list_iterators_replace_node): Remove
 | ||
| 	next field, just use librdf_iterator_next() to move on.
 | ||
| 	(librdf_list_get_iterator, librdf_list_iterator_next_method):
 | ||
| 	Remove use of next field.
 | ||
| 
 | ||
| 	* librdf/rdf_list_internal.h: struct
 | ||
| 	librdf_list_iterator_context_s looses the next field.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_list.c:
 | ||
| 	(librdf_storage_list_context_add_statement): Free some fields
 | ||
| 	before freeing the memory the pointers were stored in after
 | ||
| 	errors.
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: The stream to node iterator code was
 | ||
| 	altered to now save the grabbed object node and/or context nodes
 | ||
| 	taken from the shared librdf_stream that it converts so even if
 | ||
| 	the librdf_stream moves on, the librdf_nodes are preserved.
 | ||
| 	(librdf_storage_stream_to_node_iterator_next_method): Delete any
 | ||
| 	saved object/context nodes so they will get refreshed.
 | ||
| 	(librdf_storage_stream_to_node_iterator_get_method): Save
 | ||
| 	object/context nodes after retrieving them from the shared
 | ||
| 	librdf_statement got from the librdf_stream.
 | ||
| 	(librdf_storage_stream_to_node_iterator_finished): Free the new
 | ||
| 	saved node fields.
 | ||
| 	(librdf_storage_node_stream_to_node_create): Copy the node1, node2
 | ||
| 	explicitly rather than fake around with NULLing out them in the
 | ||
| 	librdf_storage_stream_to_node_iterator_finished function.
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c: (main): tests for serialize stream to
 | ||
| 	string/file handle
 | ||
| 
 | ||
| 	* librdf/Makefile.am: add test.rdf to CLEANFILES
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_raptor.c: Removed unused var
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_internal.h: Added factory methods:
 | ||
| 	serialize_stream_to_file_handle,
 | ||
| 	serialize_stream_to_counted_string and
 | ||
| 	serialize_stream_to_iostream
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_raptor.c: (librdf_serializer_raptor_serialize_stream_to_file_handle,
 | ||
| 	librdf_serializer_raptor_serialize_stream_to_counted_string
 | ||
| 	librdf_serializer_raptor_serialize_stream_to_iostream): Added
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c:
 | ||
| 	(librdf_serializer_serialize_stream_to_file_handle,
 | ||
| 	librdf_serializer_serialize_stream_to_file,
 | ||
| 	librdf_serializer_serialize_stream_to_string,
 | ||
| 	librdf_serializer_serialize_stream_to_counted_string
 | ||
| 	librdf_serializer_serialize_stream_to_iostream): Added to satisfy
 | ||
| 	the request in Issue#000092 http://bugs.librdf.org/mantis/view.php?id=92
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.h: Added prototypes for
 | ||
| 	librdf_serializer_serialize_stream_to_file_handle,
 | ||
| 	librdf_serializer_serialize_stream_to_file,
 | ||
| 	librdf_serializer_serialize_stream_to_string,
 | ||
| 	librdf_serializer_serialize_stream_to_counted_string and
 | ||
| 	librdf_serializer_serialize_stream_to_iostream
 | ||
| 
 | ||
| 	* librdf/rdf_parser.c: docs
 | ||
| 
 | ||
| 	* librdf/rdf_parser.c: (main): Add accept header test
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_get_accept_header):
 | ||
| 	fix
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_get_accept_header):
 | ||
| 	Added.
 | ||
| 
 | ||
| 	* librdf/rdf_parser.c: (librdf_parser_get_accept_header): Added.
 | ||
| 
 | ||
| 	* librdf/rdf_parser.h: Added librdf_parser_get_accept_header prototype.
 | ||
| 
 | ||
| 	* librdf/rdf_parser_internal.h: struct librdf_parser_factory_s
 | ||
| 	gains get_accept_header
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_raptor.c:
 | ||
| 	(librdf_serializer_raptor_constructor): Grab and register the
 | ||
| 	label with librdf_serializer_register_factory.
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_internal.h: struct
 | ||
| 	librdf_serializer_factory_s gains label field
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.h: librdf_parser_register_factory gains
 | ||
| 	Add label arg.  Added librdf_serializer_enumerate prototype
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c: Replace world->serializers with
 | ||
| 	raptor_sequence of parsers.
 | ||
| 	(librdf_serializer_register_factory): Add label arg.
 | ||
| 
 | ||
| 	* librdf/rdf_init_internal.h: struct librdf_world_s field
 | ||
| 	serializers is now a raptor_sequence
 | ||
| 
 | ||
| 	* librdf/rdf_init_internal.h: struct librdf_world_s field parsers
 | ||
| 	is now a raptor_sequence
 | ||
| 
 | ||
| 	* librdf/rdf_parser_internal.h: struct librdf_parser_factory_s
 | ||
| 	gains label field.
 | ||
| 
 | ||
| 	* librdf/rdf_parser.h: librdf_parser_register_factory gains Add
 | ||
| 	label arg. Added librdf_parser_enumerate prototype
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_constructor):
 | ||
| 	Grab and register the label with librdf_parser_register_factory.
 | ||
| 
 | ||
| 	* librdf/rdf_parser.c: Replace world->parsers with raptor_sequence
 | ||
| 	of parsers
 | ||
| 	(librdf_parser_register_factory): Add label arg.
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: Less debugging of list iterator changes
 | ||
| 
 | ||
| 2006-10-06  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: cast
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: (test): During an iteration delete the
 | ||
| 	current triple item and the next triple item.
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: Rename iterator_context fields to next_ic,
 | ||
| 	prev_ic. Store next pointer and use that to handle deleting the
 | ||
| 	next item.
 | ||
| 
 | ||
| 	* librdf/rdf_list_internal.h: Rename fields to next_ic, prev_ic
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: Move structs to rdf_list_iternal.h
 | ||
| 
 | ||
| 	* librdf/rdf_list_internal.h: Add iterator contexts
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: Added librdf_list_iterators_replace_node to
 | ||
| 	move iterators past deleted nodes.
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: *** empty log message ***
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: Moved internal structs here.
 | ||
| 	(librdf_list_add_iterator_context,
 | ||
| 	librdf_list_remove_iterator_context): Added.
 | ||
| 	(librdf_list_get_iterator): Add to list of iterators with
 | ||
| 	librdf_list_add_iterator_context on success.
 | ||
| 	(librdf_list_iterator_finished): Remove from list of iterators
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: autodocs
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: autodocs
 | ||
| 
 | ||
| 	* librdf/rdf_list.c: (librdf_free_list): Warn if iterators were
 | ||
| 	running at exit.
 | ||
| 
 | ||
| 	* librdf/rdf_list_internal.h: Add struct librdf_list_iterator_context_s
 | ||
| 
 | ||
| 	* librdf/rdf_internal.h: Remove rdf_list_internal.h
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: statements field is now a dynamic
 | ||
| 	librdf_list*
 | ||
| 
 | ||
| 	* librdf/rdf_heuristics.c: statements field is now a dynamic
 | ||
| 	librdf_list*
 | ||
| 
 | ||
| 	* librdf/rdf_parser.c: (librdf_parser_parse_as_stream,
 | ||
| 	librdf_parser_parse_into_model): Allow NULL base_uri
 | ||
| 	(librdf_parser_parse_string_as_stream,
 | ||
| 	librdf_parser_parse_string_into_model,
 | ||
| 	librdf_parser_parse_counted_string_as_stream,
 | ||
| 	librdf_parser_parse_counted_string_into_model): Allow NULL
 | ||
| 	base_uri, remove assertion failure.
 | ||
| 	(main): Add const and count failures.
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: Changes to allow NULL base uris in
 | ||
| 	parsing, but to fail if it is omitted but required.
 | ||
| 	(librdf_parser_raptor_new_statement_handler): Incoming URIs are
 | ||
| 	always absolute so just use librdf_new_node_from_uri.
 | ||
| 	(librdf_parser_raptor_parse_file_handle_as_stream): Fail if
 | ||
| 	base_uri is NULL but required.
 | ||
| 	(librdf_parser_raptor_parse_as_stream_common): Fail if base_uri is
 | ||
| 	NULL but required.  Report fopen failure as an error.
 | ||
| 	(librdf_parser_raptor_parse_uri_into_model_common): docs allowing
 | ||
| 	NULL base_uri.
 | ||
| 	(librdf_parser_raptor_parse_into_model_common): Fail if base_uri
 | ||
| 	is NULL but required.
 | ||
| 	(librdf_parser_raptor_parse_uri_into_model): docs allowing NULL
 | ||
| 	base_uri.
 | ||
| 
 | ||
| 	* librdf/rdf_heuristics.c: const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c: (librdf_storage_postgresql_hash):
 | ||
| 	Take const type, string.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: (librdf_storage_mysql_hash): Take
 | ||
| 	const type, string.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_hashes.c: const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: (librdf_storage_enumerate): Do not check
 | ||
| 	unsigned int < 0
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c: const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_query_results.c: (librdf_query_results_to_file): log
 | ||
| 	fopen failure error
 | ||
| 
 | ||
| 	* librdf/rdf_query.c: const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: (librdf_model_enumerate): Do not check
 | ||
| 	unsigned int < 0
 | ||
| 
 | ||
| 	* librdf/rdf_log_internal.h: librdf_log prototype takes
 | ||
| 	REDLAND_PRINTF_FORMAT
 | ||
| 
 | ||
| 	* librdf/rdf_hash_internal.h: librdf_hash factory method open Take
 | ||
| 	const identifier. librdf_hash_open prototype changed to take const
 | ||
| 	identifier
 | ||
| 
 | ||
| 	* librdf/rdf_hash_memory.c: (librdf_hash_memory_open): Take const
 | ||
| 	identifier.
 | ||
| 
 | ||
| 	* librdf/rdf_hash_bdb.c: (librdf_hash_bdb_open): Take const identifier.
 | ||
| 
 | ||
| 	* librdf/rdf_hash.h: Change librdf_hash_print_values prototype to
 | ||
| 	take const key_string.
 | ||
| 
 | ||
| 	* librdf/rdf_hash.c: (librdf_hash_open, librdf_hash_print_values):
 | ||
| 	Take const identifier, key_string. const in test data
 | ||
| 
 | ||
| 	* librdf/rdf_digest.c: const in test data
 | ||
| 
 | ||
| 	* librdf/librdf.h: Added REDLAND_PRINT_FORMAT
 | ||
| 
 | ||
| 2006-09-10  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_literal_helper):
 | ||
| 	Move stringbuffer allocation to after sqlite_string_escape so if
 | ||
| 	it fails, no memory is lost.
 | ||
| 	(librdf_storage_sqlite_contains_statement): If
 | ||
| 	librdf_storage_sqlite_statement_operator_helper fails, free the
 | ||
| 	stringbuffer.
 | ||
| 	(librdf_storage_sqlite_context_remove_statement): If
 | ||
| 	librdf_storage_sqlite_statement_operator_helper fails, free the
 | ||
| 	stringbuffer.  Fixes issue #0000116
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=116
 | ||
| 
 | ||
| 2006-09-04  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_serializer.c:
 | ||
| 	(librdf_serializer_serialize_model_to_file): Report an error when
 | ||
| 	failed to fopen to create a file.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c: (librdf_storage_postgresql_hash):
 | ||
| 	Take const char* string arg.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: Add mysql reconnect option
 | ||
| 
 | ||
| 2006-08-26  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: (librdf_new_node_from_blank_identifier): Autodocs
 | ||
| 	Fixes issue#00001114 http://bugs.librdf.org/mantis/view.php?id=114
 | ||
| 
 | ||
| 2006-08-20  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_internal.h: tweak debug macros
 | ||
| 
 | ||
| 2006-08-16  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	*
 | ||
| 	librdf/rdf_storage.c: (librdf_storage_context_remove_statements):
 | ||
| 	Doc fix
 | ||
| 
 | ||
| 2006-08-11  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_query_rasqal.c: (rasqal_redland_new_triples_source):
 | ||
| 	Do not die if a sequence of data graphs is found, instead empty
 | ||
| 	the sequence of data graphs.
 | ||
| 
 | ||
| 2006-07-29  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_heuristics.c, librdf/rdf_heuristics.h: Add some more
 | ||
| 	const fixes.  Fixes Issue #0000107
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=107
 | ||
| 
 | ||
| 	* librdf/rdf_init_internal.h: struct librdf_world_s gains
 | ||
| 	raptor_sequence of models
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: Switch to a raptor_sequence of models.
 | ||
| 	(librdf_finish_model): Use raptor_free_sequence.
 | ||
| 	(librdf_delete_model_factories): Deleted.
 | ||
| 	(librdf_free_model_factory): Added helper for raptor_free_sequence.
 | ||
| 	(librdf_model_register_factory, librdf_get_model_factory): Switch
 | ||
| 	to use sequences.
 | ||
| 	(librdf_model_enumerate): Added.
 | ||
| 
 | ||
| 	* librdf/rdf_model.h: Added librdf_model_enumerate
 | ||
| 
 | ||
| 	* librdf/rdf_model_storage.c: (librdf_init_model_storage): Update
 | ||
| 	for librdf_model_register_factory world arg.
 | ||
| 
 | ||
| 	* librdf/rdf_model_internal.h: struct librdf_model_factory_s loses
 | ||
| 	world, next fields, gains label. librdf_model_register_factory
 | ||
| 	gains label field librdf_get_model_factory gains world field
 | ||
| 
 | ||
| 	* librdf/rdf_storage.h: librdf_storage_enumerate gains world args.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_internal.h: librdf_get_storage_factory gains
 | ||
| 	world args.
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: (librdf_get_storage_factory,
 | ||
| 	librdf_storage_enumerate): Add world args.
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: Switch to a raptor_sequence of storages.
 | ||
| 	(librdf_init_storage): Re-order, first thing registered is the default.
 | ||
| 	(librdf_finish_storage): Use raptor_free_sequence.
 | ||
| 	(librdf_delete_storage_factories): Deleted.
 | ||
| 	(librdf_free_storage_factory): Added helper for raptor_free_sequence.
 | ||
| 	(librdf_storage_register_factory, librdf_get_storage_factory,
 | ||
| 	librdf_storage_enumerate): Switch to use sequences.
 | ||
| 
 | ||
| 	* librdf/rdf_init_internal.h: (struct librdf_world_s): Add
 | ||
| 	raptor_sequence of storages
 | ||
| 
 | ||
| 	* librdf/rdf_storage_internal.h: (struct
 | ||
| 	librdf_storage_factory_s): Lose world and next fields.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_context_remove_statements):
 | ||
| 	Remove unused vars
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c:
 | ||
| 	(librdf_storage_sqlite_context_remove_statements): Added.
 | ||
| 	Fixes Issue #0000103
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=103
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: Wrap all sqlite_FREE calls on error
 | ||
| 	messages so that they are only called with SQLITE API v2.
 | ||
| 	Fixes Issue #0000105
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=105
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c:
 | ||
| 	(librdf_storage_postgresql_add_statements): Use
 | ||
| 	librdf_storage_postgresql_context_add_statements. 
 | ||
| 	(librdf_storage_postgresql_context_add_statements): Add check for
 | ||
| 	adding duplicate statements and remove the check when in bulk mode.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c:
 | ||
| 	(librdf_storage_mysql_add_statements): Use
 | ||
| 	librdf_storage_mysql_context_add_statements.
 | ||
| 	(librdf_storage_mysql_context_add_statements): Add check for
 | ||
| 	adding duplicate statements and remove the check when in bulk mode.
 | ||
| 
 | ||
| 2006-07-11  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: cast
 | ||
| 
 | ||
| 2006-07-05  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_hash.c, librdf/rdf_heuristics.c,
 | ||
| 	librdf/rdf_iterator.c, librdf/rdf_model.c, librdf/rdf_node.c,
 | ||
| 	librdf/rdf_parser.c, librdf/rdf_query.c, librdf/rdf_serializer.c,
 | ||
| 	librdf/rdf_statement.c, librdf/rdf_storage.c, librdf/rdf_stream.c,
 | ||
| 	librdf/rdf_uri.c, librdf/rdf_utf8.c: (main): More const decls for
 | ||
| 	program.
 | ||
| 
 | ||
| 2006-07-04  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_digest.c: (main): Revalidate digest answers
 | ||
| 
 | ||
| 	* librdf/rdf_digest.c, librdf/rdf_hash.c, librdf/rdf_heuristics.c,
 | ||
| 	librdf/rdf_iterator.c, librdf/rdf_node.c, librdf/rdf_parser.c,
 | ||
| 	librdf/rdf_query.c, librdf/rdf_serializer.c,
 | ||
| 	librdf/rdf_statement.c, librdf/rdf_storage_internal.h,
 | ||
| 	librdf/rdf_stream.c, librdf/rdf_uri.c, librdf/rdf_utf8.c: Fixes
 | ||
| 	for calls to librdf_basename in unit tests
 | ||
| 
 | ||
| 	* librdf/rdf_storage_file.c: Add const for some char* args:
 | ||
| 	(librdf_storage_file_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage_sqlite.c: Add const for some char* args:
 | ||
| 	(librdf_storage_sqlite_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage_tstore.c: Add const for some char* args:
 | ||
| 	(librdf_storage_tstore_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: Add const for some char* args:
 | ||
| 	(librdf_storage_mysql_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage_list.c: Add const for some char* args:
 | ||
| 	(librdf_storage_list_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c: Add const for some char* args:
 | ||
| 	(librdf_storage_postgresql_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_init.c: Added string.h and (protected by
 | ||
| 	HAVE_UNISTD_H) unistd.h headers
 | ||
| 
 | ||
| 	* librdf/rdf_storage_hashes.c: Add const for some char* args:
 | ||
| 	(librdf_storage_hashes_register): argument name
 | ||
| 	(librdf_storage_hashes_register): argument name
 | ||
| 	(librdf_storage_hashes_init): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: Add const for some char* args:
 | ||
| 	(librdf_new_storage): argument storage_name
 | ||
| 	(librdf_new_storage_with_options): arguments storage_name, name
 | ||
| 	(librdf_new_storage_from_factory): argument name
 | ||
| 
 | ||
| 	* librdf/rdf_storage.h: Add const for some char* args:
 | ||
| 	librdf_new_storage argument storage_name
 | ||
| 	librdf_new_storage_with_options arguments storage_name, name
 | ||
| 	librdf_new_storage_from_factory argument name
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: Update to add const for some char* args:
 | ||
| 	(librdf_new_model): argument options_string
 | ||
| 	(librdf_model_add_string_literal_statement): argument xml_language
 | ||
| 	(librdf_model_add_typed_literal_statement): argument xml_language
 | ||
| 
 | ||
| 	* librdf/rdf_digest.h: Add const for some char* args:
 | ||
| 	librdf_new_digest argument name
 | ||
| 
 | ||
| 	* librdf/rdf_model.h: Add const for some char* args:
 | ||
| 	librdf_new_model argument options_string
 | ||
| 	librdf_model_add_string_literal_statement argument xml_language
 | ||
| 	librdf_model_add_typed_literal_statement argument xml_language
 | ||
| 
 | ||
| 	* librdf/rdf_log.c: (librdf_log_simple): Handle attempting to
 | ||
| 	fputs a NULL message.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_hashes.c: (librdf_storage_hashes_init_common):
 | ||
| 	Do not free any options here.
 | ||
| 	(librdf_storage_hashes_open): Free any options after passing them
 | ||
| 	to librdf_hash_open
 | ||
| 
 | ||
| 	* librdf/rdf_digest.c: (main): Count failures in digest checks and
 | ||
| 	return them in the return.
 | ||
| 
 | ||
| 	* librdf/rdf_digest.c, librdf/rdf_hash.c, librdf/rdf_heuristics.c,
 | ||
| 	librdf/rdf_iterator.c, librdf/rdf_model.c, librdf/rdf_node.c,
 | ||
| 	librdf/rdf_parser.c, librdf/rdf_query.c, librdf/rdf_serializer.c,
 | ||
| 	librdf/rdf_statement.c, librdf/rdf_storage.c, librdf/rdf_stream.c,
 | ||
| 	librdf/rdf_uri.c, librdf/rdf_utf8.c: use librdf_basename
 | ||
| 
 | ||
| 	* librdf/rdf_init.h: Added internal prototype for librdf_basename
 | ||
| 
 | ||
| 	* librdf/rdf_init.c: (librdf_basename): Added
 | ||
| 
 | ||
| 2006-07-03  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c: make it legal C again
 | ||
| 
 | ||
| 2006-07-02  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_query_rasqal.c: (rasqal_redland_bind_match): Tidy
 | ||
| 	docs and make the graph field (aka origin) match redland context.
 | ||
| 	(rasqal_redland_init_triples_match): If a context node is given,
 | ||
| 	use librdf_model_find_statements_in_context
 | ||
| 
 | ||
| 2006-06-30  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c:
 | ||
| 	(librdf_storage_postgresql_init): Use option 'database' like mysql
 | ||
| 	does as well as 'dbname'.  If neither is present, allocate memory
 | ||
| 	for copying the user name rather than use a shared pointer.
 | ||
| 
 | ||
| 2006-06-29  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_serializer_raptor.c: remove ORDINAL code comment
 | ||
| 	references
 | ||
| 
 | ||
| 2006-06-18  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_storage.c: (librdf_storage_add_statement,
 | ||
| 	librdf_storage_add_statements, librdf_storage_contains_statement):
 | ||
| 	Document and enforce that only legal RDF triples are only allowed.
 | ||
| 
 | ||
| 	* librdf/rdf_statement.c: (librdf_statement_is_complete): Document
 | ||
| 	and enforce that only complete and legal RDF triples are only
 | ||
| 	allowed.
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: (librdf_model_add_statement,
 | ||
| 	librdf_model_add, librdf_model_add_typed_literal_statement,
 | ||
| 	librdf_model_add_string_literal_statement,
 | ||
| 	librdf_model_contains_statement): Document and enforce legal RDF
 | ||
| 	triples are only allowed.
 | ||
| 
 | ||
| 2006-06-05  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_model.c: docucomments typos
 | ||
| 
 | ||
| 2006-05-05  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/win32_rdf_config.h: bumped to 1.0.4
 | ||
| 
 | ||
| 2006-05-03  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_error_handler,
 | ||
| 	librdf_parser_raptor_warning_handler): Context is a now a
 | ||
| 	librdf_parser_raptor_context not a transient stream context.
 | ||
| 	(librdf_parser_raptor_parse_file_handle_as_stream,
 | ||
| 	librdf_parser_raptor_parse_as_stream_common,
 | ||
| 	librdf_parser_raptor_parse_into_model_common): Set parser factory
 | ||
| 	context to be raptor error context.
 | ||
| 
 | ||
| 	* librdf/rdf_utf8.c: Revert change to use
 | ||
| 	raptor_utf8_to_unicode_char - it breaks since unsigned long in
 | ||
| 	raptor != librdf_unichar / u32 in librdf for all archs.
 | ||
| 
 | ||
| 2006-05-02  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_utf8.c: (librdf_utf8_to_unicode_char,
 | ||
| 	librdf_utf8_to_latin1, librdf_utf8_print, main): Use
 | ||
| 	raptor_utf8_to_unicode_char.
 | ||
| 
 | ||
| 	* librdf/rdf_node.c: (librdf_new_node_from_literal,
 | ||
| 	librdf_new_node_from_typed_literal): An empty language string is
 | ||
| 	equivalent to a NULL pointer.  This makes calling this slightly
 | ||
| 	easier from higher-level languages.
 | ||
| 
 | ||
| 2006-04-24  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_uri.c: (librdf_uri_is_file_uri): Replace raptor
 | ||
| 	1.4.9-deprecated raptor_uri_is_file_uri with
 | ||
| 	raptor_uri_uri_string_is_file_uri
 | ||
| 
 | ||
| 	* librdf/rdf_files.c: (main): Remove test for deprecated function.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_postgresql.c: Use UINT64_T_FMT instead of
 | ||
| 	%llu for portability.
 | ||
| 	(librdf_storage_postgresql_init): Use escaped_name in query.
 | ||
| 
 | ||
| 	* librdf/rdf_storage_mysql.c: Use UINT64_T_FMT instead of %llu for
 | ||
| 	portability.
 | ||
| 	(librdf_storage_mysql_init): Use escaped_name in query.
 | ||
| 
 | ||
| 	* librdf/rdf_types.h: Define UINT64_T_FMT with the portable
 | ||
| 	sprintf formatting for a 64-bit unsigned int %I64u on win32,
 | ||
| 	%llu (gcc) elsewhere.
 | ||
| 
 | ||
| 2006-03-27  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/win32/librdf.vcproj: redland win32 build files update
 | ||
| 	from John Barstow
 | ||
| 
 | ||
| 	* librdf/win32_rdf_config.h: redland win32 build files update from
 | ||
| 	John Barstow
 | ||
| 
 | ||
| 	* librdf/rdf_init.c: Protect #include <unistd.h> with defines as
 | ||
| 	elsewhere
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_new_statement_handler):
 | ||
| 	Allow RAPTOR_IDENTIFIER_TYPE_RESOURCE and
 | ||
| 	RAPTOR_IDENTIFIER_TYPE_PREDICATE raptor predicate types again.
 | ||
| 
 | ||
| 2006-03-18  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/Makefile.am: fix make libraptor.la & librasqal.la rules
 | ||
| 
 | ||
| 
 | ||
| 	* librdf/rdf_query.c: (main): Cast for size_t
 | ||
| 
 | ||
| 2006-03-09  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: Add close_fh flag to
 | ||
| 	librdf_parser_raptor_stream_context to manage tidying up a FILE*.
 | ||
| 	(librdf_parser_raptor_parse_file_handle_as_stream): Added close_fh
 | ||
| 	flag to ask for fclose(fh) on exit.
 | ||
| 	(librdf_parser_raptor_parse_as_stream_common): Do not fclose(fh)
 | ||
| 	before it actually likely gets read.
 | ||
| 	(librdf_parser_raptor_serialise_finished): fclose(fh) here if
 | ||
| 	asked for.
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_parse_file_handle_as_stream):
 | ||
| 	Work with NULL base_uri.
 | ||
| 
 | ||
| 2006-03-02  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_log.h, librdf/rdf_serializer.h,
 | ||
| 	librdf/rdf_serializer_internal.h: Include raptor.h when raptor
 | ||
| 	definitions are used in headers
 | ||
| 
 | ||
| 2006-02-19  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/rdf_parser_raptor.c: (librdf_parser_raptor_get_next_statement):
 | ||
| 	Remove bad use of fclose() on a FILE* not opened here.
 | ||
| 
 | ||
| 2006-02-15  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* librdf/win32_rdf_config.h: Bumped version to 1.0.4
 | ||
| 
 | ||
| 	* librdf/redland.spec.in: disable postgresql for now
 | ||
| 
 | ||
| 	* librdf/redland.spec.in: require postgresql-devel
 | ||
| 
 | ||
| 	* librdf/redland.spec.in: require db4-devel
 | ||
| 
 | ||
| 2006-02-11  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_new_node_from_literal,
 | ||
| 	librdf_new_node_from_typed_literal): Fail if both a datatype
 | ||
| 	URI/datatype flag and a language is given.  Fixes issue 0000069
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=69
 | ||
| 	(main): Add tests for this.
 | ||
| 	
 | ||
| 	* rdf_digest_sha1.c (librdf_digest_sha1_constructor): Fix over
 | ||
| 	eager docstring fix.
 | ||
| 
 | ||
| 	* rdf_digest_md5.c (librdf_digest_md5_constructor): Fix over eager
 | ||
| 	docstring fix.
 | ||
| 
 | ||
| 2006-01-26  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* Makefile.am, rdf_storage.c, rdf_storage_internal.h,
 | ||
| 	rdf_storage_postgresql.c: Added PostgreSQL storage backend
 | ||
| 	contributed by Shi Wenzhong based on the MySQL backend.  Fixes
 | ||
| 	issue 0000046 http://bugs.librdf.org/mantis/view.php?id=46
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: 2006
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_world_get_genid): Include process ID in
 | ||
| 	generated blank ID .  Fixes bug 0000037
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=37
 | ||
| 	(patch from Marc Powell)
 | ||
| 
 | ||
| 	* rdf_model.c (main): Update test serialization length
 | ||
| 
 | ||
| 	* Makefile.am, librdf.h, rdf_concepts.c, rdf_concepts.h,
 | ||
| 	rdf_concepts_internal.h, rdf_digest.c, rdf_digest.h,
 | ||
| 	rdf_digest_internal.h, rdf_digest_md5.c, rdf_digest_openssl.c,
 | ||
| 	rdf_digest_sha1.c, rdf_files.c, rdf_files.h, rdf_hash.c,
 | ||
| 	rdf_hash.h, rdf_hash_bdb.c, rdf_hash_cursor.c,
 | ||
| 	rdf_hash_internal.h, rdf_hash_memory.c, rdf_heuristics.c,
 | ||
| 	rdf_heuristics.h, rdf_init.h, rdf_init_internal.h, rdf_internal.h,
 | ||
| 	rdf_iterator.c, rdf_iterator.h, rdf_iterator_internal.h,
 | ||
| 	rdf_list.c, rdf_list.h, rdf_list_internal.h, rdf_log_internal.h,
 | ||
| 	rdf_model.c, rdf_model_internal.h, rdf_model_storage.c,
 | ||
| 	rdf_node.c, rdf_node_internal.h, rdf_parser.c,
 | ||
| 	rdf_parser_internal.h, rdf_parser_raptor.c, rdf_query.c,
 | ||
| 	rdf_query.h, rdf_query_internal.h, rdf_query_rasqal.c,
 | ||
| 	rdf_query_results.c, rdf_query_triples.c, rdf_serializer.c,
 | ||
| 	rdf_serializer.h, rdf_serializer_internal.h,
 | ||
| 	rdf_serializer_raptor.c, rdf_statement.c, rdf_statement.h,
 | ||
| 	rdf_statement_internal.h, rdf_storage.c, rdf_storage.h,
 | ||
| 	rdf_storage_file.c, rdf_storage_hashes.c, rdf_storage_internal.h,
 | ||
| 	rdf_storage_list.c, rdf_storage_mysql.c, rdf_storage_sqlite.c,
 | ||
| 	rdf_storage_tstore.c, rdf_stream.c, rdf_stream.h,
 | ||
| 	rdf_stream_internal.h, rdf_types.h, rdf_uri.c, rdf_uri.h,
 | ||
| 	rdf_uri_internal.h, rdf_utf8.c, rdf_utf8.h, redland.h,
 | ||
| 	win32_rdf_config.h: 2006
 | ||
| 
 | ||
| 	* librdf.h, rdf_statement.h, rdf_utf8.h: autodocs
 | ||
| 
 | ||
| 2006-01-25  Dave Beckett  <dave@dajobe.org>
 | ||
| 
 | ||
| 	* rdf_init.c, rdf_init.h, rdf_parser.h: autodocs
 | ||
| 
 | ||
| 	* rdf_init.h: Removed never-existed function prototype
 | ||
| 	librdf_world_set_uris_hash
 | ||
| 
 | ||
| 	* rdf_query_results.c, rdf_node.c, rdf_stream.h, rdf_node.h,
 | ||
| 	rdf_storage.c: autodocs
 | ||
| 
 | ||
| 	* rdf_storage.h: Removed never-existed function prototype
 | ||
| 	librdf_storage_get
 | ||
| 
 | ||
| 	* rdf_init.c, rdf_log.h, rdf_log.c, rdf_iterator.h: autodocs
 | ||
| 
 | ||
| 	* rdf_iterator.h: Removed never-existed function prototype
 | ||
| 	librdf_iterator_finished
 | ||
| 
 | ||
| 	* rdf_stream.c, rdf_uri.c, rdf_statement.c, rdf_storage.c,
 | ||
| 	rdf_query_results.c, rdf_parser.c, rdf_query.c,
 | ||
| 	rdf_model_storage.c, rdf_node.c, rdf_model.c, rdf_iterator.c,
 | ||
| 	rdf_list.c, rdf_hash.c, rdf_hash_cursor.c, rdf_digest.c: autodocs
 | ||
| 
 | ||
| 	* rdf_files.h: Deprecated librdf_files_temporary_file_name
 | ||
| 
 | ||
| 	* rdf_files.c (librdf_files_temporary_file_name): Deprecated +
 | ||
| 	autodocs
 | ||
| 
 | ||
| 	* rdf_concepts.h, rdf_model.h: autodocs
 | ||
| 
 | ||
| 2005-09-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c
 | ||
| 	(librdf_parser_raptor_parse_file_handle_as_stream): Renamed from
 | ||
| 	librdf_parser_raptor_parse_file_as_stream and use FILE* arg.
 | ||
| 	(librdf_parser_raptor_parse_as_stream_common): Update to handle
 | ||
| 	rename.
 | ||
| 
 | ||
| 	* rdf_serializer_internal.h: struct librdf_serializer_factory_s
 | ||
| 	gains serialize_model_to_iostream method.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_iostream): Added to
 | ||
| 	write to a raptor_iostream object.
 | ||
| 
 | ||
| 	* rdf_serializer.c
 | ||
| 	(librdf_serializer_serialize_model_to_iostream): Added to write to
 | ||
| 	a raptor_iostream object.
 | ||
| 
 | ||
| 	* rdf_serializer.h: Added
 | ||
| 	librdf_serializer_serialize_model_to_iostream
 | ||
| 
 | ||
| 2005-08-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.spec.in: - Update Source: - Do not require python-devel
 | ||
| 	at build time - Add sqlite-devel build requirement.  - Use
 | ||
| 	%configure and %makeinstall
 | ||
| 
 | ||
| 2005-07-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: adjust source of librasqal.la
 | ||
| 
 | ||
| 2005-07-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.spec.in: date typo
 | ||
| 
 | ||
| 2005-07-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_concepts.h: Move some docs into the sgml template
 | ||
| 
 | ||
| 	* redland.spec.in: Updated for gtk-doc locations
 | ||
| 
 | ||
| 	* rdf_concepts.h: docs
 | ||
| 
 | ||
| 	* rdf_serializer.c, rdf_parser.c: docucomment @Deprecated tags
 | ||
| 
 | ||
| 2005-07-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Remove 1-function headers from dist
 | ||
| 
 | ||
| 	* rdf_node.h: removed librdf_node_init - has no code
 | ||
| 
 | ||
| 	* rdf_uri.c (librdf_uri_print): xml fix
 | ||
| 
 | ||
| 	* rdf_node.h: librdf_node_init removed - in header only
 | ||
| 
 | ||
| 	* rdf_node.c, rdf_query_results.c: More fixes for gtkdoc
 | ||
| 
 | ||
| 	* rdf_concepts.c, rdf_digest.c, rdf_digest.h, rdf_digest_md5.c,
 | ||
| 	rdf_digest_openssl.c, rdf_digest_sha1.c, rdf_hash.c, rdf_hash.h,
 | ||
| 	rdf_hash_bdb.c, rdf_hash_cursor.c, rdf_hash_memory.c,
 | ||
| 	rdf_heuristics.c, rdf_init.c, rdf_init.h, rdf_iterator.c,
 | ||
| 	rdf_iterator.h, rdf_list.c, rdf_log.c, rdf_log.h, rdf_model.c,
 | ||
| 	rdf_model.h, rdf_model_storage.c, rdf_node.c, rdf_node.h,
 | ||
| 	rdf_parser.c, rdf_parser.h, rdf_parser_raptor.c, rdf_query.c,
 | ||
| 	rdf_query.h, rdf_query_results.c, rdf_query_triples.c,
 | ||
| 	rdf_serializer.c, rdf_serializer.h, rdf_serializer_raptor.c,
 | ||
| 	rdf_statement.c, rdf_statement.h, rdf_storage.c, rdf_storage.h,
 | ||
| 	rdf_storage_hashes.c, rdf_storage_list.c, rdf_storage_mysql.c,
 | ||
| 	rdf_storage_sqlite.c, rdf_storage_tstore.c, rdf_stream.c,
 | ||
| 	rdf_stream.h, rdf_uri.c, rdf_uri.h, rdf_utf8.c: Automated
 | ||
| 	docucomments updates for gtk-doc
 | ||
| 
 | ||
| 	* rdf_concepts_internal.h, rdf_digest_internal.h,
 | ||
| 	rdf_hash_internal.h, rdf_iterator_internal.h, rdf_list_internal.h,
 | ||
| 	rdf_log_internal.h, rdf_model_internal.h, rdf_node_internal.h,
 | ||
| 	rdf_query_internal.h, rdf_serializer_internal.h,
 | ||
| 	rdf_statement_internal.h, rdf_storage_internal.h,
 | ||
| 	rdf_stream_internal.h, rdf_uri_internal.h: Comment words.
 | ||
| 
 | ||
| 	* rdf_list_internal.h: Remove some calls to public headers that
 | ||
| 	are in redland.h also.
 | ||
| 
 | ||
| 	* Makefile.am: Added more internal headers
 | ||
| 
 | ||
| 	* librdf.h, rdf_concepts.h, rdf_digest.h, rdf_hash.c, rdf_hash.h,
 | ||
| 	rdf_hash_bdb.c, rdf_hash_memory.c, rdf_init.h, rdf_internal.h,
 | ||
| 	rdf_iterator.h, rdf_list.h, rdf_log.h, rdf_model.h,
 | ||
| 	rdf_model_storage.h, rdf_node.h, rdf_parser.h, rdf_query.h,
 | ||
| 	rdf_serializer.h, rdf_statement.h, rdf_storage.h,
 | ||
| 	rdf_storage_hashes.c, rdf_stream.h, rdf_uri.h: Use
 | ||
| 	rdf_MODULE_internal.h headers.
 | ||
| 
 | ||
| 	* rdf_concepts_internal.h, rdf_digest_internal.h,
 | ||
| 	rdf_hash_internal.h, rdf_iterator_internal.h, rdf_list_internal.h,
 | ||
| 	rdf_log_internal.h, rdf_model_internal.h, rdf_node_internal.h,
 | ||
| 	rdf_parser_internal.h, rdf_query_internal.h,
 | ||
| 	rdf_serializer_internal.h, rdf_statement_internal.h,
 | ||
| 	rdf_storage_internal.h, rdf_stream_internal.h: Added
 | ||
| 	rdf_MODULE_internal.h headers.
 | ||
| 
 | ||
| 	* rdf_hash_bdb.h, rdf_hash_memory.h, rdf_storage_hashes.h,
 | ||
| 	rdf_storage_list.h: delete 1 function headers
 | ||
| 
 | ||
| 	* Makefile.am: Added rdf_init_internal.h rdf_uri_internal.h
 | ||
| 
 | ||
| 	* librdf.h, rdf_concepts.c, rdf_digest.c, rdf_digest_md5.c,
 | ||
| 	rdf_digest_sha1.c, rdf_hash.c, rdf_hash_bdb.c, rdf_hash_cursor.c,
 | ||
| 	rdf_hash_memory.c, rdf_init.c, rdf_init.h, rdf_init_internal.h,
 | ||
| 	rdf_internal.h, rdf_iterator.c, rdf_list.c, rdf_log.c,
 | ||
| 	rdf_model.c, rdf_model.h, rdf_model_storage.c, rdf_node.c,
 | ||
| 	rdf_parser.c, rdf_parser_raptor.c, rdf_query.c,
 | ||
| 	rdf_query_results.c, rdf_query_triples.c, rdf_serializer.c,
 | ||
| 	rdf_serializer_raptor.c, rdf_statement.c, rdf_storage.c,
 | ||
| 	rdf_storage_hashes.c, rdf_storage_list.c, rdf_storage_mysql.c,
 | ||
| 	rdf_storage_sqlite.c, rdf_storage_tstore.c, rdf_stream.c,
 | ||
| 	rdf_uri.c, rdf_uri.h, rdf_uri_internal.h, rdf_utf8.c: Updates for
 | ||
| 	gtk-doc.  Pull out internal headers.
 | ||
| 
 | ||
| 2005-07-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_concepts.c: death to M&S for xml docs
 | ||
| 
 | ||
| 2005-07-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c: Unbreak 3store backend from not compiling.
 | ||
| 
 | ||
| 2005-06-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: win32 fixes from John Barstow.
 | ||
| 
 | ||
| 2005-06-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_hash.c: Ignore fwrite return values (gcc4 warning).  It's
 | ||
| 	not like anyone ever checks fprintf, fputs either...
 | ||
| 
 | ||
| 	* rdf_storage_list.c: remove librdf_node_encode2
 | ||
| 
 | ||
| 	* redland.spec.in: License not Copyright header
 | ||
| 
 | ||
| 2005-06-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_stream.c, rdf_storage_tstore.c, rdf_storage_sqlite.c,
 | ||
| 	rdf_storage_mysql.c, rdf_storage_list.c, rdf_storage_hashes.c,
 | ||
| 	rdf_storage.c, rdf_statement.c, rdf_serializer_raptor.c,
 | ||
| 	rdf_query_rasqal.c, rdf_query.c, rdf_parser_raptor.c, rdf_list.c,
 | ||
| 	rdf_hash_memory.c, rdf_hash_bdb.c, rdf_hash.c: Remove \n from the
 | ||
| 	end of log messages.
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_encode): Give an error when a node
 | ||
| 	cannot be encoded due to string data being too long.  Remove
 | ||
| 	legacy 0.9.12+ #if-defed out encoding code.  It remains in
 | ||
| 	librdf_node_decode.
 | ||
| 
 | ||
| 2005-06-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Bumped version to 1.0.3
 | ||
| 
 | ||
| 2005-06-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_stream.c (librdf_free_stream): Only call finished_method if
 | ||
| 	it exists.  This likely caused crashes with empty iterators
 | ||
| 
 | ||
| 2005-05-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Bumped version to 1.0.2
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: remove errbuff
 | ||
| 
 | ||
| 2005-05-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: Define mysql common symbol errbuff if
 | ||
| 	NEED_MYSQL_ERRBUFF defined.
 | ||
| 
 | ||
| 2005-05-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Added COMPILE_LINK rule for making tests in one step.
 | ||
| 
 | ||
| 	* rdf_digest_sha1.c (SHA1Transform): Take const buffer
 | ||
| 
 | ||
| 	* rdf_digest_md5.c: duplicate const
 | ||
| 
 | ||
| 	* rdf_hash.c: docs
 | ||
| 
 | ||
| 	* rdf_uri.c (librdf_uri_get_digest): No need to call
 | ||
| 	librdf_digest_init as the constructor does that.
 | ||
| 
 | ||
| 	* rdf_digest.c: Docs.
 | ||
| 	(librdf_new_digest_from_factory): Call init factory method here.
 | ||
| 	(librdf_digest_init): Note this is a re-init.
 | ||
| 
 | ||
| 	* rdf_digest.c (librdf_digest_update_string): Added.
 | ||
| 
 | ||
| 	* rdf_digest.h: Added prototype for librdf_digest_update_string
 | ||
| 
 | ||
| 	* rdf_digest_sha1.c, rdf_digest_openssl.c, rdf_digest_md5.c:
 | ||
| 	Update the factory method to take a const buffer.
 | ||
| 
 | ||
| 	* rdf_digest.c (librdf_digest_get_digest_length): Added.
 | ||
| 
 | ||
| 	* rdf_digest.h: Factory method update takes const buffer.  Reduced
 | ||
| 	public API removing methods mentioning librdf_digest_factory.
 | ||
| 	Added prototype for librdf_digest_get_digest_length
 | ||
| 
 | ||
| 	* rdf_hash.c (librdf_hash_get_as_boolean, librdf_hash_get_as_long
 | ||
| 	librdf_hash_get_del): Take const key args
 | ||
| 
 | ||
| 	* rdf_hash.h: Make librdf_hash_get_as_boolean,
 | ||
| 	librdf_hash_get_as_long and librdf_hash_get_del take const key
 | ||
| 	args
 | ||
| 
 | ||
| 	* rdf_hash.c:
 | ||
| 	(librdf_new_hash_from_string,
 | ||
| 	librdf_new_hash_from_array_of_strings): return NULL if inner
 | ||
| 	constructor fails.
 | ||
| 
 | ||
| 	* rdf_hash.h: Make public API smaller; do not mention
 | ||
| 	librdf_hash_factory or librdf_hash_datum.  Added prototypes for
 | ||
| 	new public constructors librdf_new_hash_from_string and
 | ||
| 	librdf_new_hash_from_array_of_strings
 | ||
| 
 | ||
| 	* rdf_hash.c: (librdf_new_hash_from_string,
 | ||
| 	librdf_new_hash_from_array_of_strings): Added constructors around
 | ||
| 	internal functions for use by public API.
 | ||
| 	(librdf_hash_from_array_of_strings): Take const array.
 | ||
| 	(main): Update for const args.
 | ||
| 
 | ||
| 	* win32/README.txt: Add win32 README.txt
 | ||
| 
 | ||
| 2005-05-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_digest.h, rdf_hash.h, rdf_internal.h, librdf.h: The changes
 | ||
| 	below fix Issue #0000019 http://bugs.librdf.org/mantis/view.php?id=19
 | ||
| 	by making the hash and digest classes part of the public API.
 | ||
| 	
 | ||
| 	* Makefile.am, rdf_internal.h, librdf.h:
 | ||
| 	Add rdf_digest.h and rdf_hash.h to public includes.
 | ||
| 
 | ||
| 	* rdf_digest.h, rdf_hash.h: Make API public, declare with
 | ||
| 	REDLAND_API
 | ||
| 
 | ||
| 	* rdf_digest.h, rdf_hash.h: Moved class init/finish methods into
 | ||
| 	internal
 | ||
| 
 | ||
| 	* rdf_query.c: (main) option of memory/disk test and comments
 | ||
| 
 | ||
| 	* rdf_model.c: (main) comments
 | ||
| 
 | ||
| 	* Makefile.am: clean any sqlite test file
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: The change below
 | ||
| 	fixes Issue #0000006 - http://bugs.librdf.org/mantis/view.php?id=6
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_serialise): Do not
 | ||
| 	free query stringbuffer before reporting error.
 | ||
| 	(librdf_storage_sqlite_serialise_next_statement): Finish if
 | ||
| 	failed.
 | ||
| 	(librdf_storage_sqlite_find_statements): Restructure need_and code
 | ||
| 	and fix AND string count.  Do not free query stringbuffer before
 | ||
| 	reporting error.
 | ||
| 	(librdf_storage_sqlite_find_statements_end_of_stream): Do not read
 | ||
| 	an extra statement when testing for end, only if there is no
 | ||
| 	current statement.
 | ||
| 	(librdf_storage_sqlite_find_statements_next_statement): Finish if
 | ||
| 	failed.
 | ||
| 	(librdf_storage_sqlite_context_serialise): Do not free query
 | ||
| 	stringbuffer before reporting error.
 | ||
| 	(librdf_storage_sqlite_context_serialise_end_of_stream): Do not
 | ||
| 	read an extra context when testing for end, only if there is no
 | ||
| 	current context.
 | ||
| 	(librdf_storage_sqlite_context_serialise_next_statement): Finish
 | ||
| 	if failed.
 | ||
| 	(librdf_storage_sqlite_get_contexts_is_end): Do not read an extra
 | ||
| 	context when testing for end, only if there is no current context.
 | ||
| 	(librdf_storage_sqlite_get_contexts_next_method): Finish if
 | ||
| 	failed.
 | ||
| 	(librdf_storage_sqlite_get_contexts): Do not free query
 | ||
| 	stringbuffer before reporting error.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c
 | ||
| 	(librdf_storage_sqlite_serialise_end_of_stream): Do not read an
 | ||
| 	extra statement when testing for end, only if there is no current
 | ||
| 	statement.
 | ||
| 
 | ||
| 2005-05-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Added win32 subdir
 | ||
| 
 | ||
| 	* win32/msvc.def, win32/Makefile.am, win32/librdf.vcproj:
 | ||
| 	Import configuration from John Barstow
 | ||
| 
 | ||
| 	* rdf_internal.h: Added REDLAND_INLINE
 | ||
| 
 | ||
| 	* librdf.h: REDLAND_API before public statics
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Added REDLAND_INLINE
 | ||
| 	Defines updated for win32 (John Barstow)
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_supports_contexts): Use REDLAND_INLINE
 | ||
| 
 | ||
| 2005-05-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_log.h: Added LIBRDF_FROM_MEMORY
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_sign_malloc, librdf_sign_calloc,
 | ||
| 	librdf_sign_realloc, librdf_sign_free): Added for signed memory
 | ||
| 	checking.
 | ||
| 
 | ||
| 	* rdf_internal.h: Added signed memory functions
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c, rdf_storage_mysql.c, rdf_storage_list.c,
 | ||
| 	rdf_storage_hashes.c, rdf_storage.c: Revert returning an empty
 | ||
| 	iterator on failure to create an inner iterator, which is caused
 | ||
| 	only by out of memory.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_serialise): Return empty
 | ||
| 	stream if list iterator ends.
 | ||
| 	(librdf_storage_list_context_serialise): Return empty stream if
 | ||
| 	contexts hash iterator ends.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_serialise_common):
 | ||
| 	Return empty stream if hash iterator ends.
 | ||
| 	(librdf_storage_hashes_context_serialise): Return empty stream if
 | ||
| 	contexts hash iterator ends.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_find_statements_in_context): Return
 | ||
| 	empty stream if context_as_stream returns nULL
 | ||
| 
 | ||
| 	* rdf_stream.c (librdf_new_empty_stream): Added helper for empty
 | ||
| 	stream.
 | ||
| 
 | ||
| 	* rdf_stream.h: Added prototype for librdf_new_empty_stream
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_get_contexts):
 | ||
| 	Return an empty iterator when the iterator fails to be
 | ||
| 	constructed.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_get_context): Return
 | ||
| 	an empty iterator when the contexts returns NULL immediately or
 | ||
| 	the iterator fails to be constructed.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_get_contexts): Return an
 | ||
| 	empty iterator when the hashes keys iterator returns NULL or the
 | ||
| 	hashes iterator fails to be constructed.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c
 | ||
| 	(librdf_storage_hashes_node_iterator_create): Return an empty
 | ||
| 	iterator when the hahes node iterator returns NULL.
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_node_stream_to_node_create):
 | ||
| 	Return an empty iterator when find_statements returns NULL.
 | ||
| 
 | ||
| 	* rdf_iterator.c (librdf_new_empty_iterator): Added helper to make
 | ||
| 	an always-empty iterator.
 | ||
| 
 | ||
| 	* rdf_iterator.h: Added prototype for librdf_new_empty_iterator
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (redland_node_to_rasqal_literal): Use
 | ||
| 	rasqal_alloc_memory to make things for inside rasqal.
 | ||
| 
 | ||
| 2005-05-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_world_open):
 | ||
| 	Init query after parser and explain why.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_init_triples_match): Renamed from
 | ||
| 	rasqal_redland_new_triples_match.  Update for rasqal 0.9.9.
 | ||
| 	Takes an existing rasqal_triples_match structure and returns non-0 on
 | ||
| 	failure.
 | ||
| 
 | ||
| 2005-05-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_get_limit,
 | ||
| 	librdf_query_rasqal_set_limit, librdf_query_rasqal_get_offset,
 | ||
| 	librdf_query_rasqal_set_offset): Added to implement factory
 | ||
| 	methods for get/setting of query results limit and offsets.
 | ||
| 	(librdf_query_rasqal_register_factory): Register the above
 | ||
| 	methods.
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_get_limit, librdf_query_set_limit,
 | ||
| 	librdf_query_get_offset, librdf_query_set_offset): Added to
 | ||
| 	provide access to new factory methods for get/setting of query
 | ||
| 	results limit - max results to return and offset - initial results
 | ||
| 	to skip.
 | ||
| 
 | ||
| 	* rdf_query.h: Added factory methods: get_limit, set_limit,
 | ||
| 	get_offset and set_offset.  Added prototypes for
 | ||
| 	librdf_query_get_limit, librdf_query_set_limit,
 | ||
| 	librdf_query_get_offset and librdf_query_set_offset
 | ||
| 
 | ||
| 2005-05-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	Added MySQL connection handle pooling by Morten Frederiksen.
 | ||
| 	Added librdf_storage_mysql_connection_status enum and
 | ||
| 	staruct librdf_storage_mysql_connection to store used/opened
 | ||
| 	connections.
 | ||
| 	(librdf_storage_mysql_init_connections,
 | ||
| 	librdf_storage_mysql_finish_connections): Added to init/finish
 | ||
| 	connections
 | ||
| 	(librdf_storage_mysql_get_handle): Added helper to get a connection
 | ||
| 	handle either from the pool or make a new one.
 | ||
| 	(librdf_storage_mysql_release_handle): Release a connection handle
 | ||
| 	back to the pool.
 | ||
| 	(librdf_storage_mysql_*): Use the connection pool to get handles
 | ||
| 	using librdf_storage_mysql_get_handle.
 | ||
| 	No longer return 0-mysql_errno(&context->connection) error codes,
 | ||
| 	just -1 as the connection is strictly no longer available.
 | ||
| 
 | ||
| 	Fixes Issue#0000027 - http://bugs.librdf.org/mantis/view.php?id=27
 | ||
| 
 | ||
| 2005-05-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_hash): Copy the first
 | ||
| 	8 bytes of digest into unsigned 64bit hash using a method portable
 | ||
| 	across big/little endianness. Fixes Issue#0000023 -
 | ||
| 	http://bugs.librdf.org/mantis/view.php?id=23
 | ||
| 	(Morten Frederiksen)
 | ||
| 
 | ||
| 2005-04-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_node_equals): Not equal
 | ||
| 	if only one context is NULL.
 | ||
| 
 | ||
| 2005-04-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.c: Mark class librdf_init/finish_FOO as INTERNAL.
 | ||
| 	Tidy head doc
 | ||
| 
 | ||
| 	* rdf_log.c: Export several useful internal documented functions
 | ||
| 	marked INTERNAL.
 | ||
| 
 | ||
| 	* rdf_serializer.c, rdf_storage.c, rdf_uri.c, rdf_init.c,
 | ||
| 	rdf_model.c, rdf_parser.c, rdf_digest.c, rdf_hash.c,
 | ||
| 	rdf_concepts.c: Mark class librdf_init/finish_FOO as INTERNAL.
 | ||
| 	Tidy head doc, 2005.
 | ||
| 
 | ||
| 2005-04-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c, rdf_serializer_raptor.c, rdf_storage.c,
 | ||
| 	rdf_storage_sqlite.c, rdf_stream.c, rdf_log.c, rdf_node.c: Add
 | ||
| 	missing switch cases to make -Wswitch-enum happy.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_new_triples_source): Use new
 | ||
| 	rasqal 0.9.8+ rasqal_query_get_data_graph_sequence
 | ||
| 
 | ||
| 	* rdf_node.h: Remove unused LIBRDF_NODE_TYPE_RESERVED1 (#3) from
 | ||
| 	librdf_node_type enum
 | ||
| 
 | ||
| 2005-03-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_node_stream_to_node_create): node1
 | ||
| 	or node2 can be NULL but not both - edit docs and assertion.
 | ||
| 
 | ||
| 2005-02-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_statement.c (librdf_free_statement): with threads fix
 | ||
| 
 | ||
| 2005-02-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_execute): Free any
 | ||
| 	existing stored rasqal result before executing.
 | ||
| 	(librdf_query_rasqal_free_results): Zap results pointer after
 | ||
| 	freeing rasqal results.
 | ||
| 
 | ||
| 2005-02-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_encode): init datatype_uri_string to
 | ||
| 	prevent a gcc warning.
 | ||
| 
 | ||
| 2005-02-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Bumped version to 1.0.1
 | ||
| 
 | ||
| 	* win32_rdf_config.h: 1.0.0
 | ||
| 
 | ||
| 	* Snapshotted redland_1_0_0 for 1.0.0 release
 | ||
| 
 | ||
| 2005-02-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c
 | ||
| 	(librdf_query_rasqal_query_results_update_statement): Handle empty
 | ||
| 	rstatement right away.
 | ||
| 	(librdf_query_rasqal_results_as_stream): If no statements at all,
 | ||
| 	return NULL.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c:
 | ||
| 	(librdf_query_rasqal_query_results_next_statement) Remove unused
 | ||
| 	vars.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c
 | ||
| 	(librdf_query_rasqal_query_results_update_statement): Return 0
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: Protect all query results from NULL pointers.
 | ||
| 	(librdf_query_rasqal_query_results_end_of_stream,
 | ||
| 	librdf_query_rasqal_query_results_update_statement,
 | ||
| 	librdf_query_rasqal_query_results_next_statement,
 | ||
| 	librdf_query_rasqal_query_results_get_statement
 | ||
| 	librdf_query_rasqal_query_results_finished): Added, implementing
 | ||
| 	RDF graph query results.
 | ||
| 	(librdf_query_rasqal_results_as_stream): Updated to use the above.
 | ||
| 
 | ||
| 2005-01-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_results_is_bindings,
 | ||
| 	librdf_query_rasqal_results_is_boolean,
 | ||
| 	librdf_query_rasqal_results_is_graph,
 | ||
| 	librdf_query_rasqal_results_get_boolean): Added, calling rasqal.
 | ||
| 	(librdf_query_rasqal_results_as_stream): Added, not implemented.
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_query_results_as_stream): Moved to
 | ||
| 	end to match new query results.
 | ||
| 	(librdf_query_results_is_bindings,
 | ||
| 	librdf_query_results_is_boolean, librdf_query_results_is_graph,
 | ||
| 	librdf_query_results_get_boolean, librdf_query_results_as_stream):
 | ||
| 	Added.
 | ||
| 
 | ||
| 	* rdf_query.h: Added results_is_bindings, results_is_boolean,
 | ||
| 	results_is_grpah and results_get_boolean factory methods.
 | ||
| 	Added prototypes for librdf_query_results_is_bindings,
 | ||
| 	librdf_query_results_is_boolean, librdf_query_results_is_graph and
 | ||
| 	librdf_query_results_get_boolean
 | ||
| 
 | ||
| 2005-01-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.c: docs
 | ||
| 
 | ||
| 	* rdf_query.c (main): C99
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Casts for C++
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_bind_match): Casts for C++
 | ||
| 	and calculate, return the matched parts.
 | ||
| 	Updated untested origin code.
 | ||
| 	(librdf_query_rasqal_execute): Remove code for rasqal < 0.9.4 fixes.
 | ||
| 
 | ||
| 2005-01-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_model.h: Added librdf_model_contains_context
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_contains_context): Added, to find a
 | ||
| 	context node in a model.
 | ||
| 	(main): Added test.
 | ||
| 
 | ||
| 2005-01-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Do not define REDLAND_INTERNAL at all.
 | ||
| 	LIBRDF_INTERNAL should be defined in the build configuration
 | ||
| 
 | ||
| 	* librdf.h: Use LIBRDF_INTERNAL not REDLAND_INTERNAL
 | ||
| 
 | ||
| 2005-01-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c (main): Update latest raptor 1.4.3+ style
 | ||
| 	serialised rdf/xml length.
 | ||
| 
 | ||
| 	* rdf_serializer.c
 | ||
| 	(librdf_serializer_serialize_model_to_file_handle): Require FILE*
 | ||
| 	to be not null.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_bind_match): Update return to
 | ||
| 	add parts arg, return.
 | ||
| 	(librdf_query_rasqal_results_to_counted_string): Added to
 | ||
| 	implement query results as string factory method, via Rasqal.
 | ||
| 	(librdf_query_rasqal_results_to_file_handle): Added to implement
 | ||
| 	query results to a file handle factory method, via Rasqal.
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_query_results_to_counted_string,
 | ||
| 	librdf_query_results_to_string): Added to write formatted query
 | ||
| 	results as a syntax in a string (via Rasqal).
 | ||
| 	(librdf_query_results_to_file_handle,
 | ||
| 	 librdf_query_results_to_file): Added to write formatted query
 | ||
| 	 results as a syntax to a file or already open FILE* handle (via
 | ||
| 	 Rasqal)
 | ||
| 
 | ||
| 	* rdf_query.c (main): Add query results to string test.
 | ||
| 
 | ||
| 	* rdf_query.h: Added results_to_counted_string,
 | ||
| 	results_to_file_handle to librdf_query_factory.  Added prototypes
 | ||
| 	for librdf_query_results_to_counted_string,
 | ||
| 	librdf_query_results_to_string,
 | ||
| 	librdf_query_results_to_file_handle and
 | ||
| 	librdf_query_results_to_file to public api.
 | ||
| 
 | ||
| 2005-01-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: Invert return value of rasqal_triples_match
 | ||
| 	factory method bind_match.  Now returns 0 on failure.
 | ||
| 
 | ||
| 2005-01-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Implement get_contexts.
 | ||
| 	(librdf_storage_sqlite_get_next_context_common,
 | ||
| 	librdf_storage_sqlite_get_contexts_is_end,
 | ||
| 	librdf_storage_sqlite_get_contexts_next_method,
 | ||
| 	librdf_storage_sqlite_get_contexts_get_method,
 | ||
| 	librdf_storage_sqlite_get_contexts_finished,
 | ||
| 	librdf_storage_sqlite_get_contexts): Implement, based on
 | ||
| 	find_statements technique.  No special database schema support for
 | ||
| 	contexts at present.
 | ||
| 
 | ||
| 2004-12-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c:
 | ||
| 	Make get_contexts fail rather than do useless things.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Moved GET_COLUMN* defines to top.
 | ||
| 	Deleted all index_contexts - always supported.
 | ||
| 	(librdf_storage_sqlite_statement_helper): Work when statement=NULL.
 | ||
| 	(librdf_storage_sqlite_add_statements): Handle when max=4 for
 | ||
| 	contexts.
 | ||
| 	(librdf_storage_sqlite_serialise): Debug prepared query.
 | ||
| 	(librdf_storage_sqlite_context_add_statement): Handle when max=4 for
 | ||
| 	contexts.
 | ||
| 	librdf_storage_sqlite_context_serialise_stream_context updated to add
 | ||
| 	sqlite fields.
 | ||
| 	(librdf_storage_sqlite_context_serialise): Implemented, based on
 | ||
| 	librdf_storage_sqlite_serialise and related functions.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_context_add_statement):
 | ||
| 	Kill fixme, done.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_set_helper):
 | ||
| 	Add length arg.
 | ||
| 	(librdf_storage_sqlite_uri_helper,
 | ||
| 	librdf_storage_sqlite_blank_helper,
 | ||
| 	librdf_storage_sqlite_literal_helper): Pass length to
 | ||
| 	librdf_storage_sqlite_set_helper.
 | ||
| 	(librdf_storage_sqlite_statement_helper): Do context nodes.
 | ||
| 	(librdf_storage_sqlite_add_statements): Do context node field when
 | ||
| 	present.
 | ||
| 	(librdf_storage_sqlite_statement_operator_helper): Added, with
 | ||
| 	content mostly from librdf_storage_sqlite_contains_statement.
 | ||
| 	(librdf_storage_sqlite_contains_statement): Use above.
 | ||
| 	(librdf_storage_sqlite_serialise,
 | ||
| 	librdf_storage_sqlite_find_statements): Always free stringbuffer.
 | ||
| 	(librdf_storage_sqlite_context_add_statement): Do context node field
 | ||
| 	when present.
 | ||
| 	(librdf_storage_sqlite_context_remove_statement): Implemented using
 | ||
| 	librdf_storage_sqlite_statement_operator_helper.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Added sqlite_DB define for another 2/3 hide
 | ||
| 	(librdf_storage_sqlite_serialise): Use raptor_stringbuffer_length(sb)
 | ||
| 	for request length.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Alter GET_COLUMN* defines to take vm arg.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c:
 | ||
| 	Fix sqlite_FREE and GET_COLUMN defines for sqlite API v3
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: casts for c++
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c:
 | ||
| 	Replace all use of fields with unsigned char* fields.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (sqlite_string_escape):
 | ||
| 	Emit 'string' - 2 more chars.
 | ||
| 	(librdf_storage_sqlite_uri_helper,
 | ||
| 	librdf_storage_sqlite_blank_helper): Malloc expressions based on
 | ||
| 	actual lengths.
 | ||
| 	(librdf_storage_sqlite_literal_helper): Remove ''s
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_set_helper):
 | ||
| 	Take unsigned values string.
 | ||
| 	(librdf_storage_sqlite_get_helper): Take unsigned expression string.
 | ||
| 	(librdf_storage_sqlite_uri_helper): Use unsigned expression.
 | ||
| 	(librdf_storage_sqlite_literal_helper): Use stringbuffer to build
 | ||
| 	expression.
 | ||
| 	(librdf_storage_sqlite_contains_statement): use stringbuffer to build
 | ||
| 	request.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_open):
 | ||
| 	Auto-set new if file is missing.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Revert over EXEC named change.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Add macros sqlite_STATEMENT, sqlite_EXEC,
 | ||
| 	sqlite_CLOSE, sqlite_FREE to hide more V2/V3 differences.
 | ||
| 	(librdf_storage_sqlite_open): For V2 open failing, set rc.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_get_next_common):
 | ||
| 	Free temporary datatype uri
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_to_counted_string): Free temporary
 | ||
| 	datatype_uri_string.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_serialise_finished):
 | ||
| 	Free any statement, context node.
 | ||
| 	librdf_storage_sqlite_find_statements_stream_context add to store
 | ||
| 	query_statement
 | ||
| 	(librdf_storage_sqlite_find_statements): Store query statement.
 | ||
| 	(librdf_storage_sqlite_find_statements_finished): Free any query
 | ||
| 	statement, statement or context node.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Change context parts pzTail, ppVm to
 | ||
| 	zTail, vm and for sqlite V2 use vm not vm & ppVm.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Use SQLITE_API with 2 or 3 to distinguish apis
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Casts for c++
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c (librdf_serializer_raptor_set_namespace):
 | ||
| 	Cast for c++
 | ||
| 
 | ||
| 2004-12-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_exec):
 | ||
| 	Turn fprintf to debug message.
 | ||
| 	(librdf_storage_sqlite_get_next_common): turn printing all column
 | ||
| 	data into debug messages.
 | ||
| 	(librdf_storage_sqlite_find_statements): Turn fprintf to debug
 | ||
| 	message.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: code style
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (sqlite_construct_select_helper):
 | ||
| 	Added, to build serialise and find_statements query parts.
 | ||
| 	(librdf_storage_sqlite_serialise): Move most of query building into
 | ||
| 	sqlite_construct_select_helper and now call it.
 | ||
| 	(librdf_storage_sqlite_find_statements): Use
 | ||
| 	sqlite_construct_select_helper to build guts of query, then add the
 | ||
| 	WHERE ...
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_serialise): Use
 | ||
| 	raptor_stringbuffer to construct big request.
 | ||
| 	(librdf_storage_sqlite_get_next_common): Add pointer to statement,
 | ||
| 	context_node args.  Fill in statement and context node from column
 | ||
| 	values.  Debug print out column names, values.
 | ||
| 	(librdf_storage_sqlite_serialise_end_of_stream,
 | ||
| 	librdf_storage_sqlite_serialise_next_statement,
 | ||
| 	librdf_storage_sqlite_find_statements_next_statement, ): Update
 | ||
| 	call to librdf_storage_sqlite_get_next_common.
 | ||
| 
 | ||
| 2004-12-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_get_helper,
 | ||
| 	librdf_storage_sqlite_add_statements,
 | ||
| 	librdf_storage_sqlite_context_add_statement): Use
 | ||
| 	raptor_stringbuffer to construct requests.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_set_helper):
 | ||
| 	Use raptor_stringbuffer to
 | ||
| 	construct request.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Added TRIPLE_NONE node_type
 | ||
| 	(librdf_storage_sqlite_node_helper): Fail with NULL node.
 | ||
| 	(librdf_storage_sqlite_statement_helper): Handle NULL nodes, set ID
 | ||
| 	to -1, type to TRIPLE_NONE.
 | ||
| 	(librdf_node_to_sqlite_string): Deleted, not used.
 | ||
| 	(librdf_storage_sqlite_find_statements): Use raptor_stringbuffer to
 | ||
| 	construct request.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_literal_helper):
 | ||
| 	Use IDs for datatype URI.
 | ||
| 	(librdf_storage_sqlite_open): Make uriindex.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (sqlite_string_escape): Escape ' as '' not \'
 | ||
| 	(librdf_storage_sqlite_uri_helper): Renamed from
 | ||
| 	librdf_storage_sqlite_store_uri_helper
 | ||
| 	(librdf_storage_sqlite_blank_helper): Renamed from
 | ||
| 	librdf_storage_sqlite_store_blank_helper
 | ||
| 	(librdf_storage_sqlite_literal_helper): Added
 | ||
| 	(librdf_storage_sqlite_node_helper): Use
 | ||
| 	librdf_storage_sqlite_literal_helper.
 | ||
| 	(librdf_storage_sqlite_open): If new, unlink the file so no need to
 | ||
| 	do DROP TABLE.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c (librdf_storage_sqlite_init):
 | ||
| 	is_new flag set right, really really.
 | ||
| 	Added data-driven table descriptions - table_info, NTABLES,
 | ||
| 	sqlite_table_numbers, sqlite_tables, triple_part, triple_node_type,
 | ||
| 	triples_fields.
 | ||
| 	Reorder helper functions.
 | ||
| 	(sqlite_string_escape): Now always obeys raw_len and nul-terminates
 | ||
| 	the output.
 | ||
| 	(librdf_storage_sqlite_exec): Debug print all SQL exec
 | ||
| 	(librdf_storage_sqlite_set_helper,
 | ||
| 	librdf_storage_sqlite_get_helper): Added, using table info.
 | ||
| 	(librdf_storage_sqlite_store_uri_helper): Added, returns or makes an
 | ||
| 	ID for the given URI.
 | ||
| 	(librdf_storage_sqlite_store_blank_helper): Added, returns or makes an
 | ||
| 	ID for the given blank node ID.
 | ||
| 	(librdf_storage_sqlite_node_helper): Added, turns a librdf_node into
 | ||
| 	appropriate table IDs, node type and returns to user.
 | ||
| 	(librdf_storage_sqlite_statement_helper): Uses
 | ||
| 	librdf_storage_sqlite_node_helper to get node ids, types and field
 | ||
| 	names for all of a statement.
 | ||
| 	(librdf_storage_sqlite_open): Use data tables for DROP TABLE,
 | ||
| 	CREATE TABLE
 | ||
| 	(librdf_storage_sqlite_size): Use librdf_storage_sqlite_exec only.
 | ||
| 	(librdf_storage_sqlite_add_statements): Updated dummy INSERT for
 | ||
| 	new schema.
 | ||
| 	(librdf_storage_sqlite_contains_statement): Use
 | ||
| 	librdf_storage_sqlite_statement_helper to build query.
 | ||
| 	(librdf_storage_sqlite_context_add_statement): Use
 | ||
| 	librdf_storage_sqlite_statement_helper to build INSERT.  Ignores
 | ||
| 	context fields for now.
 | ||
| 
 | ||
| 2004-12-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: Handle sqlite3 and sqlite2
 | ||
| 	(librdf_storage_sqlite_init): Init is_new correctly.
 | ||
| 	(librdf_storage_sqlite_open): Create tables, indexes when new.
 | ||
| 	(librdf_storage_sqlite_get_1int_callback): Grab count value from
 | ||
| 	argv[0]
 | ||
| 	(librdf_storage_sqlite_size): Works.
 | ||
| 	(librdf_storage_sqlite_add_statements): Dummy INSERT works.
 | ||
| 	(librdf_storage_sqlite_contains_statement): Dummy sql added.
 | ||
| 	librdf_storage_sqlite_serialise_stream_context added sqlite3 fields
 | ||
| 	(librdf_storage_sqlite_serialise,
 | ||
| 	librdf_storage_sqlite_get_next_common,
 | ||
| 	librdf_storage_sqlite_serialise_finished): sqlite3 support
 | ||
| 	librdf_storage_sqlite_find_statements_stream_context added sqlite3
 | ||
| 	fields
 | ||
| 	(librdf_storage_sqlite_find_statements,
 | ||
| 	librdf_storage_sqlite_find_statements_finished): sqlite3 support
 | ||
| 	(librdf_storage_sqlite_context_add_statement): Dummy INSERT added.
 | ||
| 	(librdf_init_storage_sqlite): Storage name now 'sqlite'.
 | ||
| 
 | ||
| 2004-12-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c, rdf_model.c (main): Cast for size_t to int
 | ||
| 
 | ||
| 	* rdf_concepts.c: Removed librdf_concept_labels - never used.
 | ||
| 
 | ||
| 2004-12-23  Dave Beckett <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_get_serializer_factory):
 | ||
| 	Ensure that if mime_type or type_uri are
 | ||
| 	not NULL, the factory must have a non-NULL item and it must match.
 | ||
| 
 | ||
| 	* rdf_parser.c (librdf_get_parser_factory):
 | ||
| 	Ensure that if mime_type or type_uri are
 | ||
| 	not NULL, the factory must have a non-NULL item and it must match.
 | ||
| 
 | ||
| 2004-12-21  Dave Beckett <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_init): Applied patch
 | ||
| 	from Morten to only use mysql_real_escape_string if a connection
 | ||
| 	was made.
 | ||
| 	(librdf_storage_mysql_find_statements_in_context_next_statement):
 | ||
| 	Do not call librdf_storage_mysql_find_statements_in_context_finished
 | ||
| 	when errors happen, the iterator class will do that on destruction.
 | ||
| 	(librdf_storage_mysql_get_contexts_next_context): Do not call
 | ||
| 	librdf_storage_mysql_get_contexts_finished when errors happen, the
 | ||
| 	iterator class will do that on destruction.
 | ||
| 
 | ||
| 2004-12-08  Dave Beckett <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_uri.c (librdf_new_uri_relative_to_base): Ask for 1 more char for
 | ||
| 	new URI buffer for raptor_uri_resolve_uri_reference to allow
 | ||
| 	inserting of a missing "/" path.
 | ||
| 
 | ||
| 2004-11-26  Dave Beckett <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Remove rdf_storage_tstore.h rdf_storage_mysql.h
 | ||
| 
 | ||
| 2004-11-23  Dave Beckett <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.h, rdf_storage_tstore.h: Deleted
 | ||
| 
 | ||
| 2004-11-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Use STORAGE_ conditionals instead of @STORAGE_OBJS@
 | ||
| 
 | ||
| 	* rdf_storage.c: Delete rdf_storage_hashes.h and
 | ||
| 	rdf_storage_list.h includes, they are called from rdf_storage.h
 | ||
| 	already.
 | ||
| 	(librdf_init_storage) Use STORAGE_ defines.
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: don't sleep now, this should be fixed later
 | ||
| 
 | ||
| 	* rdf_storage.h: Use STORAGE_ defines.
 | ||
| 	Delete rdf_storage_tstore.h and rdf_storage_mysql.h includes
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_init_storage):
 | ||
| 	Added call to librdf_init_storage_sqlite
 | ||
| 
 | ||
| 	* Makefile.am: Added rdf_storage_sqlite.c
 | ||
| 
 | ||
| 	* rdf_storage.h: added librdf_init_storage_sqlite prototype
 | ||
| 
 | ||
| 	* rdf_storage_sqlite.c: sqlite storage
 | ||
| 
 | ||
| 2004-11-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c (librdf_serializer_raptor_set_namespace):
 | ||
| 	raptor_serialize_set_namespace, typo
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_serializer_set_namespace):
 | ||
| 	Note may not be implemented.
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_query_results_as_stream):
 | ||
| 	Docs, note implemented.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c (librdf_serializer_raptor_get_feature,
 | ||
| 	librdf_serializer_raptor_set_feature): Added to use new serializer
 | ||
| 	features.
 | ||
| 	(librdf_serializer_raptor_set_namespace): Added calling
 | ||
| 	raptor_serializer_set_namespace which should work sometime.
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_free_query_results): Add docs.
 | ||
| 
 | ||
| 	* redland.h, rdf_utf8.h, rdf_node.h, rdf_model.h, rdf_list.h, librdf.h:
 | ||
| 	Applied patch from Ren<65> Puls to allow for Redland public headers to
 | ||
| 	be in a different directory structure. If LIBRDF_OBJC_FRAMEWORK
 | ||
| 	is defined, the headers are in a Redland subdirectory.
 | ||
| 	Only applies to public Redland header files that #include other
 | ||
| 	public header files.  rasqal.h includes raptor.h so needs modifying
 | ||
| 	also.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c, rdf_storage_hashes.c, rdf_storage_file.c:
 | ||
| 	Changed sync methods to return an int status.
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_sync): Changed to return an int.
 | ||
| 	API change but most C won't care much.
 | ||
| 
 | ||
| 	* rdf_storage.h: sync factory method returns a status int
 | ||
| 	API CHANGE: librdf_storage_sync returns an int
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_sync):
 | ||
| 	Changed to return an int.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_sync): Changed to return an int.  API
 | ||
| 	change but most C won't care much.
 | ||
| 
 | ||
| 	* rdf_model.h: sync factory method returns a status int
 | ||
| 	API CHANGE: librdf_model_sync returns an int
 | ||
| 
 | ||
| 2004-11-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_triples.c (librdf_query_triples_init): Add new
 | ||
| 	base_uri argument, not used.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_init): Use new base_uri
 | ||
| 	argument and store that, not language URI.
 | ||
| 
 | ||
| 	* rdf_query.h: Update query factory init method to add base_uri
 | ||
| 	argument.  API CHANGE: Add base_uri argument to librdf_new_query
 | ||
| 	and librdf_new_query_from_factory
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_new_query, librdf_new_query_from_factory):
 | ||
| 	Add optional base_uri argument.  Stop overloading query language
 | ||
| 	identifier URI and base URI.
 | ||
| 	(main): Update test to match.
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_get_query_factory): librdf_uri_equals test
 | ||
| 	was negated
 | ||
| 
 | ||
| 2004-11-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_init): Return failure
 | ||
| 	early if connection failed.
 | ||
| 
 | ||
| 2004-11-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c
 | ||
| 	(librdf_storage_mysql_find_statements_with_options): Ensure
 | ||
| 	subject, predicate and object are initialised.
 | ||
| 
 | ||
| 	* rdf_query_triples.c (librdf_query_triples_init): Ensure subject,
 | ||
| 	predicate are initialised.  Free them only if they are set.
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_to_counted_string): Init
 | ||
| 	datatype_uri_string, language_len.
 | ||
| 
 | ||
| 2004-11-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: Bumped version to 0.9.20
 | ||
| 
 | ||
| 2004-11-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c (main): Update expected result length.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c, rdf_serializer.c, rdf_query_rasqal.c,
 | ||
| 	rdf_query.c, rdf_parser.c, rdf_model.c, rdf_init.c: Casts for C++
 | ||
| 
 | ||
| 2004-10-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_execute):
 | ||
| 	Fix for rasqal bug in
 | ||
| 	rasqal_new_triples_source that refuses to run if query->sources is
 | ||
| 	NULL.  Remove this when rasqal 0.9.4 is out.
 | ||
| 
 | ||
| 2004-10-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_register_factory):
 | ||
| 	Take a uri_string argument.
 | ||
| 
 | ||
| 	* rdf_query.h:
 | ||
| 	Modify librdf_query_register_factory to take a uri_string
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_constructor): Use
 | ||
| 	rasqal_languages_enumerate to register all languages that rasqal has.
 | ||
| 
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_constructor): Use
 | ||
| 	rasqal_languages_enumerate to register all languages that rasqal
 | ||
| 	has.
 | ||
| 
 | ||
| 2004-10-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c
 | ||
| 	(librdf_parser_raptor_new_statement_handler): Do not copy datatype
 | ||
| 	URIs for new statements.
 | ||
| 
 | ||
| 	* rdf_serializer.c
 | ||
| 	(librdf_serializer_serialize_model_to_counted_string,
 | ||
| 	librdf_serializer_serialize_model_to_string): Do not require a
 | ||
| 	base_uri.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_raptor_serialize_statement):
 | ||
| 	Convert statement object URI correctly.
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_counted_string): Zap
 | ||
| 	string, string_length before starting.
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c
 | ||
| 	(librdf_parser_raptor_new_statement_handler): Copy datatype URIs
 | ||
| 	for new statements.
 | ||
| 
 | ||
| 2004-10-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: Update redland support to rasqal changes
 | ||
| 	after addition of origin.
 | ||
| 
 | ||
| 	* rdf_model.h: Change librdf_model_to_counted_string and
 | ||
| 	librdf_model_to_string to return unsigned char*
 | ||
| 
 | ||
| 	* rdf_model.c
 | ||
| 	(librdf_model_to_counted_string,librdf_model_to_string): Return
 | ||
| 	unsigned char*
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_to_counted_string, librdf_model_to_string):
 | ||
| 	Added.
 | ||
| 	(main): Added test for above.
 | ||
| 
 | ||
| 	* rdf_model.h:
 | ||
| 	Added librdf_model_to_counted_string, librdf_model_to_string
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c: Added errors, warnings counting in context.
 | ||
| 	(librdf_serializer_raptor_error_handler,
 | ||
| 	librdf_serializer_raptor_warning_handler): Added, called by raptor
 | ||
| 	serializing code.
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_file_handle): Link to
 | ||
| 	error, warning handlers above.
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_counted_string): Added.
 | ||
| 	(librdf_serializer_raptor_register_factory): Update for new factory
 | ||
| 	method names.
 | ||
| 
 | ||
| 	* rdf_serializer.c
 | ||
| 	(librdf_serializer_serialize_model_to_counted_string): Added to
 | ||
| 	return string length.
 | ||
| 	(main): Test serialize to string.
 | ||
| 
 | ||
| 	* rdf_serializer.h:
 | ||
| 	Rename factory method to serialize_model_to_counted_string
 | ||
| 	Added librdf_serializer_serialize_model_to_counted_string
 | ||
| 
 | ||
| 	* rdf_serializer.c (main): rdf/xml bad predicate URI is now an error
 | ||
| 
 | ||
| 	* rdf_serializer.c (main):
 | ||
| 	Use librdf_serializer_serialize_model_to_file_handle
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c: Deleted. raptor does all this now
 | ||
| 
 | ||
| 	* Makefile.am: Remove rdf_serializer_rdfxml.c
 | ||
| 
 | ||
| 	* rdf_serializer.h:
 | ||
| 	Renamed factory method serialize_model to
 | ||
| 	serialize_model_to_file_handle.
 | ||
| 	Added factory method serialize_model_to_string.
 | ||
| 	Deprecated librdf_serializer_serialize_model
 | ||
| 	Added librdf_serializer_serialize_model_to_file_handle as new name
 | ||
| 	Added librdf_serializer_serialize_model_to_string
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_serializer_serialize_model): Deprecate name.
 | ||
| 	(librdf_serializer_serialize_model_to_file_handle): Added, new name
 | ||
| 	for above.
 | ||
| 	(librdf_serializer_serialize_model_to_string): Added.
 | ||
| 	(librdf_init_serializer): Let raptor make all
 | ||
| 
 | ||
| 	* rdf_storage_file.c (librdf_storage_file_sync): Use
 | ||
| 	librdf_serializer_serialize_model_to_file_handle not deprecated
 | ||
| 	librdf_serializer_serialize_model
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c: Converted to use raptor_serializer.
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_file_handle): Renamed
 | ||
| 	from librdf_serializer_raptor_serialize_model.
 | ||
| 	(librdf_serializer_raptor_serialize_model_to_string): Added.
 | ||
| 	(librdf_serializer_raptor_constructor): Register from raptor's
 | ||
| 	enumeration of serializers.
 | ||
| 
 | ||
| 2004-10-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c (main):
 | ||
| 	Add serializer error and warning report tests
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_results_get_bindings):
 | ||
| 	Casts for variable names array.
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c (rdf_serializer_rdfxml_print_xml_attribute):
 | ||
| 	Take serializer arg.
 | ||
| 	Use librdf_log directly to give a better error message since
 | ||
| 	raptor_xml_escape_string only dies on UTF-8 errors.
 | ||
| 	(librdf_serializer_print_statement_as_rdfxml): Replcae
 | ||
| 	librdf_serializer_warning with direct librdf_log call as above.
 | ||
| 
 | ||
| 	* rdf_serializer.h:
 | ||
| 	Deleted librdf_serializer_error and librdf_serializer_warning
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_serializer_error,
 | ||
| 	librdf_serializer_warning): Deleted.
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c (rdf_serializer_rdfxml_print_as_xml_content):
 | ||
| 	Deleted and inlined.
 | ||
| 	Use raptor_xml_escape_string to properly escape UTF-8.
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c (rdf_serializer_rdfxml_print_xml_attribute):
 | ||
| 	Add an error return value and pass on failures.
 | ||
| 	(librdf_serializer_print_statement_as_rdfxml): Add an error return
 | ||
| 	value and pass on failures.  Try to slightly recover from errors.
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c (librdf_serializer_rdfxml_serialize_model):
 | ||
| 	Use raptor_free_memory.
 | ||
| 
 | ||
| 2004-10-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_init.h: Update librdf_world_get_feature and
 | ||
| 	librdf_world_set_feature to use librdf_node*
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_world_get_feature): Document and change to
 | ||
| 	return librdf_node*
 | ||
| 	(librdf_world_set_feature): Document and change to use
 | ||
| 	librdf_node* value.
 | ||
| 
 | ||
| 2004-09-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_context_add_statement,
 | ||
| 	librdf_storage_context_add_statements): With a NULL context, call
 | ||
| 	the non-context method as documented.  Fix NULL statement pointer
 | ||
| 	checks.
 | ||
| 
 | ||
| 2004-09-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_log.c (librdf_fatal): Off by 1 in snprintf on OSX
 | ||
| 
 | ||
| 2004-08-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_get_contexts): Removed
 | ||
| 	bogus '+' in the sql statement.  Thanks to DJ Adams for finding
 | ||
| 	this.
 | ||
| 
 | ||
| 2004-08-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* win32_rdf_config.h: 0.9.19
 | ||
| 
 | ||
| 2004-08-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser.c, rdf_storage.c, rdf_storage_hashes.c, rdf_model.c,
 | ||
| 	rdf_model_storage.c: Documentation - Note that the model, storage
 | ||
| 	and parser get_feature methods return new librdf_node objects
 | ||
| 
 | ||
| 2004-08-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_context_add_statement,
 | ||
| 	librdf_model_context_add_statements,
 | ||
| 	librdf_model_context_remove_statement,
 | ||
| 	librdf_model_context_remove_statements,
 | ||
| 	librdf_model_context_as_stream, librdf_model_context_serialize):
 | ||
| 	Return failure when contexts are not supported, don't just carry on.
 | ||
| 
 | ||
| 2004-08-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_statement.h, librdf/rdf_statement.c:
 | ||
| 	Revert statement usage counting.
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_free_world): Destroy nodes, statements mutexes.
 | ||
| 	(librdf_world_init_mutex): Init nodes, statements mutexes.
 | ||
| 
 | ||
| 	* rdf_init.h: Added statements mutex
 | ||
| 
 | ||
| 	* rdf_statement.c: Statements are now usage counted,
 | ||
| 	Removed old macros throughout.
 | ||
| 	(librdf_new_statement): Set usage to 1.
 | ||
| 	(librdf_new_statement_from_statement): Rewrite to use usage.
 | ||
| 	(librdf_free_statement): Free when usage is zero, using mutex to
 | ||
| 	protect shared structures.
 | ||
| 
 | ||
| 	* rdf_statement.h: Statements are now usage counted,
 | ||
| 	Removed old macros
 | ||
| 
 | ||
| 2004-08-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c
 | ||
| 	(librdf_parser_raptor_parse_as_stream_common,
 | ||
| 	librdf_parser_raptor_parse_into_model_common): Add a length parameter,
 | ||
| 	calculate it if it is 0.
 | ||
| 	(librdf_parser_raptor_parse_uri_as_stream,
 | ||
| 	librdf_parser_raptor_parse_string_as_stream): Updates for change above.
 | ||
| 	(librdf_parser_raptor_parse_counted_string_as_stream,
 | ||
| 	librdf_parser_raptor_parse_counted_string_into_model): Added, taking
 | ||
| 	a counted string with length>0, calling one of the common functions
 | ||
| 	above.
 | ||
| 	(librdf_parser_raptor_register_factory): Register new methods.
 | ||
| 
 | ||
| 	* rdf_parser.c (librdf_parser_parse_counted_string_as_stream,
 | ||
| 	librdf_parser_parse_counted_string_into_model): Added, taking a
 | ||
| 	counted string with length>0, calling the new parser factory
 | ||
| 	methods.
 | ||
| 	(main): Test code updated to test rdfxml, ntriples and turtle
 | ||
| 	with four different parsing methods for one parser.  This
 | ||
| 	tests - a) memory model checks for same triples
 | ||
| 	b) parsing works with four methods
 | ||
| 	c) parsing with same parser multiple times works
 | ||
| 
 | ||
| 	* rdf_parser.h: Added factory methods parse_counted_string_into_model,
 | ||
| 	parse_counted_string_as_stream as variants of the uncounted versions.
 | ||
| 	Added prototypes for librdf_parser_parse_counted_string_as_stream,
 | ||
| 	librdf_parser_parse_counted_string_into_model
 | ||
| 
 | ||
| 2004-07-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c (librdf_storage_list_add_statement):
 | ||
| 	Note FIXME - cannot enforce not adding duplicate statements.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_add_statement,
 | ||
| 	librdf_storage_mysql_add_statements): Enforce not adding duplicate
 | ||
| 	statements.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_add_statement):
 | ||
| 	Enforce not adding duplicate statements.
 | ||
| 	(librdf_storage_list_add_statements): Enforce not adding duplicate
 | ||
| 	statements. Tidy the code.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_add_statement):
 | ||
| 	Enforce not adding duplicate statements.
 | ||
| 	This is not needed for librdf_storage_hashes_add_statements since
 | ||
| 	it calls the above method.
 | ||
| 
 | ||
| 	* rdf_storage.c:
 | ||
| 	(librdf_storage_add_statement,librdf_storage_add_statements):
 | ||
| 	Document that duplicate statements are ignored on addition.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_add_statement):
 | ||
| 	Document that duplicate statements are
 | ||
| 	ignored and use librdf_model_contains_statement to enforce it.
 | ||
| 	(librdf_model_add_statements): Document that duplicate statements are
 | ||
| 	ignored.
 | ||
| 
 | ||
| 2004-07-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: cast for c++
 | ||
| 
 | ||
| 2004-07-27  Morten Frederiksen
 | ||
| 
 | ||
| 	* Updated to latest version of the MySQL storage written
 | ||
| 	by Morten Frederiksen
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: Add new storage options:
 | ||
| 	  bulk - if inserts should be optimized by locking and index
 | ||
| 	         optimizations 
 | ||
| 	  merge - if a table with merged models should be maintained
 | ||
| 	Added a digest object to the storage context for use and re-use
 | ||
| 	of MD5 digesting.
 | ||
| 	(librdf_storage_mysql_hash): Changed to use context digest option.
 | ||
| 	(librdf_storage_mysql_init): Added and documented the bulk and merge
 | ||
| 	options.  Document the new option, already implemented, to create
 | ||
| 	tables.  Update the MySQL schemas.
 | ||
| 	(librdf_storage_mysql_merge): Added, to re/create merged view of all
 | ||
| 	models.
 | ||
| 	(librdf_storage_mysql_terminate): Tidy up digest from context.
 | ||
| 	(librdf_storage_mysql_sync): Added to flush tables.  Now used
 | ||
| 	by librdf_storage_mysql_close.
 | ||
| 	(librdf_storage_mysql_size, librdf_storage_mysql_node_hash): Updated
 | ||
| 	for new schema.
 | ||
| 	(librdf_storage_mysql_start_bulk, librdf_storage_mysql_stop_bulk):
 | ||
| 	Added, to start and stop bulk op.
 | ||
| 	(librdf_storage_mysql_context_add_statements): Add bulk start
 | ||
| 	operations when enabled.
 | ||
| 	(librdf_storage_mysql_context_add_statement_helper,
 | ||
| 	librdf_storage_mysql_contains_statement,
 | ||
| 	librdf_storage_mysql_remove_statement): Docucomments.
 | ||
| 	Updated for new schema.
 | ||
| 	(librdf_storage_mysql_context_remove_statements):
 | ||
| 	Updated for new schema.
 | ||
| 	(librdf_storage_mysql_serialise,
 | ||
| 	librdf_storage_mysql_find_statements,
 | ||
| 	librdf_storage_mysql_find_statements_in_context): Docucomments
 | ||
| 	(librdf_storage_mysql_find_statements_with_options): Docucomments.
 | ||
| 	Updated for new schema.
 | ||
| 	(librdf_storage_mysql_find_statements_in_context_next_statement):
 | ||
| 	Add checking there is a statement to return.
 | ||
| 	(librdf_storage_mysql_get_contexts):
 | ||
| 	Updated for new schema.
 | ||
| 
 | ||
| 2004-07-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c, rdf_parser_raptor.c, rdf_node.c, rdf_log.c:
 | ||
| 	Casts for C++
 | ||
| 
 | ||
| 2004-07-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser.c, rdf_model.c: Replace parser name "raptor" with "rdfxml"
 | ||
| 
 | ||
| 2004-07-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.spec.in: remove redland-perl, redland-python
 | ||
| 
 | ||
| 2004-07-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.spec.in:
 | ||
| 	Use MAKE_PL_OPTS along with "make Makefile.perl" to ensure that the
 | ||
| 	right flags get passed in, rather than invoking perl Makefile.PL
 | ||
| 	directly
 | ||
| 
 | ||
| 2004-07-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.spec.in: Ship /usr/share/redland/Redland.i in redland-devel
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_query_results_get_bindings):
 | ||
| 	Fix docucomment so jade works again
 | ||
| 
 | ||
| 2004-07-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_log.c: Replace librdf.h, raptor.h with redland.h.
 | ||
| 
 | ||
| 2004-07-09  Edd Dumbill <edd@usefulinc.com>
 | ||
| 
 | ||
| 	* rdf_log.c: add accessors for components of the 
 | ||
| 	librdf_log_message type.
 | ||
| 
 | ||
| 	* rdf_log.h: add prototypes for the accessors, deleted
 | ||
| 	unused prototypes for librdf_log_set_handler and
 | ||
| 	librdf_log_set_level.
 | ||
| 
 | ||
| 2004-07-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.h: Include rasqal.h, reorder so raptor.h is first.
 | ||
| 
 | ||
| 2004-07-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_results.c, rdf_utf8.c, rdf_uri.c, rdf_stream.c,
 | ||
| 	rdf_storage_tstore.c, rdf_storage_mysql.c, rdf_storage_list.c,
 | ||
| 	rdf_storage_hashes.c, rdf_storage_file.c, rdf_storage.c,
 | ||
| 	rdf_statement.c, rdf_serializer_rdfxml.c, rdf_serializer_raptor.c,
 | ||
| 	rdf_serializer.c, rdf_query_triples.c, ChangeLog,
 | ||
| 	rdf_query_rasqal.c, rdf_query.c, rdf_parser_raptor.c,
 | ||
| 	rdf_parser.c, rdf_node.c, rdf_model_storage.c, rdf_model.c,
 | ||
| 	rdf_list.c, rdf_iterator.c, rdf_init.c, rdf_heuristics.c,
 | ||
| 	rdf_hash_memory.c, rdf_hash_cursor.c, rdf_hash_bdb.c, rdf_hash.c,
 | ||
| 	rdf_files.c, rdf_digest_sha1.c, rdf_digest_openssl.c,
 | ||
| 	rdf_digest_md5.c, rdf_digest.c, rdf_concepts.c: Use redland.h in
 | ||
| 	all files not a selection of librdf.h, raptor.h and rasqal.h
 | ||
| 
 | ||
| 2004-07-09  Edd Dumbill <edd@usefulinc.com>
 | ||
| 
 | ||
| 	* rdf_log.c: add accessors for components of the
 | ||
| 	librdf_log_message type.
 | ||
| 	* rdf_log.h: add prototypes for the accessors, deleted
 | ||
| 	unused prototypes for librdf_log_set_handler and librdf_log_set_level.
 | ||
| 
 | ||
| 2004-07-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_results.c (librdf_query_results_get_bindings):
 | ||
| 	Added a doc example
 | ||
| 
 | ||
| 	* rdf_query_results.c: doc
 | ||
| 
 | ||
| 	* rdf_log.c (librdf_log_simple):
 | ||
| 	Use correct user_data.  Patch from Ren<65> Puls.
 | ||
| 
 | ||
| 	* rdf_query.h: Added internal librdf_query_add_query_result,
 | ||
| 	librdf_query_remove_query_result prototypes
 | ||
| 
 | ||
| 	* Makefile.am: Added rdf_query_results.c
 | ||
| 
 | ||
| 	* rdf_query.c, rdf_query_results.c:
 | ||
| 	Moved librdf_query_results to separate file, for doc purposes mostly
 | ||
| 
 | ||
| 2004-07-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_node_stream_to_node_create):
 | ||
| 	node2 can be NULL such
 | ||
| 	as when called by librdf_storage_get_arcs_out,
 | ||
| 	librdf_storage_get_arcs_in.
 | ||
| 
 | ||
| 2004-06-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Added $(DEFS) to test compile & link lines
 | ||
| 
 | ||
| 	* rdf_types.h: Define u64 for WIN32 as a typedef for __int64
 | ||
| 
 | ||
| 	* librdf.h: Added REDLAND_STATIC to define REDLAND_API to nothing.
 | ||
| 
 | ||
| 	* Makefile.am: Added win32_rdf_config.h
 | ||
| 
 | ||
| 	* win32_rdf_config.h: redland WIN32 hard-coded config
 | ||
| 
 | ||
| 	* rdf_storage.c, rdf_storage_file.c, rdf_storage_hashes.c,
 | ||
| 	rdf_storage_list.c, rdf_storage_mysql.c, rdf_storage_tstore.c,
 | ||
| 	rdf_stream.c, rdf_uri.c, rdf_utf8.c, rdf_hash_memory.c,
 | ||
| 	rdf_heuristics.c, rdf_init.c, rdf_iterator.c, rdf_list.c,
 | ||
| 	rdf_log.c, rdf_model.c, rdf_model_storage.c, rdf_node.c,
 | ||
| 	rdf_parser.c, rdf_parser_raptor.c, rdf_query.c,
 | ||
| 	rdf_query_rasqal.c, rdf_query_triples.c, rdf_serializer.c,
 | ||
| 	rdf_serializer_raptor.c, rdf_serializer_rdfxml.c, rdf_statement.c,
 | ||
| 	rdf_concepts.c, rdf_digest.c, rdf_digest_md5.c,
 | ||
| 	rdf_digest_openssl.c, rdf_digest_sha1.c, rdf_files.c, rdf_hash.c,
 | ||
| 	rdf_hash_bdb.c, rdf_hash_cursor.c: Added #include
 | ||
| 	<win32_rdf_config.h> when WIN32 defined
 | ||
| 
 | ||
| 2004-06-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_find_statements_in_context):
 | ||
| 	When applying map, copy
 | ||
| 	the statement so it can be freed later.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_find_statements_in_context):
 | ||
| 	When applying map, copy
 | ||
| 	the statement so it can be freed later.
 | ||
| 
 | ||
| 2004-06-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_get_li_ordinal):
 | ||
| 	if oops, do not always return -1
 | ||
| 
 | ||
| 2004-06-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.h: Added results field to query.
 | ||
| 	Added next field to query_results.
 | ||
| 
 | ||
| 	* rdf_query.c:
 | ||
| 	(librdf_query_add_query_result, librdf_query_remove_query_result):
 | ||
| 	Now take query_results args.
 | ||
| 
 | ||
| 	* rdf_query.c:
 | ||
| 	Added usage counting of query between query & query-results.
 | ||
| 	(librdf_query_add_query_result, librdf_query_remove_query_result): Added
 | ||
| 	(librdf_free_query, librdf_new_query_from_factory,
 | ||
| 	librdf_new_query_from_query): Added usage counts.
 | ||
| 	(librdf_query_execute): Link query to query_results on success.
 | ||
| 	(librdf_free_query_results): Do not return after factory cleanup but
 | ||
| 	continue to clean up more.
 | ||
| 
 | ||
| 	* rdf_query.h: Added usage count to query
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_free_results):
 | ||
| 	Do not free query_results here,
 | ||
| 	it is done by librdf_free_query_results
 | ||
| 
 | ||
| 2004-06-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_free_results):
 | ||
| 	Free the query_results
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_bind_match):
 | ||
| 	free the literal returned by
 | ||
| 	redland_node_to_rasqal_literal since a new one is made by
 | ||
| 	rasqal_literal_as_node.
 | ||
| 
 | ||
| 	* rdf_query.h: query factory free_results method returns no value
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_free_query_results): Add debug assertion
 | ||
| 
 | ||
| 2004-06-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* librdf.h: Added librdf_query_results
 | ||
| 
 | ||
| 	* rdf_storage.c, rdf_storage.h: Removed librdf_storage_query_as_stream,
 | ||
| 	librdf_storage_query_as_bindings and replaced with
 | ||
| 	librdf_storage_query_execute
 | ||
| 
 | ||
| 	* rdf_model_storage.c: Removed librdf_model_storage_query_as_stream,
 | ||
| 	librdf_model_storage_query_as_bindings and replaced with
 | ||
| 	librdf_model_storage_query_execute
 | ||
| 
 | ||
| 	* rdf_model.c: Removed librdf_model_query, librdf_model_query_string,
 | ||
| 	librdf_model_query_as_stream, librdf_model_query_as_bindings and
 | ||
| 	replaced with librdf_model_query_execute
 | ||
| 
 | ||
| 	* rdf_model.h:
 | ||
| 	In factory, removed query_as_stream, replaced with query_execute.
 | ||
| 	Removed librdf_model_query, librdf_model_query_string,
 | ||
| 	librdf_model_query_as_stream, librdf_model_query_as_bindings and
 | ||
| 	replaced with librdf_model_query_execute
 | ||
| 
 | ||
| 	* rdf_query_triples.c, rdf_query_rasqal.c, rdf_query.c, rdf_query.h:
 | ||
| 	Added librdf_query_results.
 | ||
| 	Renamed all librdf_query results methods to match (like rasqal 0.9.1)
 | ||
| 
 | ||
| 2004-05-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am:
 | ||
| 	Don't use LIBRDF_INTERNAL_LIBS except in dependencies of librdf.la
 | ||
| 
 | ||
| 	* rdf_log.h: librdf_log_level_func has a return value
 | ||
| 
 | ||
| 	* rdf_log.c (librdf_log_simple):
 | ||
| 	Return if error, warning messages are handled
 | ||
| 	by the specific handlers.
 | ||
| 
 | ||
| 2004-05-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.pc.in: Use LIBRDF_PKGCONFIG_LIBS
 | ||
| 
 | ||
| 	* redland.pc.in: Replace LIBRDF_LIBS with LIBRDF_EXTERNAL_LIBS
 | ||
| 
 | ||
| 	* Makefile.am: Remove LIBRDF_LIBS and add LIBRDF_INTERNAL_LIBS
 | ||
| 
 | ||
| 2004-05-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Use automakefile conditional MEMCMP
 | ||
| 
 | ||
| 2004-05-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c:
 | ||
| 	Update for renaming of librdf_query_get_result_binding_by_name to
 | ||
| 	librdf_query_get_result_binding_value_by_name and factory equiv.
 | ||
| 
 | ||
| 	* rdf_query.h: Renamed librdf_query_get_result_binding_by_name
 | ||
| 	to librdf_query_get_result_binding_value_by_name
 | ||
| 	and factory equiv.
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_get_result_binding_value_by_name):
 | ||
| 	Renamed from librdf_query_get_result_binding_by_name
 | ||
| 
 | ||
| 2004-05-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_internal.h: Use positive assert enable defines.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (rasqal_redland_bind_match):
 | ||
| 	use redland_node_to_rasqal_literal
 | ||
| 
 | ||
| 2004-05-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: New error/warning handler names
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c (librdf_parser_raptor_generate_id_handler):
 | ||
| 	Use raptor_free_memory to free raptor alloced id
 | ||
| 
 | ||
| 	* rdf_query.c: Don't use uninitialised names.
 | ||
| 
 | ||
| 	* rdf_query.c: docucomments
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_get_result_bindings): Use
 | ||
| 	rasqal_query_get_bindings_count.
 | ||
| 	(librdf_query_rasqal_get_bindings_count): Added, calling
 | ||
| 	rasqal_query_get_bindings_count.
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_get_bindings_count): typo
 | ||
| 
 | ||
| 	* rdf_query.h: Added get_bindings_count factory method
 | ||
| 
 | ||
| 	* rdf_query.h: Added librdf_query_get_bindings_count
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_get_bindings_count): Added.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c (librdf_query_rasqal_error_handler,
 | ||
| 	librdf_query_rasqal_warning_handler): Added
 | ||
| 	(librdf_query_rasqal_init): Hook up above when initialising a new
 | ||
| 	query.
 | ||
| 
 | ||
| 	* rdf_log.c (librdf_log_simple):
 | ||
| 	Too annoying to die for regular errors when
 | ||
| 	debugging.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_context_add_statement,
 | ||
| 	librdf_storage_list_context_remove_statement): Run time warning if
 | ||
| 	called with a non-NULL context and contexts are not supported.
 | ||
| 	(librdf_storage_list_context_serialise,
 | ||
| 	librdf_storage_list_get_contexts): Run time warning if called
 | ||
| 	and contexts are not supported.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_get_contexts):
 | ||
| 	Run time warning if called
 | ||
| 	and contexts are not supported.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c
 | ||
| 	(librdf_storage_hashes_context_add_statement,
 | ||
| 	librdf_storage_hashes_context_serialise): Run time warning if
 | ||
| 	called and contexts are not supported.
 | ||
| 	(librdf_storage_hashes_context_remove_statement): Run time warning
 | ||
| 	if called with a non-NULL context and contexts are not supported.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_supports_contexts): Added helper, internal.
 | ||
| 	(librdf_new_model_with_options, librdf_new_model_from_model):
 | ||
| 	Initialise supports_contexts.
 | ||
| 	(librdf_model_context_add_statement,
 | ||
| 	librdf_model_context_add_statements,
 | ||
| 	librdf_model_context_remove_statement,
 | ||
| 	librdf_model_context_remove_statements,
 | ||
| 	librdf_model_context_as_stream,
 | ||
| 	librdf_model_context_serialize,
 | ||
| 	librdf_model_get_contexts): Run time warning if called and contexts
 | ||
| 	are not supported.
 | ||
| 	(librdf_model_find_statements_in_context): Run time warning if called
 | ||
| 	with a non-NULL context and contexts are not supported.
 | ||
| 
 | ||
| 	* rdf_model.h: Added supports_contexts internal field.
 | ||
| 
 | ||
| 2004-05-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.c (main): Free model, storage
 | ||
| 
 | ||
| 	* rdf_query.c: (main) free returned query variable values
 | ||
| 
 | ||
| 	* rdf_parser.h:
 | ||
| 	Deleted internal librdf_parser_error and librdf_parser_warning
 | ||
| 	Deprecated librdf_parser_set_error and librdf_parser_set_warning.
 | ||
| 
 | ||
| 	* rdf_parser.c (librdf_parser_error, librdf_parser_warning):
 | ||
| 	Deleted - internal and never used.
 | ||
| 	(librdf_parser_set_error, librdf_parser_set_warning): Deprecated,
 | ||
| 	never worked.
 | ||
| 
 | ||
| 	* rdf_query.c: docucomments
 | ||
| 
 | ||
| 	* rdf_query.c: Added assertions
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: Renamed librdf_query_rasqal_get_result_binding to
 | ||
| 	librdf_query_rasqal_get_result_binding_value.
 | ||
| 	Added librdf_query_rasqal_get_result_binding_name
 | ||
| 
 | ||
| 	* rdf_query.h:
 | ||
| 	Renamed librdf_query_get_result_binding to librdf_query_get_result_binding_value.
 | ||
| 	Added librdf_query_get_result_binding_name
 | ||
| 	Changed factory methods to match.
 | ||
| 
 | ||
| 	* rdf_query.c (librdf_query_get_result_binding_value): Renamed from
 | ||
| 	librdf_query_get_result_binding.
 | ||
| 	(librdf_query_get_result_binding_name): Added.
 | ||
| 
 | ||
| 	* rdf_query_triples.h: deleted, not needed
 | ||
| 
 | ||
| 	* rdf_query.c: docucomment
 | ||
| 
 | ||
| 2004-05-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_query.c: add vars
 | ||
| 
 | ||
| 	* rdf_query.c (main): Added a real query language test.
 | ||
| 
 | ||
| 	* rdf_model.h:
 | ||
| 	Added librdf_model_query_as_stream, librdf_model_query_as_bindings,
 | ||
| 	librdf_model_query_string
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_query_as_stream,
 | ||
| 	librdf_model_query_as_bindings): Added
 | ||
| 	(librdf_model_query_string): Deprecated
 | ||
| 
 | ||
| 	* rdf_storage.h:
 | ||
| 	Added librdf_storage_query_as_stream, librdf_storage_query_as_bindings
 | ||
| 
 | ||
| 	* rdf_storage.c
 | ||
| 	(librdf_storage_query_as_stream,librdf_storage_query_as_bindings):
 | ||
| 	Added
 | ||
| 
 | ||
| 	* rdf_query.h: Substantially changed.
 | ||
| 	open, close methods gone.
 | ||
| 	Added all the binding access methods from rasqal.
 | ||
| 
 | ||
| 	* rdf_query.c: Substantially changed.
 | ||
| 	open, close gone.
 | ||
| 	(librdf_query_run_as_stream,librdf_query_run_as_bindings): Added
 | ||
| 	Added all the binding access methods from rasqal.
 | ||
| 
 | ||
| 	* rdf_query_rasqal.c: Querying with Rasqal
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_query_as_stream,
 | ||
| 	librdf_model_storage_query_as_bindings): Added.
 | ||
| 
 | ||
| 	* rdf_query_triples.c: Remove open, close methods.
 | ||
| 	Rename run method.
 | ||
| 
 | ||
| 	* rdf_init.h: added query_factories to world
 | ||
| 
 | ||
| 	* Makefile.am: Removed rdf_query_triples.h, added rdf_query-rasqal.c
 | ||
| 
 | ||
| 	* rdf_internal.h: Removed LIBRDF_DEBUG macros
 | ||
| 
 | ||
| 	* rdf_init.h: Removed librdf_error, librdf_warning as no longer used.
 | ||
| 
 | ||
| 	* rdf_log.c (librdf_log_simple): When debugging, all errors are fatal.
 | ||
| 	(librdf_error, librdf_warning): Removed, no longer used.
 | ||
| 
 | ||
| 	* rdf_stream.c, rdf_storage_tstore.c, rdf_storage_list.c,
 | ||
| 	rdf_storage_hashes.c, rdf_storage.c, rdf_statement.c,
 | ||
| 	rdf_serializer_rdfxml.c, rdf_serializer_raptor.c, rdf_query.c,
 | ||
| 	rdf_parser_raptor.c, rdf_node.c, rdf_model.c, rdf_list.c,
 | ||
| 	rdf_hash_memory.c, rdf_hash_bdb.c, rdf_hash.c, rdf_digest.c:
 | ||
| 	Replace LIBRDF_DEBUG macro uses with librdf_log
 | ||
| 
 | ||
| 	* redland.spec.in, redland.pc.in:
 | ||
| 	SUBST raptor, rasqal min versions and use in build, packaging files.
 | ||
| 
 | ||
| 	* redland.pc.in, redland.spec.in, Makefile.am: added rasqal
 | ||
| 
 | ||
| 2004-04-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_get_blank_identifier): Assert typo.
 | ||
| 
 | ||
| 2004-04-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_to_counted_string):
 | ||
| 	Encode language and datatype for
 | ||
| 	literal strings.
 | ||
| 
 | ||
| 2004-04-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Apply local cppflags to AM_CFLAGS, for building tests
 | ||
| 
 | ||
| 2004-04-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser.c (main): Need to init node, concepts before parser.
 | ||
| 
 | ||
| 	* rdf_log.h, rdf_log.c (librdf_test_error,librdf_test_warning):
 | ||
| 	Added for testing errors.
 | ||
| 
 | ||
| 	* rdf_model.h: Added librdf_model_load
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_load): Added, using parser guessing via
 | ||
| 	raptor_guess_parser_name if no name is given.
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c:
 | ||
| 	Move raptor_new_parser to the init factory method rather than making
 | ||
| 	a new one for each parsing.  Add a raptor_parser* rdf_parser field
 | ||
| 	to the context structure.
 | ||
| 	(librdf_parser_raptor_get_feature): Call raptor_get_feature if it is
 | ||
| 	not known here.
 | ||
| 	(librdf_parser_raptor_set_feature): Call raptor_set_feature.
 | ||
| 
 | ||
| 2004-04-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_uri.c, rdf_storage_tstore.h, rdf_storage_tstore.c,
 | ||
| 	rdf_storage_mysql.h, rdf_storage_mysql.c, rdf_storage_list.h,
 | ||
| 	rdf_storage_list.c, rdf_storage_hashes.h, rdf_storage_hashes.c,
 | ||
| 	rdf_storage_file.c, rdf_storage.h, rdf_storage.c,
 | ||
| 	rdf_serializer.c, rdf_query_triples.h, rdf_query_triples.c,
 | ||
| 	rdf_query.h, rdf_query.c, rdf_parser.c, rdf_node.c,
 | ||
| 	rdf_model_storage.h, rdf_model_storage.c, rdf_model.h,
 | ||
| 	rdf_model.c, rdf_internal.h, rdf_hash.c, rdf_digest.c,
 | ||
| 	rdf_concepts.c: Add world field to all LIBRDF_FATAL1 calls.  Add
 | ||
| 	world parameter to all factory registrations.
 | ||
| 
 | ||
| 	* rdf_log.h: Added more log facilities.
 | ||
| 
 | ||
| 	* rdf_digest.h: Added world field
 | ||
| 
 | ||
| 	* rdf_internal.h, rdf_query.c: zap LIBRDF_FATAL2
 | ||
| 
 | ||
| 2004-04-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer_rdfxml.c
 | ||
| 	(librdf_serializer_rdfxml_raptor_error_handler): Just pass message
 | ||
| 	on to librdf_log_simple as a single string, don't add a prefix.
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c:
 | ||
| 	(librdf_parser_raptor_error_handler,librdf_parser_raptor_warning_handler):
 | ||
| 	Just pass message on to librdf_log_simple with locator, don't add
 | ||
| 	a prefix.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c, rdf_storage_file.c, rdf_query_triples.c,
 | ||
| 	rdf_hash_bdb.c: Replace librdf_error and some LIBRDF_ERROR2 with
 | ||
| 	librdf_log.
 | ||
| 
 | ||
| 	* redland.h: Compiling with Redland requires raptor.h
 | ||
| 
 | ||
| 	* librdf.h: Use rdf_log.h
 | ||
| 
 | ||
| 	* rdf_init.h: Use rdf_log structs inside world.
 | ||
| 	Added librdf_world_set_logger.
 | ||
| 	Deprecated older internal librdf_error/librdf_warning.
 | ||
| 
 | ||
| 	* rdf_init.c: Moved error/warning code to rdf_log.c/.h
 | ||
| 	(librdf_world_set_logger): Added.
 | ||
| 
 | ||
| 	* Makefile.am: Added rdf_log.c rdf_log.h
 | ||
| 
 | ||
| 	* rdf_log.c, rdf_log.h: RDF logging
 | ||
| 
 | ||
| 2004-03-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c, rdf_parser.c: docs
 | ||
| 
 | ||
| 2004-03-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* redland.pc.in: Use -lrdf (patch from Curtis Hovey)
 | ||
| 
 | ||
| 2004-02-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* librdf.h: Add stdio.h
 | ||
| 
 | ||
| 2004-02-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_uri.h: Remove #include <rdf_digest.h>
 | ||
| 	Make librdf_uri_get_digest internal.
 | ||
| 
 | ||
| 	* rdf_node.h: Make librdf_node_get_digest internal.
 | ||
| 
 | ||
| 	* librdf.h: Add stdio.h
 | ||
| 
 | ||
| 	* rdf_uri.h, rdf_node.h: header
 | ||
| 
 | ||
| 	* rdf_uri.h:
 | ||
| 	Remove include rdf_digest.h - an internal header, should not be called
 | ||
| 	from a public one.
 | ||
| 	Make librdf_uri_get_digest internal.
 | ||
| 
 | ||
| 	* rdf_node.h: Make librdf_node_get_digest internal.
 | ||
| 
 | ||
| 2004-02-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_stream.c, rdf_storage_mysql.c, rdf_parser_raptor.c,
 | ||
| 	rdf_node.c, rdf_model.c, rdf_iterator.c, rdf_init.c,
 | ||
| 	rdf_heuristics.c: Docucomment fixes - missing args, renamed args.
 | ||
| 
 | ||
| 2004-02-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_stream.c, rdf_statement.c, rdf_iterator.c:
 | ||
| 	Note explicitly that iterator/stream return SHARED pointers
 | ||
| 	to the current object(or statement), context node
 | ||
| 
 | ||
| 2004-01-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c (librdf_parser_raptor_constructor):
 | ||
| 	Use raptor_syntaxes_enumerate.
 | ||
| 
 | ||
| 	* redland.spec.in, redland.pc.in, redland.h, rdf_internal.h, librdf.h:
 | ||
| 	Restore "Redland RDF Application Framework" not "Library"
 | ||
| 
 | ||
| 2004-01-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c: Switch to use option database, not db.
 | ||
| 
 | ||
| 	* rdf_hash_bdb.c (librdf_hash_bdb_open): Check identifier is not NULL.
 | ||
| 
 | ||
| 	* redland.spec.in: Build with mysql, without threestore
 | ||
| 
 | ||
| 	* redland.spec.in: Update deps, perl >=5.8.0, python >=2.2.0
 | ||
| 
 | ||
| 	* redland.spec.in: Require Raptor 1.2.0+
 | ||
| 
 | ||
| 	* redland.spec.in: Fix install for python.
 | ||
| 
 | ||
| 	* redland.spec.in: Remove setup.py
 | ||
| 
 | ||
| 2004-01-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_file.c (librdf_storage_file_init): Cast for URI.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_get_contexts_get_method):
 | ||
| 	World in error arg.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_get_contexts_get_method):
 | ||
| 	World in error arg.
 | ||
| 
 | ||
| 	* rdf_internal.h:
 | ||
| 	Made assertions print out, but not abort in standard compile.
 | ||
| 	Added LIBRDF_DISABLE_ASSERT_MESSAGES to prevent the output code.
 | ||
| 	Added LIBRDF_DISABLE_ASSERT to prevent the assertions entirely.
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c: Use storage usage tracking.
 | ||
| 	(librdf_storage_tstore_serialise,
 | ||
| 	librdf_storage_tstore_serialise_finished): Add/remove storage usage.
 | ||
| 	(librdf_storage_tstore_find_statements,
 | ||
| 	librdf_storage_tstore_find_finished): Add/remove storage usage.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: Use storage usage tracking.
 | ||
| 	(librdf_storage_mysql_find_statements_with_options,
 | ||
| 	librdf_storage_mysql_find_statements_in_context_finished): Add/remove
 | ||
| 	storage usage.
 | ||
| 	(librdf_storage_mysql_get_contexts,
 | ||
| 	librdf_storage_mysql_get_contexts_finished): Add/remove storage usage.
 | ||
| 
 | ||
| 	* rdf_storage_list.c: Use storage usage tracking.
 | ||
| 	(librdf_storage_list_serialise,
 | ||
| 	librdf_storage_list_serialise_finished): Add/remove storage usage.
 | ||
| 	(librdf_storage_list_context_serialise,
 | ||
| 	librdf_storage_list_context_serialise_finished): Add/remove storage usage.
 | ||
| 	(librdf_storage_list_get_contexts_finished,
 | ||
| 	librdf_storage_list_get_contexts): Add/remove storage usage.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c: Use storage usage tracking.
 | ||
| 	(librdf_storage_hashes_serialise_common,
 | ||
| 	librdf_storage_hashes_serialise_finished): Add/remove storage usage.
 | ||
| 	(librdf_storage_hashes_node_iterator_finished,
 | ||
| 	librdf_storage_hashes_node_iterator_create): Add/remove storage usage.
 | ||
| 	(librdf_storage_hashes_context_serialise,
 | ||
| 	librdf_storage_hashes_context_serialise_finished): Add/remove
 | ||
| 	storage usage.
 | ||
| 	(librdf_storage_hashes_get_contexts,
 | ||
| 	librdf_storage_hashes_get_contexts_finished): Add/remove storage
 | ||
| 	usage.
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_create,
 | ||
| 	librdf_model_storage_destroy): Add and release a reference to the
 | ||
| 	used storage.
 | ||
| 
 | ||
| 	* rdf_storage.h: Add usage tracking to librdf_model.
 | ||
| 	Added librdf_storage_add_reference, librdf_storage_remove_reference
 | ||
| 
 | ||
| 	* rdf_storage.c: Add usage tracking.
 | ||
| 	(librdf_new_storage_from_storage,librdf_new_storage_from_factory): Set
 | ||
| 	usage to 1 on creation.
 | ||
| 	(librdf_free_storage): Decrement usage, free if 0.
 | ||
| 	(librdf_storage_add_reference,librdf_storage_remove_reference): Added.
 | ||
| 	(librdf_storage_stream_to_node_iterator_finished,
 | ||
| 	librdf_storage_node_stream_to_node_create); Add storage usage tracking.
 | ||
| 
 | ||
| 	* rdf_model.h: Add usage tracking to librdf_model.
 | ||
| 	Added librdf_model_add_reference, librdf_model_remove_reference
 | ||
| 
 | ||
| 	* rdf_model.c: Add usage tracking.
 | ||
| 	(librdf_new_model_with_options,librdf_new_model_from_model): Set
 | ||
| 	usage to 1 on creation.
 | ||
| 	(librdf_free_model): Decrement usage, free if 0.
 | ||
| 	(librdf_model_add_reference,librdf_model_remove_reference): Added.
 | ||
| 
 | ||
| 2004-01-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	Change schema. Table Literals, column Language remove default ''
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	Change schema. Table Literals, column Language varchar(6) to text.
 | ||
| 
 | ||
| 2004-01-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_get_source, librdf_model_get_arc,
 | ||
| 	librdf_model_get_target): Fail if iterator returns NULL.
 | ||
| 
 | ||
| 2004-01-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: Literal matching seems to be working.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	Added basic (LIKE) literal searching when option match-substring=true
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c
 | ||
| 	(librdf_storage_mysql_find_statements_with_options): Added, making
 | ||
| 	this the general query method renamed from
 | ||
| 	librdf_storage_mysql_find_statements_in_context, not using the
 | ||
| 	options just yet.
 | ||
| 
 | ||
| 	* rdf_model_storage.c
 | ||
| 	(librdf_model_storage_find_statements_with_options): Added,
 | ||
| 	passing it through to the model storage.
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_find_statements_with_options):
 | ||
| 	Added, optional.
 | ||
| 
 | ||
| 	* rdf_model.h: Added factory method find_statements_with_options
 | ||
| 	Added librdf_model_find_statements_with_options
 | ||
| 	Added option LIBRDF_MODEL_FIND_OPTION_MATCH_SUBSTRING_LITERAL
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_find_statements_with_options):
 | ||
| 	Added, optional.
 | ||
| 
 | ||
| 	* rdf_storage.h: Added factory method find_statements_with_options
 | ||
| 	Added librdf_storage_find_statements_with_options
 | ||
| 
 | ||
| 2004-01-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c, rdf_storage_mysql.c, rdf_storage_list.c,
 | ||
| 	rdf_storage_hashes.c, rdf_storage_file.c: Updated to add store
 | ||
| 	labels.
 | ||
| 
 | ||
| 	* rdf_storage.h: Added label to librdf_storage_factory
 | ||
| 	librdf_storage_register_factory gains label arg
 | ||
| 	Added librdf_storage_enumerate prototype.
 | ||
| 
 | ||
| 	* rdf_storage.c: Added labels to factory.
 | ||
| 	(librdf_storage_register_factory): Added label arg.
 | ||
| 	(librdf_storage_enumerate): Added, to get basic store info.
 | ||
| 
 | ||
| 	* rdf_storage_file.c (librdf_storage_file_size):
 | ||
| 	For consistency, use the model call.
 | ||
| 
 | ||
| 	* rdf_storage.h, rdf_storage.c: Added librdf_init_storage_file
 | ||
| 
 | ||
| 	* Makefile.am: Added rdf_storage_file.c
 | ||
| 
 | ||
| 	* rdf_storage_file.c: Persistent store in file (r/w) and uri (r)
 | ||
| 
 | ||
| 	* rdf_serializer.h: Re-export librdf_serializer_serialize_model
 | ||
| 
 | ||
| 2004-01-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_serializer_serialize_model): re-export
 | ||
| 
 | ||
| 	* rdf_serializer.c (librdf_serializer_serialize_model):
 | ||
| 	static, internal.
 | ||
| 
 | ||
| 	* rdf_serializer.h: Do not export librdf_serializer_serialize_model
 | ||
| 
 | ||
| 2004-01-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_get_contexts):
 | ||
| 	Added, implementing get_contexts for hashes storage
 | ||
| 	implementation.
 | ||
| 
 | ||
| 2004-01-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_print_statement_as_ntriple): Emit literal
 | ||
| 	datatype URI in N-Triples encoding.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_print_statement_as_ntriple): break
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_print_statement_as_ntriple): Emit subject and
 | ||
| 	predicate URIs in N-Triples encoding.  Add some checks.
 | ||
| 
 | ||
| 	* rdf_serializer_raptor.c
 | ||
| 	(librdf_serializer_print_statement_as_ntriple): Emit URIs in UTF-8
 | ||
| 
 | ||
| 	* rdf_uri.c, rdf_storage_hashes.c, rdf_storage.c, rdf_statement.c,
 | ||
| 	rdf_serializer.c, rdf_query.c, rdf_parser_raptor.c, rdf_parser.c,
 | ||
| 	rdf_node.c, rdf_model.c, rdf_internal.h, rdf_hash_bdb.c,
 | ||
| 	rdf_hash.c, rdf_digest.c: LIBRDF_DEBUG* lose their function arg
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c, rdf_storage_list.c, rdf_storage_hashes.c,
 | ||
| 	rdf_parser_raptor.c: Various casts for C++ (g++) to be happier.
 | ||
| 
 | ||
| 	* rdf_uri.c, rdf_stream.c, rdf_storage_tstore.c,
 | ||
| 	rdf_storage_mysql.c, rdf_storage_list.c, rdf_storage_hashes.c,
 | ||
| 	rdf_storage.c, rdf_statement.c, rdf_serializer_rdfxml.c,
 | ||
| 	rdf_serializer.c, rdf_query.c, rdf_parser_raptor.c, rdf_parser.c,
 | ||
| 	rdf_node.c, rdf_model.c, rdf_list.c, rdf_internal.h,
 | ||
| 	rdf_hash_memory.c, rdf_hash_bdb.c, rdf_hash.c, rdf_digest.c,
 | ||
| 	rdf_concepts.c: LIBRDF_ERROR* and LIBRDF_FATAL* lose their
 | ||
| 	function arg
 | ||
| 
 | ||
| 	* rdf_serializer.c, rdf_parser.c, rdf_storage.c:
 | ||
| 	Add a bunch of LIBRDF_ASSERT* for object pointers.
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_node_get_literal_value_is_wf_xml):
 | ||
| 	Only check non-NULL
 | ||
| 	datatype URIs.
 | ||
| 
 | ||
| 	* rdf_node.c (librdf_new_node_from_blank_identifier):
 | ||
| 	Removed assertion, can be NULL.
 | ||
| 
 | ||
| 	* rdf_model.c: Add a bunch of LIBRDF_ASSERT* for object pointers.
 | ||
| 
 | ||
| 	* rdf_internal.h: fix macros again for not debugging.
 | ||
| 
 | ||
| 	* rdf_internal.h: fix macros for not debugging.
 | ||
| 
 | ||
| 	* rdf_statement.c: Add a bunch of LIBRDF_ASSERT* for object pointers.
 | ||
| 
 | ||
| 	* rdf_internal.h: Assert macros tweaks.
 | ||
| 
 | ||
| 	* rdf_node.c, rdf_uri.c:
 | ||
| 	Add a bunch of LIBRDF_ASSERT* for object pointers.
 | ||
| 
 | ||
| 	* rdf_internal.h (LIBRDF_ASSERT_RETURN,
 | ||
| 	LIBRDF_ASSERT_OBJECT_POINTER_RETURN,
 | ||
| 	LIBRDF_ASSERT_OBJECT_POINTER_RETURN_VALUE): Added macros.
 | ||
| 	(LIBRDF_ERROR1,LIBRDF_ERROR2,LIBRDF_ERROR3,LIBRDF_FATAL1,LIBRDF_FATAL2):
 | ||
| 	Use ANSI C99 __func__ rather than the function arg, renamed them
 | ||
| 	to "notused" for now.
 | ||
| 
 | ||
| 	* rdf_uri.c (librdf_new_uri):
 | ||
| 	Return NULL if string is NULL or empty (0 length).
 | ||
| 
 | ||
| 	* rdf_init.c (librdf_free_world, librdf_world_open):
 | ||
| 	Add raptor dependency notes.
 | ||
| 
 | ||
| 2004-01-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* Makefile.am: Add LIBRDF_EXTERNAL_CPPFLAGS for rdf_uri_test
 | ||
| 
 | ||
| 	* rdf_serializer.h, rdf_serializer.c: Adjust
 | ||
| 	librdf_serializer_get_feature, librdf_serializer_set_feature to
 | ||
| 	use librdf_node not strings.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_get_feature):
 | ||
| 	Added, to return contexts always.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_get_feature):
 | ||
| 	Added, to return contexts or not.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_get_feature):
 | ||
| 	Added, to return contexts or not.
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_set_feature):
 | ||
| 	Added, calling librdf_storage_set_feature
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_get_feature):
 | ||
| 	Added, calling librdf_storage_get_feature
 | ||
| 
 | ||
| 	* rdf_storage.h:
 | ||
| 	Added storage methods, factory methods get_feature, set_feature now
 | ||
| 	with librdf_uri* for feature property name, librdf_node* for values.
 | ||
| 
 | ||
| 	* rdf_storage.c
 | ||
| 	(librdf_storage_get_feature,librdf_storage_set_feature): Added
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_get_feature,librdf_model_set_feature):
 | ||
| 	Added
 | ||
| 
 | ||
| 	* rdf_model.h:
 | ||
| 	Added parser methods, factory methods get_feature, set_feature now
 | ||
| 	with librdf_uri* for feature property name, librdf_node* for values.
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c, rdf_parser.h, rdf_parser.c:
 | ||
| 	parser methods, factory methods get_feature, set_feature now use
 | ||
| 	librdf_node* for values.
 | ||
| 
 | ||
| 2004-01-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c
 | ||
| 	(librdf_storage_mysql_find_statements_in_context): Copy the query
 | ||
| 	statement and/or query context_node so that they live during the
 | ||
| 	streaming.
 | ||
| 	(librdf_storage_mysql_find_statements_in_context_finished): Free
 | ||
| 	them.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	(librdf_storage_mysql_find_statements_in_context_next_statement):
 | ||
| 	Clear current_context pointer after free.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: fix
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c (librdf_storage_mysql_init): Default to port
 | ||
| 	3306.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	(librdf_storage_mysql_get_contexts_next_context) row=
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	(librdf_storage_mysql_find_statements_in_context_next_statement):
 | ||
| 	Allow a NULL context to be returned.
 | ||
| 
 | ||
| 2004-01-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_get_contexts_get_method):
 | ||
| 	Use icontext in debug arg.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c (librdf_storage_hashes_context_serialise):
 | ||
| 	Return NULL if no
 | ||
| 	contexts.
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_get_contexts):
 | ||
| 	Added, implementing get_contexts
 | ||
| 	for model_storage implementation.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_get_contexts):
 | ||
| 	Added to implement get_contexts
 | ||
| 	along with:
 | ||
| 	(librdf_storage_list_get_contexts_is_end
 | ||
| 	librdf_storage_list_get_contexts_next_method
 | ||
| 	librdf_storage_list_get_contexts_get_method
 | ||
| 	librdf_storage_list_get_contexts_finished): Helper functions for
 | ||
| 	the get_contexts method.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c:
 | ||
| 	Deleted librdf_storage_hashes_find_map and share the same code now in
 | ||
| 	librdf_stream_statement_find_map
 | ||
| 
 | ||
| 	* rdf_stream.h: Added prototoype for librdf_stream_statement_find_map
 | ||
| 
 | ||
| 	* rdf_stream.c (librdf_stream_statement_find_map): Added, formerly
 | ||
| 	librdf_storage_list_find_map
 | ||
| 
 | ||
| 	* rdf_model.h:
 | ||
| 	Add factory methods find_statements_in_context, get_contexts.
 | ||
| 	Add prototypes for librdf_model_find_statements_in_context and
 | ||
| 	librdf_model_get_contexts
 | ||
| 
 | ||
| 	* rdf_model.c (librdf_model_find_statements_in_context): Added, calling
 | ||
| 	the factory method otherwise using
 | ||
| 	librdf_stream_statement_find_map over a stream of the
 | ||
| 	statements in the context.
 | ||
| 	(librdf_model_get_contexts): Added.
 | ||
| 	(main): Test code, add a get_contexts call; does not yet work
 | ||
| 	on memory, hashed stores.
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_stream_in_context_map): Deleted.
 | ||
| 	(librdf_storage_find_statements_in_context): Do not use the above but
 | ||
| 	use librdf_stream_statement_find_map over a stream of the
 | ||
| 	statements in the context.
 | ||
| 
 | ||
| 	* rdf_storage_list.c (librdf_storage_list_find_map): Renamed to
 | ||
| 	librdf_stream_statement_find_map and moved to rdf_stream.c
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c:
 | ||
| 	Enable factory methods find_statements_in_context, get_contexts.
 | ||
| 
 | ||
| 	* rdf_storage.h:
 | ||
| 	Add factory methods find_statements_in_context, get_contexts.
 | ||
| 	Add prototypes for librdf_storage_find_statements_in_context and
 | ||
| 	librdf_storage_get_contexts
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_stream_in_context_map):
 | ||
| 	Added, helper for
 | ||
| 	librdf_storage_find_statements_in_context when not in the factory.
 | ||
| 	(librdf_storage_find_statements_in_context): Added.
 | ||
| 	(librdf_storage_get_contexts): Added.
 | ||
| 
 | ||
| 	* rdf_storage_list.c:
 | ||
| 	(librdf_storage_list_find_map, librdf_storage_list_find_statements):
 | ||
| 	Update to new stream map API.
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c:
 | ||
| 	(librdf_storage_hashes_find_map, librdf_storage_hashes_find_statements):
 | ||
| 	Update to new stream map API.
 | ||
| 
 | ||
| 	* rdf_stream.h, rdf_stream.c:
 | ||
| 	Change stream mapping to use a list of maps, matching the iterator
 | ||
| 	code exactly except using librdf_statement*, not void*.
 | ||
| 	Add typedefs librdf_stream_map_handler,
 | ||
| 	librdf_stream_map_free_context_handler.
 | ||
| 	Add librdf_stream_map internal structure.
 | ||
| 	Change stream interals to use librdf_stream_map.
 | ||
| 	Deleted librdf_stream_set_map.
 | ||
| 	Added librdf_stream_add_map using typedefs.
 | ||
| 
 | ||
| 	* rdf_iterator.h: Add free_context handler to librdf_iterator_map
 | ||
| 	Define typedefs librdf_iterator_map_handler and
 | ||
| 	librdf_iterator_map_free_context_handler
 | ||
| 	Change librdf_iterator_add_map to have free_context handler arg.
 | ||
| 
 | ||
| 	* rdf_iterator.c (librdf_iterator_free_iterator_map):
 | ||
| 	Use free_context handler.
 | ||
| 	(librdf_iterator_add_map): Add optional free_context handler,
 | ||
| 	use typedefs.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: year 2004
 | ||
| 	assgment in if()s fixes for gcc warnings.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.c: Import from morten 2004-01-11
 | ||
| 
 | ||
| 2004-01-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c: Handle LIBRDF_PARSER_FEATURE_ERROR_COUNT
 | ||
| 	LIBRDF_PARSER_FEATURE_WARNING_COUNT
 | ||
| 	to return error and warning counts after (during?) a parser.
 | ||
| 	Since the first error is fatal, it will either be 0 or 1.
 | ||
| 	Warnings can be larger.
 | ||
| 	(librdf_parser_raptor_get_feature): Added.
 | ||
| 
 | ||
| 	* rdf_parser.h: Added
 | ||
| 	LIBRDF_PARSER_FEATURE_ERROR_COUNT
 | ||
| 	LIBRDF_PARSER_FEATURE_WARNING_COUNT
 | ||
| 
 | ||
| 	* rdf_types.h: Restore u64 tests
 | ||
| 
 | ||
| 	* rdf_storage.h, rdf_storage.c, rdf_model.c:
 | ||
| 	Documentation: Note that context methods with a NULL context are
 | ||
| 	equivalent to the equivalent methods without the context argument.
 | ||
| 
 | ||
| 	* rdf_heuristics.h, rdf_heuristics.c: Added
 | ||
| 	librdf_heuristic_is_blank_node, librdf_heuristic_get_blank_node
 | ||
| 
 | ||
| 2004-01-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_model_storage.c (librdf_model_storage_context_serialize): Use
 | ||
| 	librdf_storage_context_as_stream
 | ||
| 
 | ||
| 	* rdf_storage_hashes.c: Add some int to librdf_statement_part casts.
 | ||
| 
 | ||
| 	* redland.spec.in: - added redland-python package
 | ||
| 	- export some more docs
 | ||
| 
 | ||
| 2004-01-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_stream.h: dates
 | ||
| 	Make librdf_new_stream_from_node_iterator final arg be the enum.
 | ||
| 
 | ||
| 	* rdf_iterator.h: dates
 | ||
| 	note deprecation of librdf_iterator_have_elements
 | ||
| 
 | ||
| 	* rdf_serializer.h, rdf_parser.h, rdf_digest.h:
 | ||
| 	Change void *c to void *_context in prototypes.  Helps
 | ||
| 	remove some declaration shadowing warnings.
 | ||
| 
 | ||
| 	* rdf_uri.h, rdf_stream.h, rdf_stream.c, rdf_storage.h,
 | ||
| 	rdf_storage.c, rdf_statement.h, rdf_statement.c, rdf_serializer.h,
 | ||
| 	rdf_query.h, rdf_parser.h, rdf_node.h, rdf_model.h,
 | ||
| 	rdf_iterator.h, rdf_init.h, rdf_concepts.h: Tidy up the headers,
 | ||
| 	split internal/public stuff more clearly.  Export public functions
 | ||
| 	with REDLAND_API
 | ||
| 
 | ||
| 	* librdf.h: Moved internal stuff to rdf_internal.h; include it.
 | ||
| 
 | ||
| 	* Makefile.am:
 | ||
| 	Made rdf_hash.h rdf_digest.h rdf_types.h rdf_model_storage.h
 | ||
| 	rdf_heuristics.h rdf_list.h rdf_hash_bdb.h rdf_hash_memory.
 | ||
| 	rdf_files.h rdf_storage_list.h rdf_storage_hashes.h
 | ||
| 	rdf_query_triples.h source-only headers, never installed.
 | ||
| 
 | ||
| 	* rdf_storage_mysql.h, rdf_storage_tstore.h: Restored
 | ||
| 
 | ||
| 	* rdf_internal.h: rdf_internal.h
 | ||
| 
 | ||
| 2004-01-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_iterator.c (librdf_iterator_update_current_element):
 | ||
| 	Fix iteration when using a
 | ||
| 	list of map functions.
 | ||
| 	(librdf_iterator_map_remove_duplicate_nodes): Deleted, never used.
 | ||
| 
 | ||
| 	* rdf_storage.c (librdf_storage_node_stream_to_node_create):
 | ||
| 	and nearby, remove
 | ||
| 	prototypical duplicate removing options since it never worked and
 | ||
| 	changing it now would confuse.
 | ||
| 
 | ||
| 	* rdf_storage.c: Removed rdf_storage_mysql/tstore.h
 | ||
| 
 | ||
| 	* rdf_storage.h: Moved mysql, tstore prototypes here.
 | ||
| 
 | ||
| 	* rdf_storage_tstore.c: Removed rdf_storage_tstore.h
 | ||
| 
 | ||
| 	* rdf_storage_tstore.h, rdf_storage_mysql.h:
 | ||
| 	1 function defined here moved to rdf_storage.h
 | ||
| 
 | ||
| 	* librdf.h: restore accidently deleted #endif
 | ||
| 
 | ||
| 	* librdf.h: No longer NEED_EXPAT_SOURCE
 | ||
| 
 | ||
| 	* redland.spec.in, redland.pc.in: name
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c: Correctly use SYSTEM_FREE
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c: Remove some FIXMEs; replacing LIBRDF_FREE
 | ||
| 	with SYSTEM_FREE now that raptor is never compiled with redland
 | ||
| 	internals enabled even when in the source tree.
 | ||
| 
 | ||
| 2004-01-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>
 | ||
| 
 | ||
| 	* rdf_parser_raptor.c (librdf_parser_raptor_parse_file_as_stream):
 | ||
| 	Use pcontext->parser_name
 | ||
| 	with raptor_new_parser.
 | ||
| 	(librdf_parser_raptor_constructor): Register the default parser
 | ||
| 	last always (rdfxml) and preserve the raptor old name as a true
 | ||
| 	alias.
 | ||
| 
 | ||
| ---
 | ||
| 
 | ||
| See ../Changelog.[1-9]* for older changes
 | ||
| 
 |