ChangeLog.8 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110
  1. 2007-12-28 Dave Beckett <dave@dajobe.org>
  2. * NEWS.html, RELEASE.html, configure.ac,
  3. librdf/win32_rdf_config.h: Bump version to 1.0.8.
  4. Require rasqal 0.9.16
  5. 2007-12-24 Dave Beckett <dave@dajobe.org>
  6. * Snapshotted redland_1_0_7 for 1.0.7 release (SVN 13317)
  7. 2007-12-23 Dave Beckett <dave@dajobe.org>
  8. * docs/Makefile.am, docs/redland-chapter-storage-modules.xml,
  9. docs/redland-chapter-storage.xml, docs/redland-docs.xml: Renamed
  10. redland-chapter-storage.xml
  11. * docs/Makefile.am, docs/redland-chapter-storage.xml,
  12. docs/redland-docs.xml: Added redland-chapter-storage.xml
  13. * docs/storage.html: xhtml
  14. * docs/Makefile.am: Update CLEANFILES
  15. * docs/tmpl/concepts.sgml, docs/tmpl/parser.sgml,
  16. docs/tmpl/storage.sgml, docs/tmpl/uri.sgml: docs
  17. 2007-12-21 Lauri Aalto <laalto@iki.fi>
  18. * librdf/rdf_stream.c: (librdf_stream_add_map) Clarified map
  19. function docs.
  20. 2007-12-20 Lauri Aalto <laalto@iki.fi>
  21. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_get_next_common,
  22. librdf_storage_sqlite_get_next_context_common): Make stream
  23. finished on alloc failure.
  24. * librdf/rdf_storage_sqlite.c:
  25. (librdf_storage_sqlite_context_add_statement):
  26. Fix stringbuffer-related leaks introduced in a previous commit.
  27. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_serialise,
  28. librdf_storage_sqlite_find_statements,
  29. librdf_storage_sqlite_context_serialise,
  30. librdf_storage_sqlite_get_contexts): Make sure sqlite is not passed
  31. in NULL sql string. Refactor freeing sql stringbuffers.
  32. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_add_statements,
  33. librdf_storage_sqlite_contains_statement,
  34. librdf_storage_sqlite_serialise,
  35. librdf_storage_sqlite_context_add_statement,
  36. librdf_storage_sqlite_context_remove_statement,
  37. librdf_storage_sqlite_context_remove_statements,
  38. librdf_storage_sqlite_context_serialise): Check for stringbuffer
  39. alloc failures.
  40. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_open): Check
  41. for errors/alloc failures and clean up as needed.
  42. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_set_helper,
  43. librdf_storage_sqlite_get_helper,
  44. librdf_storage_sqlite_uri_helper,
  45. librdf_storage_sqlite_blank_helper,
  46. librdf_storage_sqlite_literal_helper): Resiliency fixes: check for
  47. alloc failures and clean up on error.
  48. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_exec):
  49. Resiliency fixes:
  50. - Don't close the sqlite db on error, we are probably going to
  51. need it later and we don't want sqlite to segfault on NULL db.
  52. - Return an error if passed in a NULL request.
  53. - Memory leak fix: free the dynamically allocated error message
  54. string (if any) from v2 sqlite_exec() or v3 legacy support
  55. sqlite3_exec().
  56. - Check for alloc failures.
  57. (- Fixed indent.)
  58. * librdf/rdf_storage_sqlite.c: (sqlite_string_escape) Check for
  59. alloc failure
  60. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_init) Make
  61. sure options hash is always freed.
  62. * librdf/rdf_hash.c, librdf/rdf_iterator.c, librdf/rdf_list.c,
  63. librdf/rdf_node.c, librdf/rdf_storage.c,
  64. librdf/rdf_storage_hashes.c, librdf/rdf_storage_list.c,
  65. librdf/rdf_storage_mysql.c, librdf/rdf_storage_postgresql.c,
  66. librdf/rdf_storage_sqlite.c: Reverted librdf_new_iterator()
  67. context ownership changes from r12988 and r12989. Do not call
  68. finished method in librdf_new_iterator() if iterator allocation
  69. fails. Caller should discard the memory.
  70. Motivation: Make the API contract similar to librdf_new_stream()
  71. and do not break old code.
  72. 2007-12-18 Lauri Aalto <laalto@iki.fi>
  73. * librdf/rdf_query_internal.h: Use RASQAL_H and not RASQAL_API to
  74. check whether rasqal.h has been included. RASQAL_API may be
  75. defined outside rasqal.h.
  76. 2007-12-17 Dave Beckett <dave@dajobe.org>
  77. * librdf/redland.spec.in: updates to rpm config
  78. 2007-12-16 Dave Beckett <dave@dajobe.org>
  79. * librdf/redland.spec.in: rasqal-devel fixes
  80. * configure.ac: sh
  81. * configure.ac, librdf/redland.pc.in, librdf/redland.spec.in:
  82. Added RASQAL_MAX_VERSION with 0.9.15 since rasqal API will change
  83. next time
  84. * librdf/rdf_parser.c: autodoc
  85. * librdf/rdf_concepts.c: autodoc
  86. * docs/redland-sections.txt: Add 11 funcs/handlers
  87. * docs/redland-sections.txt: Remove
  88. librdf_concept_ms_namespace_uri
  89. librdf_concept_schema_namespace_uri
  90. * librdf/rdf_iterator.h, librdf/rdf_stream.h: autodocs
  91. * librdf/Makefile.am: tweak cleanfiles
  92. * docs/tmpl/redland-unused.sgml, docs/tmpl/unused.sgml: docs
  93. * librdf/rdf_storage.c: (main): Just warn if a storage cannot be
  94. created - databases may not be running.
  95. * librdf/Makefile.am: Try using librdf_la_LDFLAGS rather than AM_LDFLAGS
  96. * configure.ac: Do not apply modular storage params to LIBRDF_LIBS twice
  97. * librdf/rdf_query_internal.h: Make this include work when
  98. rasqal.h has been included first - conditionalise defining
  99. rasqal_query_results_formatter typedef.
  100. 2007-12-12 Lauri Aalto <laalto@iki.fi>
  101. * librdf/rdf_storage_sqlite.c:
  102. (librdf_storage_sqlite_contains_statement): Added FIXME note about
  103. inserting new data when just testing for statement existence.
  104. * librdf/rdf_storage_sqlite.c: Added transaction support to sqlite
  105. storage. Run sqlite operations in a transaction unless one is
  106. already active.
  107. (librdf_storage_sqlite_context): Added in_transaction flag.
  108. (librdf_storage_sqlite_open,
  109. librdf_storage_sqlite_contains_statement,
  110. librdf_storage_sqlite_context_add_statement,
  111. librdf_storage_sqlite_query_flush): Use
  112. librdf_storage_sqlite_transaction_* functions for
  113. transactions. Roll back on errors, do not commit.
  114. (librdf_storage_sqlite_add_statements): Wrap operation in a
  115. transaction unless one is already active.
  116. (librdf_storage_sqlite_transaction_start,
  117. librdf_storage_sqlite_transaction_commit,
  118. librdf_storage_sqlite_transaction_rollback): Added new storage API
  119. implementation functions.
  120. (librdf_storage_sqlite_register_factory): Register transaction
  121. callbacks.
  122. * librdf/rdf_storage_sqlite.c:
  123. (librdf_storage_sqlite_contains_statement):
  124. Bug fix: contains_statement() should also find statements with
  125. blank subject node.
  126. 2007-12-03 Lauri Aalto <laalto@iki.fi>
  127. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_serialise,
  128. librdf_storage_sqlite_find_statements,
  129. librdf_storage_sqlite_context_serialise): Fix crashes e.g. if sql
  130. compilation fails. scontext->storage needs to be initialized
  131. before calling librdf_storage_sqlite_*_finished().
  132. 2007-11-29 Lauri Aalto <laalto@iki.fi>
  133. * librdf/rdf_storage_sqlite.c:
  134. (librdf_storage_sqlite_get_1int_callback): Avoid atoi(NULL) crashes.
  135. * librdf/rdf_query_internal.h: Declare
  136. rasqal_query_results_formatter - can now include librdf.h with
  137. LIBRDF_INTERNAL without including redland.h/rasqal.h.
  138. 2007-11-26 Dave Beckett <dave@dajobe.org>
  139. * autogen.sh: fix to handle OSX using glibtoolize for libtoolize
  140. 2007-11-23 Lauri Aalto <laalto@iki.fi>
  141. * librdf/rdf_storage_sqlite.c: Removed writable static data.
  142. * librdf/rdf_storage_sqlite.c: (librdf_storage_sqlite_init):
  143. Removed unused variable is_new.
  144. (librdf_storage_sqlite_open): On error, do not leave dangling
  145. context->db.
  146. 2007-11-22 Lauri Aalto <laalto@iki.fi>
  147. * librdf/rdf_stream.c: indent tabs->spaces
  148. * librdf/rdf_query_internal.h: Revert r13241 - was not portable
  149. * librdf/rdf_query_internal.h: Forward declare
  150. rasqal_query_results_formatter - can now include librdf.h with
  151. LIBRDF_INTERNAL without including redland.h/rasqal.h.
  152. 2007-11-20 Lauri Aalto <laalto@iki.fi>
  153. * librdf/rdf_digest.c: (librdf_get_digest_factory): Remove
  154. redundant code. Style & indent fixes.
  155. 2007-11-19 Lauri Aalto <laalto@iki.fi>
  156. * librdf/rdf_log.h: comment punctuation
  157. * librdf/rdf_storage_list.c: (librdf_storage_list_find_statements):
  158. Lowmem leak fix: clean up and return NULL if
  159. librdf_stream_add_map() fails.
  160. * librdf/rdf_stream.c: (librdf_stream_update_current_statement):
  161. Lowmem leak fix: return end-of-stream if map iterator alloc fails.
  162. 2007-11-14 Dave Beckett <dave@dajobe.org>
  163. * configure.ac: Require raptor 1.4.16 rasqal 0.9.15
  164. 2007-11-12 Lauri Aalto <laalto@iki.fi>
  165. * librdf/rdf_parser_raptor.c: Make raptor_uri_handlers const.
  166. * librdf/rdf_concepts.c, librdf/rdf_concepts.h,
  167. librdf/rdf_init_internal.h, librdf/rdf_node.c: Remove writable
  168. static data from rdf_concepts - move variables to librdf_world
  169. struct.
  170. SOURCE COMPATIBILITY BREAK: rdf_concepts.h public API node/uri
  171. macros now require a librdf_world* parameter.
  172. (librdf_get_concept_resource_by_index,
  173. librdf_get_concept_resource_by_index): Added two new API functions
  174. required by rdf_concepts.h public API macros.
  175. (librdf_init_concepts_init, librdf_finish_concepts): Remove
  176. librdf_concepts_usage reference counting workaround - no longer
  177. needed.
  178. (librdf_new_node_from_literal,
  179. librdf_node_get_literal_value_is_wf_xml, librdf_node_decode): Pass
  180. world object pointer to rdf concepts macros.
  181. 2007-11-07 Lauri Aalto <laalto@iki.fi>
  182. * librdf/rdf_concepts.c: Remove writable static data. Make const
  183. namespace strings const.
  184. 2007-11-06 Lauri Aalto <laalto@iki.fi>
  185. * librdf/librdf.h: Allow REDLAND_API to be externally defined
  186. e.g. in a static config.h. Remove __SYMBIAN32__ case.
  187. * librdf/rdf_init.c: Remove writable static data. Allow flagging
  188. out old RDF_World stuff with NO_STATIC_DATA.
  189. * librdf/rdf_parser_raptor.c: Remove writable static bss. Make
  190. raptor_uri_handler const
  191. * librdf/rdf_parser_raptor.c, librdf/rdf_query_rasqal.c,
  192. librdf/rdf_serializer_raptor.c: Remove writable static bss. Make
  193. buffers stack-based.
  194. * librdf/rdf_statement.c: Remove writable static data. Make
  195. null_string pointer const.
  196. * librdf/rdf_log.c: Remove writable static data. Make
  197. log_level_names array const.
  198. 2007-10-31 Lauri Aalto <laalto@iki.fi>
  199. * librdf/rdf_storage_internal.h: Remove duplicate declaration of
  200. librdf_init_storage_sqlite()
  201. * librdf/rdf_storage.c, librdf/rdf_storage.h,
  202. librdf/rdf_storage_internal.h: Make librdf_storage_add_reference()
  203. and librdf_storage_remove_reference() LIBRDF_API functions to
  204. enable calling from external storage modules on systems that
  205. require explicit function exports.
  206. 2007-10-25 Lauri Aalto <laalto@iki.fi>
  207. * librdf/rdf_query_results.c: (librdf_query_results_to_counted_string):
  208. Do not leak string on errors.
  209. 2007-10-23 Lauri Aalto <laalto@iki.fi>
  210. * librdf/rdf_node.c: (librdf_new_node_from_typed_counted_literal):
  211. Free xml_language copy on buffer alloc failure
  212. * librdf/rdf_node.c: (librdf_new_node_from_blank_identifier): On
  213. error, free identifier generated with librdf_world_get_genid(). No
  214. need to copy generated id.
  215. * librdf/rdf_parser_raptor.c:
  216. (librdf_parser_raptor_generate_id_handler):
  217. Fix lowmem leaks - always free user_bnodeid, return NULL if
  218. hash_put fails.
  219. * librdf/rdf_parser_raptor.c:
  220. (librdf_parser_raptor_generate_id_handler):
  221. Fix lowmem crash - do not put NULL value into hash
  222. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_init): Check
  223. for bnode_hash alloc failure
  224. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_namespace_handler):
  225. Check for alloc failure
  226. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_context):
  227. Lowmem leak fix. Store pointer to the stream context to enable
  228. cleaning it up through the parser object.
  229. * librdf/rdf_parser_raptor.c:
  230. (librdf_parser_raptor_parse_as_stream_common):
  231. Lowmem leak fixes. Store raptor_www pointer to parser context to
  232. allow resource cleanup from client code in case
  233. raptor_parse_chunk() fails in a lexer.
  234. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_stream_context):
  235. base_uri is not needed for anything - raptor copies and stores
  236. base_uri as needed.
  237. * librdf/rdf_parser.c: (librdf_parser_guess_name): Do not call
  238. strlen() with NULL arg.
  239. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_stream_context):
  240. source_uri is not needed for anything.
  241. * librdf/rdf_parser.c: indent tabs->spaces
  242. * librdf/rdf_parser_raptor.c:
  243. (librdf_parser_raptor_parse_file_handle_as_stream,
  244. librdf_parser_raptor_parse_as_stream_common,
  245. librdf_parser_raptor_parse_into_model_common): Check for alloc
  246. failures
  247. 2007-10-22 Lauri Aalto <laalto@iki.fi>
  248. * librdf/rdf_uri.c: (librdf_new_uri_from_uri_local_name): No need
  249. to calloc strings, use malloc instead.
  250. * librdf/rdf_digest.c, librdf/rdf_hash.c, librdf/rdf_model.c,
  251. librdf/rdf_parser.c, librdf/rdf_query.c, librdf/rdf_serializer.c,
  252. librdf/rdf_storage.c: (librdf_digest_register_factory,
  253. librdf_hash_register_factory, librdf_model_register_factory,
  254. librdf_parser_register_factory, librdf_query_register_factory,
  255. librdf_serializer_register_factory,
  256. librdf_storage_register_factory): No need to calloc strings, use
  257. malloc instead.
  258. * librdf/rdf_concepts.c: (librdf_finish_concepts): Prevent calling
  259. librdf_free_node() with NULL node.
  260. * librdf/rdf_digest.c, librdf/rdf_hash.c, librdf/rdf_model.c,
  261. librdf/rdf_parser.c, librdf/rdf_query.c, librdf/rdf_serializer.c,
  262. librdf/rdf_storage.c: (librdf_storage_register_factory,
  263. librdf_parser_register_factory, librdf_model_register_factory):
  264. Low-memory fixes: prevent calling the factory method on a stale
  265. factory if raptor_sequence_push() failed.
  266. (librdf_digest_register_factory, librdf_hash_register_factory,
  267. librdf_model_register_factory, librdf_parser_register_factory,
  268. librdf_query_register_factory, librdf_serializer_register_factory,
  269. librdf_storage_register_factory): Refactor all
  270. librdf_*_register_factory() functions to same style:
  271. - fail fast if factory already registered, alloc only if necessary
  272. - associate with librdf_world before calling the factory function
  273. to allow proper cleanup on factory failures
  274. - on error, use goto label for cleanup + oom reporting to make the
  275. code clearer and smaller
  276. - do not use intermediate local variables if they have no benefit
  277. * librdf/rdf_iterator.c, librdf/rdf_list.c, librdf/rdf_node.c,
  278. librdf/rdf_storage.c, librdf/rdf_storage_hashes.c,
  279. librdf/rdf_storage_list.c, librdf/rdf_storage_mysql.c,
  280. librdf/rdf_storage_postgresql.c, librdf/rdf_storage_sqlite.c:
  281. Prevent double deleting iterator context on error after r12988.
  282. (librdf_new_iterator): Document that ownership of context is taken.
  283. * librdf/rdf_iterator.c: (librdf_new_iterator): Free passed in
  284. context on alloc failure. Indent tabs->spaces.
  285. * utils/rdfproc.c: (commands): Fix warning about missing initializer
  286. * librdf/rdf_storage_file.c: (librdf_storage_file_init): Make sure
  287. options hash is always freed.
  288. * configure.ac: Set eol-style from native to LF - toolchain does
  289. not work with CRLF files.
  290. 2007-10-21 Lauri Aalto <laalto@iki.fi>
  291. * librdf/rdf_init.c: Require ltdl.h only with MODULAR_LIBRDF.
  292. * librdf/rdf_hash.c: (librdf_hash_get_all_iterator_finished): Fix
  293. low memory crash - check for NULL context->key.
  294. 2007-10-20 Dave Beckett <dave@dajobe.org>
  295. * librdf/rdf_init.c: 2007
  296. * librdf/rdf_init_internal.h: (struct librdf_world_s): Add
  297. storage_modules and ltdl_opened always. Pad structure when not
  298. WITH_THREADS. Thus structure is always the same size.
  299. * librdf/rdf_storage.c: (librdf_storage_load_module): Renamed from
  300. librdf_load_storage_module
  301. * autogen.sh: Only add --ltdl to libtoolize_args if a configure
  302. program contains an AC_LIBLTDL_ macro. Allows this script to
  303. shared between librdf, raptor and rasqal.
  304. 2007-10-19 Dave Robillard <dave@drobilla.net>
  305. * autogen.sh, configure.ac, librdf/Makefile.am, librdf/rdf_init.c,
  306. librdf/rdf_init_internal.h, librdf/rdf_storage.c,
  307. librdf/rdf_storage_sql_test.c: Modular (ie separate library)
  308. storage backends.
  309. (configure.ac): added --enable-modular.
  310. (librdf_load_storage_module): created.
  311. (librdf_init_storage): load modules, if --enable-modular is set.
  312. (librdf_finish_storage): close module if necessary.
  313. (rdf_storage_test): test all available storage backends.
  314. (librdf_new_world): initialise libltdl.
  315. (rdf_storage_sql_test): fix warning on 64-bit.
  316. 2007-10-19 Lauri Aalto <laalto@iki.fi>
  317. * librdf/rdf_hash.c: (librdf_new_hash_from_hash): Do not use hash
  318. after deleting it. No need to free NULL identifier.
  319. * librdf/rdf_model.c: indent tab -> spaces
  320. * librdf/rdf_log.c, librdf/rdf_node.c: (librdf_free_node) Roll
  321. back NULL check change from r12427 - the code is no longer trying
  322. to free NULL nodes. Makes the function consistent with other
  323. librdf_free_* functions.
  324. 2007-10-18 Lauri Aalto <laalto@iki.fi>
  325. * librdf/rdf_uri.c: (librdf_new_uri): Annotate uri string allocs as
  326. cstring and not librdf_uri.
  327. * librdf/rdf_storage_list.c: (librdf_storage_list_close): Remove
  328. unused variable.
  329. * librdf/rdf_storage_list.c: (librdf_storage_list_close):
  330. Low-memory memory leak fix. Freeing list items should not depend
  331. on being able to allocate an iterator. Replace list iterator with
  332. a pop loop.
  333. 2007-10-04 Lauri Aalto <laalto@iki.fi>
  334. * librdf/rdf_parser_raptor.c:
  335. (librdf_parser_raptor_new_statement_handler): Check for failures
  336. and log a fatal error if needed. Free statement if librdf_list_add
  337. fails.
  338. 2007-10-03 Lauri Aalto <laalto@iki.fi>
  339. * librdf/rdf_stream.c: (librdf_stream_add_map): Free context
  340. immediately on error.
  341. * librdf/rdf_storage_list.c: (librdf_storage_list_find_statements):
  342. Free query statement if it is not added to the stream map.
  343. * librdf/rdf_storage_list.c: (librdf_storage_list_serialise) Free
  344. allocated stream context if returning an empty stream with no
  345. context.
  346. * librdf/rdf_list.c: (librdf_list_get_iterator): Free iterator
  347. context if librdf_new_iterator() fails.
  348. 2007-10-01 Lauri Aalto <laalto@iki.fi>
  349. * librdf/rdf_model.c: (librdf_new_model_with_options): Use calloc
  350. instead of malloc for context.
  351. (main): rdf_model tests: Always run test_model_cloning (now it
  352. passes).
  353. (test_model_cloning): Fix copy-paste artifact when cloning a
  354. cloned model.
  355. * librdf/rdf_storage.c: (librdf_new_storage_from_storage): Set
  356. storage usage flag early to allow cleanup with
  357. librdf_free_storage().
  358. * librdf/rdf_storage_hashes.c: (librdf_storage_hashes_init_common):
  359. Store name to context and take ownership.
  360. (librdf_storage_hashes_terminate): Free owned name string.
  361. (librdf_storage_hashes_init): Create a copy of the name string -
  362. init_common takes ownership of it.
  363. (librdf_storage_hashes_clone): Remove unused variable + fix
  364. comments.
  365. Fixes Issue #0000229 http://bugs.librdf.org/mantis/view.php?id=229 .
  366. 2007-09-29 Lauri Aalto <laalto@iki.fi>
  367. * librdf/rdf_model.c: Added tests for
  368. librdf_new_model_from_model(). Tests fail and they are disabled by
  369. default. Related to
  370. Issue #0000229 http://bugs.librdf.org/mantis/view.php?id=229
  371. * librdf/rdf_storage_hashes.c: (librdf_storage_hashes_clone) Only
  372. copy old context name if it is non-NULL. Store options hash in
  373. new_context so that clone of a clone could also be possible.
  374. Fixes Issue #0000229 http://bugs.librdf.org/mantis/view.php?id=229
  375. but not all the additional issue in bug report notes.
  376. (librdf_storage_hashes_open): Do not destroy the options hash - it
  377. can be needed later if cloning the storage.
  378. * librdf/rdf_model.c: (librdf_new_model_from_model): Check factory
  379. clone() return value. Related to
  380. Issue #0000229 http://bugs.librdf.org/mantis/view.php?id=229
  381. * librdf/rdf_heuristics.c: (librdf_heuristic_gen_name): Defensive
  382. code: assert non-NULL name parameter.
  383. 2007-09-27 Lauri Aalto <laalto@iki.fi>
  384. * librdf/rdf_parser.c: (librdf_parser_register_factory): Check
  385. parsers sequence alloc failure. Push new parser to sequence before
  386. calling factory init - parser is cleaned up if factory init fails.
  387. (librdf_new_parser_from_factory): Check factory init return value
  388. and clean up on error.
  389. * librdf/rdf_list.c: (librdf_list_iterator_finished): No-op if
  390. iterator is NULL.
  391. * librdf/rdf_parser_raptor.c: (librdf_raptor_new_uri_for_rdf_concept):
  392. Check librdf_get_concept_by_name() return value.
  393. 2007-09-26 Dave Beckett <dave@dajobe.org>
  394. * autogen.sh: autogen.sh with perl version grep script
  395. 2007-09-26 Lauri Aalto <laalto@iki.fi>
  396. * librdf/rdf_serializer_raptor.c:
  397. (librdf_serializer_raptor_serialize_stream_to_counted_string,
  398. librdf_serializer_raptor_serialize_stream_to_iostream):
  399. Check librdf_serializer_raptor_serialize_statement() return value.
  400. * librdf, utils: Props: ignore .exes
  401. 2007-09-25 Lauri Aalto <laalto@iki.fi>
  402. * librdf/rdf_serializer_raptor.c:
  403. (librdf_serializer_raptor_serialize_statement):
  404. Check for serialize_statement return code. Fix log messages: print
  405. -> serialize.
  406. 2007-09-24 Lauri Aalto <laalto@iki.fi>
  407. * autogen.sh: Do not compare versions as decimal, e.g. automake
  408. 1.10 should be treated newer than 1.7.
  409. (update_prog_version) Convert [z.]x.y version strings to 100x+y.
  410. 2007-09-21 Lauri Aalto <laalto@iki.fi>
  411. * librdf/rdf_concepts.c: librdf_concepts: Check for alloc failures
  412. and clean up on errors. Workaround for
  413. Issue #0000213 http://bugs.librdf.org/mantis/view.php?id=213
  414. * librdf/rdf_serializer_raptor.c:
  415. (librdf_serializer_raptor_serialize_stream_to_file_handle):
  416. Clean up allocated resources on failure.
  417. * librdf/rdf_storage.c: rdf_storage: Check for alloc failures and
  418. clean up properly on failure.
  419. * librdf/rdf_serializer.c: rdf_serializer: Check for alloc
  420. failures and clean up properly on failure.
  421. * librdf/rdf_query_results.c: (librdf_query_results_to_counted_string):
  422. Fix compiler warning about type punning.
  423. * librdf/rdf_query_rasqal.c: rdf_query_rasqal: Check for alloc
  424. failures / return codes and clean up properly on failure.
  425. * librdf/rdf_query.c: rdf_query: Check for alloc failures and
  426. clean up properly on failure.
  427. * librdf/rdf_model.c: rdf_model: Check for alloc failures and
  428. clean up properly on failure.
  429. * librdf/rdf_node.c: (librdf_free_node) Hash deletion failure is
  430. not a fatal error.
  431. * librdf/rdf_serializer_raptor.c:
  432. (librdf_serializer_raptor_serialize_stream_to_counted_string)
  433. Fix compiler warning about type punning.
  434. * librdf/rdf_uri.c: (librdf_free_uri) Hash deletion failure is not
  435. a fatal error.
  436. (librdf_uri_compare) Fix typos in comments.
  437. * librdf/rdf_uri.c: (librdf_new_uri_from_uri_local_name) Indirect
  438. old_uri pointer only after making sure it's not NULL.
  439. * librdf/rdf_uri.c: (librdf_init_uri) Store uris_hash allocation
  440. status before potentially failing opening it.
  441. * librdf/rdf_hash.c: (librdf_new_hash_datum) Check for alloc
  442. failures.
  443. (librdf_new_hash_from_factory) Delete hash if factory init returns
  444. an error.
  445. * librdf/rdf_log.c: (librdf_log_simple) Do not abort() on fatal
  446. messages - leave it up to librdf_fatal() so it can free its
  447. buffers.
  448. (librdf_fatal) Ensure function never returns, even on alloc failure.
  449. * librdf/rdf_internal.h: rdf_internal.h: Allow LIBRDF_ASSERT_DIE
  450. to be externally defined e.g. in a makefile.
  451. * librdf/rdf_init.c: (librdf_new_world) Check for alloc failures
  452. * librdf/rdf_model_storage.c, librdf/rdf_stream.c: Fix typos in
  453. comments
  454. * librdf/rdf_hash_memory.c: Fix indent
  455. * Makefile.am, acinclude.m4, autogen.sh, data/Makefile.am,
  456. demos/Makefile.am, docs/Makefile.am, examples/Makefile.am,
  457. librdf/Makefile.am, librdf/win32/Makefile.am, utils/Makefile.am:
  458. Fix EOL issues when building svn version on cygwin.
  459. Partial fix to
  460. Issue #0000236 http://bugs.librdf.org/mantis/view.php?id=236
  461. * librdf/Makefile.am: Added $(EXEEXT)s to Makefiles to fix "make
  462. clean" on cygwin. Partial fix to
  463. Issue #0000235 http://bugs.librdf.org/mantis/view.php?id=235
  464. * autogen.sh: librdf autogen.sh $dir quoting. Partial fix to
  465. Issue #0000234 http://bugs.librdf.org/mantis/view.php?id=234
  466. 2007-09-16 Dave Beckett <dave@dajobe.org>
  467. * Redland.i, librdf/rdf_parser_raptor.c, librdf/rdf_uri.c,
  468. librdf/rdf_uri.h: (librdf_uri_compare): Added. Used to implement
  469. librdf_raptor_uri_compare
  470. * librdf/rdf_parser_raptor.c: (struct librdf_raptor_uri_handler):
  471. Set URI Interface version to 2.
  472. 2007-09-15 Dave Robillard <dave@drobilla.net>
  473. * librdf/rdf_parser_raptor.c: (librdf_raptor_uri_handler): Move
  474. raptor_uri_compare to end of struct to match raptor_uri_handler.
  475. * librdf/rdf_parser_raptor.c: (librdf_raptor_uri_compare): Avoid
  476. strcmp if URIs are equal. Fix string signedness warnings.
  477. * librdf/rdf_parser_raptor.c: (librdf_raptor_uri_compare):
  478. Overload raptor_uri_compare for librdf URIs.
  479. 2007-09-07 Dave Beckett <dave@dajobe.org>
  480. * librdf/rdf_init_internal.h: Include pthread.h for use by struct
  481. Fixes Issue#0000230 http://bugs.librdf.org/mantis/view.php?id=230
  482. 2007-09-03 Dave Beckett <dave@dajobe.org>
  483. * examples/rss2ical.c: Use \r\n line endings like the spec
  484. says. Hello 1998!
  485. 2007-08-26 Dave Beckett <dave@dajobe.org>
  486. * docs/redland-docs.xml: add more boilerplate, copyrights
  487. 2007-08-24 Dave Beckett <dave@dajobe.org>
  488. * librdf/rdf_query.c: (librdf_query_execute): Fix asset for model
  489. param.
  490. Fixes Issue#0000218 http://bugs.librdf.org/mantis/view.php?id=218
  491. 2007-08-22 Dave Beckett <dave@dajobe.org>
  492. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_relay_filter):
  493. Added to use in filtering URIs during a parse operation.
  494. (librdf_parser_raptor_parse_file_handle_as_stream,
  495. librdf_parser_raptor_parse_as_stream_common,
  496. librdf_parser_raptor_parse_into_model_common): Check URIs using
  497. raptor_parser_set_uri_filter to set a filter function.
  498. * librdf/rdf_parser.c: (librdf_parser_set_uri_filter): Added for
  499. setting a handler function to check URIs being parsed.
  500. (librdf_parser_get_uri_filter): Added for returning the current
  501. handler/data.
  502. * librdf/rdf_uri.h: Define librdf_uri_filter_func
  503. * librdf/rdf_parser.h: Added librdf_parser_set_uri_filter and
  504. librdf_parser_get_uri_filter
  505. * librdf/rdf_parser_internal.h: struct librdf_parser_s gains
  506. uri_filter_user_data and uri_filter
  507. 2007-08-18 Dave Beckett <dave@dajobe.org>
  508. * librdf/rdf_node.c: (librdf_new_node_from_typed_counted_literal):
  509. Handle input value, xml_languge that are not necessarily NUL
  510. terminated, although they should be since they are C strings.
  511. Fixes Issue#0000215 http://bugs.librdf.org/mantis/view.php?id=215
  512. * configure.ac: BDB is up to 4.6 now
  513. * librdf/Makefile.am, librdf/rdf_init.c, librdf/rdf_model.c,
  514. librdf/rdf_node.c, librdf/rdf_parser.c, librdf/rdf_serializer.c,
  515. librdf/rdf_storage.c, librdf/rdf_uri.c: Fix setup/cleanup issues
  516. if library is initialised and then closed. Added rdf_init_test
  517. test to run it.
  518. Fixes Issue#0000209 http://bugs.librdf.org/mantis/view.php?id=209
  519. 2007-08-17 Dave Beckett <dave@dajobe.org>
  520. * librdf/rdf_query_rasqal.c: (librdf_query_rasqal_free_results_formatter):
  521. Free the librdf_query_results_formatter
  522. Fixes Issue#0000205 http://bugs.librdf.org/mantis/view.php?id=205
  523. * librdf/librdf.h: Applied librdf part of symbian portability fix
  524. for Issue#0000203
  525. http://bugs.librdf.org/mantis/view.php?id=203
  526. 2007-07-19 Dave Beckett <dave@dajobe.org>
  527. * librdf/rdf_serializer.c: (librdf_serializer_set_namespace): Now
  528. with less typos
  529. * librdf/rdf_serializer.c: (librdf_serializer_set_namespace):
  530. Allow NULL uri and prefix to be given
  531. 2007-06-08 Dave Beckett <dave@dajobe.org>
  532. * librdf/rdf_storage_mysql.c:
  533. (librdf_storage_mysql_transaction_commit): Run
  534. librdf_storage_mysql_transaction_terminate if there is nothing to
  535. do.
  536. 2007-05-26 Dave Beckett <dave@dajobe.org>
  537. * librdf/rdf_uri.c: (librdf_uri_is_file_uri): Correct return value
  538. docs.
  539. Fixes Issue#0000189 http://bugs.librdf.org/mantis/view.php?id=189
  540. * librdf/librdf.h: Allow _declspec and __declspec
  541. Fixes Issue#0000188 http://bugs.librdf.org/mantis/view.php?id=188
  542. 2007-05-21 Dave Beckett <dave@dajobe.org>
  543. * configure.ac: Add -Wformat-security
  544. 2007-05-09 Dave Beckett <dave@dajobe.org>
  545. * librdf/rdf_query_results.c: (librdf_free_query_results_formatter):
  546. Do not try to return a value.
  547. Fixes Issue#0000187 http://bugs.librdf.org/mantis/view.php?id=187
  548. * configure.ac: mysql_cflags - make sure -O match is after
  549. whitespace. Ditch trying to rip out linker junk from mysql_cflags
  550. 2007-05-06 Dave Beckett <dave@dajobe.org>
  551. * librdf/rdf_hash.c: (librdf_hash_print, librdf_hash_print_keys,
  552. librdf_hash_print_values): Look at fwrite return value, it makes
  553. gcc happier.
  554. * NEWS.html, configure.ac, librdf/win32_rdf_config.h: Bump version
  555. to 1.0.7
  556. 2007-05-05 Dave Beckett <dave@dajobe.org>
  557. * Snapshotted redland_1_0_6 for 1.0.6 release (SVN 12231)
  558. * librdf/redland.spec.in: Add /usr/share/redland/mysql-v1.ttl and
  559. /usr/share/redland/mysql-v2.ttl to redland package
  560. * librdf/rdf_parser_raptor.c:
  561. (librdf_parser_raptor_namespace_handler): Do not store namespaces
  562. with null URIs.
  563. * Redland.i: Add librdf_parser_get_namespaces_seen_prefix,
  564. librdf_parser_get_namespaces_seen_uri and
  565. librdf_parser_get_namespaces_seen_count
  566. * librdf/rdf_parser_raptor.c: (librdf_parser_raptor_namespace_handler):
  567. Handle NULL prefix, URIs
  568. 2007-05-04 Dave Beckett <dave@dajobe.org>
  569. * librdf/rdf_parser_raptor.c: cast for C++
  570. * librdf/rdf_parser_raptor.c: librdf_parser_raptor_stream_context
  571. gains nspace_prefixes and nspace_uris sequences for storing
  572. namespaces seen.
  573. (librdf_parser_raptor_terminate): Free sequences.
  574. (librdf_parser_raptor_namespace_handler): Save namespaces prefixes
  575. and URIs seen in the new sequences.
  576. (librdf_parser_raptor_parse_file_handle_as_stream,
  577. librdf_parser_raptor_parse_as_stream_common,
  578. librdf_parser_raptor_parse_into_model_common): Reset/initialise
  579. namespace prefix/uri sequences before starting parsing.
  580. (librdf_parser_raptor_get_namespaces_seen_prefix,
  581. librdf_parser_raptor_get_namespaces_seen_uri,
  582. librdf_parser_raptor_get_namespaces_seen_count): Added to get the
  583. namespaces returned during a parsing.
  584. (librdf_parser_raptor_register_factory): Register new functions
  585. above.
  586. * librdf/rdf_parser.c: (librdf_parser_get_namespaces_seen_prefix,
  587. librdf_parser_get_namespaces_seen_uri,
  588. librdf_parser_get_namespaces_seen_count): Added to get the
  589. namespaces returned during a parsing.
  590. * librdf/rdf_parser.h: Added prototypes for
  591. librdf_parser_get_namespaces_seen_prefix,
  592. librdf_parser_get_namespaces_seen_uri and
  593. librdf_parser_get_namespaces_seen_count
  594. * librdf/rdf_parser_internal.h: struct librdf_parser_factory_s
  595. gains factory methods
  596. const char* (*get_namespaces_seen_prefix)(void* context, int offset);
  597. librdf_uri* (*get_namespaces_seen_uri)(void* context, int offset);
  598. int (*get_namespaces_seen_count)(void* context);
  599. to get the namespaces seen during a parsing.
  600. * librdf/rdf_storage_mysql.c:
  601. (librdf_storage_mysql_transaction_commit): Commit statements in
  602. the sorted order, not reversed. Fix off-by-1.
  603. * librdf/rdf_storage_mysql.c: pending_row now has a set strings
  604. with lengths.
  605. (librdf_storage_mysql_context): pending_inserts is now an array of
  606. raptor_sequence* of pending_rows.
  607. (compare_pending_rows): Compare using ints not memcmp for
  608. human understandable order. Could go back to memcmp which would
  609. do different things based on the storage of u64 in memory (big,
  610. little endian)
  611. (free_pending-row): Added, now freeing strings too.
  612. (format_pending_row_sequence): Turn a sequence of pending rows for a
  613. table into the appropriate REPLACE INTO query.
  614. (librdf_storage_mysql_node_hash_common): Do not make query here, use
  615. new format_pending_row_sequence for immediate use, or queue it if in
  616. a transaction.
  617. (librdf_storage_mysql_transaction_start): init pending_inserts
  618. sequences.
  619. (librdf_storage_mysql_transaction_terminate): Free pending_inserts
  620. sequences.
  621. (librdf_storage_mysql_transaction_commit): Count pending_inserts
  622. sequences. sort the pending nodes rows before formatting with
  623. format_pending_row_sequence.
  624. 2007-05-02 Dave Beckett <dave@dajobe.org>
  625. * librdf/rdf_storage_mysql.c: Batch up INSERTS to be 1 per table type.
  626. Replace INSERT INTO with REPLACE INTO for Resources, Literals,
  627. BNodes.
  628. Do nothing if there is no work to commit, not even start/commit.
  629. Table mysql_tables added to declare table names and fields.
  630. Lose all the SELECT HIGH_PRIORITY.
  631. (librdf_storage_mysql_node_hash_common): Renamed from
  632. librdf_storage_mysql_node_hash.
  633. (librdf_storage_mysql_get_node_hash,
  634. librdf_storage_mysql_store_node): Added as wrappers around the above.
  635. (librdf_storage_mysql_node_hash_common): Split into 'get hash' and
  636. 'add hash' sections. All queries are constructed with
  637. raptor_stringbuffer. When in transaction, save for later, otherwise
  638. execute here as before. Do not insert the same node twice in
  639. the same transaction. LATER: Need to remember this is inserted
  640. outside a transaction too to prevent un-necessary SELECTs.
  641. (librdf_storage_mysql_context_add_statement_helper): Use new function
  642. names. When in transactions, save away statements hash u64 arrays
  643. a raptor_sequence of pending_row objects otherwise execute as before.
  644. (librdf_storage_mysql_transaction_start): Initialise the new hashes
  645. for nodes, pending_inserts stringbuffers, pending_statements sequence.
  646. (librdf_storage_mysql_transaction_terminate): Added to tidy up the
  647. new fields added above when a transaction is done.
  648. (librdf_storage_mysql_transaction_commit): If there is no pending
  649. node or statement to add, end without connecting.
  650. Otherwise for each node table, do one REPLACE INTO and for the
  651. statement table, do one INSERT INTO.
  652. (librdf_storage_mysql_transaction_rollback): use new
  653. librdf_storage_mysql_transaction_terminate to tidy up.
  654. * configure.ac: Move mysql flag munging to one place
  655. * utils/Makefile.am: (AM_CPPFLAGS): Put internal flags first
  656. 2007-05-01 Dave Beckett <dave@dajobe.org>
  657. * librdf/rdf_hash.c: casts for C++
  658. * librdf/rdf_parser.c, librdf/rdf_parser_raptor.c,
  659. librdf/rdf_query_rasqal.c, librdf/rdf_storage_mysql.c,
  660. librdf/rdf_storage_sql.c: casts for C++
  661. * librdf/rdf_hash.c: Casts for C++
  662. * librdf/rdf_hash.c, librdf/rdf_hash.h:
  663. (librdf_hash_interpret_template): Do not use template as a
  664. function parameter name for C++
  665. * FAQS.html, INSTALL.html, LICENSE.html, NEWS.html, README.html,
  666. RELEASE.html, TODO.html: HTML hello UTF-8
  667. * redland-config.1: Document --private-libs and explain what it is
  668. under --libs too.
  669. * redland-config.in: Add --private-libs and move private libs to
  670. that from --libs
  671. * librdf/redland.pc.in: Use Libs.private for internal dynamically
  672. linked libraries
  673. 2007-04-30 Dave Beckett <dave@dajobe.org>
  674. * librdf/rdf_model.c: (librdf_model_add_submodel): Invert test
  675. Fixes Issue#0000175 http://bugs.librdf.org/mantis/view.php?id=175
  676. * librdf/rdf_iterator.c, librdf/rdf_statement.c,
  677. librdf/rdf_storage.c, librdf/rdf_stream.c, librdf/rdf_uri.c:
  678. (main): Init library with world only, not librdf_init_CLASS
  679. * librdf/rdf_concepts.c: (main): Self contained test.
  680. * librdf/rdf_digest.c, librdf/rdf_hash.c, librdf/rdf_node.c:
  681. (main): Init library with world only, not librdf_init_CLASS
  682. * docs/redland-docs.xml: sgml IDs
  683. * Makefile.am: touch-mtime.pl
  684. * docs/redland-sections.txt: Add librdf_parser_guess_name add
  685. librdf_query_results_is_syntax
  686. * Makefile.am, RELEASE.html, configure.ac, utils/Makefile.am,
  687. utils/touch-mtime.c, utils/touch-mtime.pl: Remove touch-mtime
  688. program, use perl touch-mtime.pl
  689. 2007-04-23 Dave Beckett <dave@dajobe.org>
  690. * configure.ac: min raptor 1.4.15
  691. * utils/rdfproc.c: Revert add_stream_count() and heuristics changes
  692. * librdf/rdf_model.c, librdf/rdf_serializer.c: Updates for rdf/xml
  693. output adding xml:base
  694. * NEWS.html, configure.ac, librdf/win32_rdf_config.h: Bump version
  695. to 1.0.6
  696. * librdf/rdf_utf8.c: (main): Run quietly when successful
  697. 2007-04-22 Dave Beckett <dave@dajobe.org>
  698. * librdf/rdf_query_triples.c: (librdf_query_triples_init): Init
  699. context->statement.
  700. * autogen.sh: Update autogen.sh
  701. 2007-03-20 Dave Beckett <dave@dajobe.org>
  702. * librdf/rdf_parser.c: (librdf_parser_guess_name): Guess a parser
  703. name from content using raptor_guess_parser_name.
  704. * librdf/rdf_parser.h: Added librdf_parser_guess_name
  705. * Redland.i: Added librdf_parser_guess_name
  706. 2007-03-14 Dave Beckett <dave@dajobe.org>
  707. * librdf/rdf_parser_raptor.c:
  708. (librdf_parser_raptor_parse_as_stream_common): Send the accept
  709. header appropriate for the raptor parser.
  710. 2007-02-25 Dave Beckett <dave@dajobe.org>
  711. * librdf/rdf_init.c: (librdf_new_world): Document how you should
  712. call librdf_world_open after, although the library will now do it
  713. for you.
  714. * librdf/rdf_concepts.c, librdf/rdf_digest.c, librdf/rdf_hash.c,
  715. librdf/rdf_init.c, librdf/rdf_init_internal.h,
  716. librdf/rdf_iterator.c, librdf/rdf_list.c, librdf/rdf_model.c,
  717. librdf/rdf_model_storage.c, librdf/rdf_node.c,
  718. librdf/rdf_parser.c, librdf/rdf_parser_raptor.c,
  719. librdf/rdf_query.c, librdf/rdf_query_results.c,
  720. librdf/rdf_serializer.c, librdf/rdf_serializer_raptor.c,
  721. librdf/rdf_statement.c, librdf/rdf_storage.c,
  722. librdf/rdf_storage_file.c, librdf/rdf_storage_hashes.c,
  723. librdf/rdf_storage_list.c, librdf/rdf_storage_mysql.c,
  724. librdf/rdf_storage_postgresql.c, librdf/rdf_storage_sql.c,
  725. librdf/rdf_storage_sqlite.c, librdf/rdf_storage_tstore.c,
  726. librdf/rdf_stream.c, librdf/rdf_uri.c: Add librdf_world_open() for
  727. every public API constructor or function that mentions
  728. librdf_world* and could have failed to run librdf_world_open()
  729. after librdf_new_world(). Fixes Issue#0000173
  730. http://bugs.librdf.org/mantis/view.php?id=173
  731. * librdf/rdf_query.h: Added librdf_query_results_is_syntax prototype.
  732. 2007-02-17 Dave Beckett <dave@dajobe.org>
  733. * utils/rdfproc.1: Document -r/--results for query results formatting.
  734. * utils/rdfproc.c: Added -r/--results option to set query results
  735. formatter name.
  736. * docs/tmpl/hash.sgml, docs/tmpl/model.sgml,
  737. docs/tmpl/query_results.sgml, docs/tmpl/storage.sgml: Update for
  738. new transactions functions
  739. * librdf/rdf_parser.c, librdf/rdf_parser_internal.h,
  740. librdf/win32_rdf_config.h: Remove HAVE_RAPTOR_RDF_PARSER - always
  741. present now
  742. * librdf/Makefile.am: rdf_parser_raptor.c is always compiled
  743. * configure.ac: Remove --enable-parsers - raptor is always
  744. required and always used, whatever this setting is. It is now
  745. passed onto raptor, if built internally, which *will* use it to
  746. configure the library contents.
  747. 2007-02-16 Dave Beckett <dave@dajobe.org>
  748. * librdf/rdf_query_rasqal.c: (librdf_query_rasqal_results_to_counted_string,
  749. librdf_query_rasqal_results_to_file_handle): Removed old factory
  750. method impls
  751. (librdf_query_rasqal_results_is_syntax,
  752. librdf_query_rasqal_new_results_formatter,
  753. librdf_query_rasqal_new_results_formatter_by_mime_type,
  754. librdf_query_rasqal_free_results_formatter,
  755. librdf_query_rasqal_results_formatter_write): Added to implement
  756. new factory methods using rasqal_query_results_formatter
  757. (librdf_query_rasqal_constructor): Register all rasqal query
  758. results formats to be handled by this.
  759. * librdf/rdf_query_results.c: (librdf_query_results_to_counted_string,
  760. librdf_query_results_to_file_handle): Use query results formatter.
  761. (librdf_query_results_is_syntax): Added
  762. (librdf_new_query_results_formatter,
  763. librdf_new_query_results_formatter_by_mime_type,
  764. librdf_free_query_results_formatter,
  765. librdf_query_results_formatter_write): Added, based on new factory
  766. methods. 9librdf_query_results_formats_check,
  767. librdf_query_results_formats_enumerate): Added, calling rasqal
  768. directly.
  769. * librdf/rdf_query.h: Added prototypes for
  770. librdf_new_query_results_formatter,
  771. librdf_new_query_results_formatter_by_mime_type,
  772. librdf_free_query_results_formatter,
  773. librdf_query_results_formatter_write,
  774. librdf_query_results_formats_check and
  775. librdf_query_results_formats_enumerate
  776. * librdf/rdf_query_internal.h: Added
  777. librdf_query_results_formatter librdf_query_factory_s gains
  778. factory methods new_results_formatter,
  779. new_results_formatter_by_mime_type, free_results_formatter and
  780. results_formatter_write, results_is_syntax. lose factory methods
  781. results_to_counted_string and results_to_file_handle
  782. * librdf/librdf.h: Added librdf_query_results_formatter
  783. * librdf/rdf_query_rasqal.c: (rasqal_redland_bind_match): Allow
  784. binding a NULL graph
  785. 2007-02-09 Dave Beckett <dave@dajobe.org>
  786. * librdf/rdf_serializer.c: (librdf_get_serializer_factory):
  787. Default to serializer named "rdfxml" if nothing given to ensure we
  788. don't get another rdfxml serializer such as XMP.
  789. * librdf/rdf_serializer.c: (librdf_get_serializer_factory): Fix
  790. negative test for uri inequality.
  791. * librdf/rdf_parser.c: (librdf_get_parser_factory): Fix negative
  792. test for uri inequality.
  793. 2007-01-26 Dave Beckett <dave@dajobe.org>
  794. * Makefile.am: Revert touch -r change as it just creates a file
  795. called '-r' (reopen http://bugs.librdf.org/mantis/view.php?id=159)
  796. * Makefile.am: Reverse use of touch -r since it seems to fail on
  797. Solaris. Fixes http://bugs.librdf.org/mantis/view.php?id=159
  798. 2007-01-23 Dave Beckett <dave@dajobe.org>
  799. * configure.ac: RASQAL_MIN_VERSION 0.9.14
  800. * librdf/rdf_storage.c: (librdf_storage_node_stream_to_node_create):
  801. Allow copying NULL node1 and node2.