From: Bob D. <bd...@si...> - 2008-08-15 20:08:21
|
We have plans to introduce an XML output, but we can take it out for now. We'll do it post 2.0 I removed it an did a commit. - Bob On Fri, 2008-08-15 at 14:57 +0200, Zoltan Boszormenyi wrote: > Hi, > > another one, now it's a bit more serious, not fixable by a one-liner. > It started out with an observation: > * rlib_set_output_format_from_text() matches the passed-in string and > if the string doesn't match to any known format string, > TXT is assumed and r->format is set accordingly. > * rlib_set_output_format() accepts any number as format indicator. > this seems to be a bug by itself. > > I think there is an unintentional mixup in the defines. > > #define RLIB_CONTENT_TYPE_ERROR -1 > #define RLIB_CONTENT_TYPE_PDF 1 > #define RLIB_CONTENT_TYPE_HTML 2 > #define RLIB_CONTENT_TYPE_TXT 3 > #define RLIB_CONTENT_TYPE_CSV 4 > > #define RLIB_FORMAT_PDF 1 > #define RLIB_FORMAT_HTML 2 > #define RLIB_FORMAT_TXT 3 > #define RLIB_FORMAT_CSV 4 > #define RLIB_FORMAT_XML 5 > > And look at the usage patterns of r->format: > > rlib_make_report() uses r->format in a multi-conditional if() where > the following output formats are handled explicitely: HTML, TXT, CSV. > The last else (if all else fails) assumes PDF output is given. > r->format is matched against RLIB_FORMAT_* here. > RLIB_FORMAT_XML is not handled, rlib_xml_new_output_filter() > does not exist. > > rlib_get_content_type_as_text() matches r->format against > RLIB_CONTENT_TYPE_*. Also, the matching order is different > from rlib_make_report(). PDF, CSV and HTML is explicitely tested, > if all else fails TXT is assumed. > > Now, consider someone uses: > > rlib_set_output_format(RLIB_FORMAT_XML); > > It's valid reading only the API headers. But the result is unexpected: > > - rlib_execute() generates a PDF report > - rlib_get_content_type_as_text() returns the content of > RLIB_WEB_CONTENT_TYPE_TEXT with the proper charset > > So, this part needs rethinking. I think you need to decide which > part of the defines has to be deprecated deleted and use the other > set of the defines exclusively in the sources. Also, were there any > plans to introduce rlib_xml_new_output_filter()? Or only the > input filter as it exists now? > > Best regards, > Zoltán Böszörményi > > Zoltan Boszormenyi írta: > > Hi, > > > > another question. There's two difference between > > rlib_add_query_pointer_as() and rlib_add_query_as(): > > > > - The "sql" parameter string is strdup()ed by rlib_add_query_as() but > > not by rlib_add_query_pointer_as(). > > I guess it's intentional, that's why there's a distinction at all. > > > > - rlib_add_query_as() returns an error if "input_source" was not yet > > defined as an input source by one of the rlib_add_datasource_*() calls. > > But rlib_add_query_pointer_as() doesn't. And there's not a single C > > source > > under libsrc where this is rechecked later. This seems to be a bug, > > fix is attached. > > > > Best regards, > > Zoltán Böszörményi > > > > Zoltan Boszormenyi írta: > > > >> Hi, > >> > >> I was reviewing the function reference and crosschecking it > >> with the source. Some notes: > >> I think the source mixes up bitwise AND and logical AND. > >> * && works on expressions of the same type: > >> NUMBER && NUMBER (and performs logical AND) > >> STRING && STRING returns TRUE if both STRINGs are non-NULL > >> DATE && DATE would return TRUE always by intention > >> but there's a missing "return TRUE;" in the code, causing > >> double freeing. > >> Fix is attached. > >> * & works on NUMBERs only and performs bitwise or binary AND > >> but the naming in the source labels it as "logical AND" > >> I don't intend to change the naming in the source but it's good to know. > >> The wiki documentation lacked bitwise AND up to now. > >> Also, some others are also missing: > >> * N^M, a.k.a. power(N, M) > >> * chgdateof() > >> * dtosf() > >> > >> Best regards, > >> Zoltán Böszörményi > >> > >> Bob Doan írta: > >> > >> > >>> Hi Zoltan, > >>> > >>> All patches have been applied. > >>> > >>> We're ready for the next round :) > >>> > >>> - Bob > >>> > >>> On Mon, 2008-08-11 at 15:30 +0200, Zoltan Boszormenyi wrote: > >>> > >>> > >>> > >>>> Hi, > >>>> > >>>> here are the patches that make RLIB compile on Windows. > >>>> The patches are split up in a way to contain only one fix. > >>>> > >>>> There's one thing that's missing though, namely PHP. > >>>> PHP on Windows absolutely requires MSVC, the PHP/Win > >>>> distribution(s) doesn't even contain php.h, etc., only the stub > >>>> library called php5ts.lib to make it possible to link with php5ts.dll. > >>>> Making a Zend extension under Windows starts with compiling > >>>> PHP from source, it seems... > >>>> > >>>> Best regards, > >>>> Zoltán Böszörményi > >>>> > >>>> ------------------------------------------------------------------------- > >>>> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > >>>> Build the coolest Linux based applications with Moblin SDK & win great prizes > >>>> Grand prize is a trip for two to an Open Source event anywhere in the world > >>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ > >>>> _______________________________________________ Rlib-devel mailing list Rli...@li... https://lists.sourceforge.net/lists/listinfo/rlib-devel > >>>> > >>>> > >>>> > >>> ------------------------------------------------------------------------- > >>> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > >>> Build the coolest Linux based applications with Moblin SDK & win great prizes > >>> Grand prize is a trip for two to an Open Source event anywhere in the world > >>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ > >>> _______________________________________________ > >>> Rlib-devel mailing list > >>> Rli...@li... > >>> https://lists.sourceforge.net/lists/listinfo/rlib-devel > >>> > >>> > >>> > >> > >> ------------------------------------------------------------------------ > >> > >> ------------------------------------------------------------------------- > >> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > >> Build the coolest Linux based applications with Moblin SDK & win great prizes > >> Grand prize is a trip for two to an Open Source event anywhere in the world > >> http://moblin-contest.org/redirect.php?banner_id=100&url=/ > >> ------------------------------------------------------------------------ > >> > >> _______________________________________________ > >> Rlib-devel mailing list > >> Rli...@li... > >> https://lists.sourceforge.net/lists/listinfo/rlib-devel > >> > > > > > > ------------------------------------------------------------------------ > > > > ------------------------------------------------------------------------- > > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > > Build the coolest Linux based applications with Moblin SDK & win great prizes > > Grand prize is a trip for two to an Open Source event anywhere in the world > > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > Rlib-devel mailing list > > Rli...@li... > > https://lists.sourceforge.net/lists/listinfo/rlib-devel > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > Rlib-devel mailing list > Rli...@li... > https://lists.sourceforge.net/lists/listinfo/rlib-devel |