Re: [lo-4.2] regview fails to show rdb files
No trivial issues encountered. -O was the only change needed Thanks Neeraj ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
thanks Stephan, -O works. Sorry, I'm coming back to LO after 6 months. While last time, I was fairly new, so went with 4.0 release version. this time I am starting with beta 4.2 and skipped 4.1 entirely. I have only tried compilation . During the week, I'll have more time to try the app itself. I might come back with more trivial issues then. neeraj On Fri, Jan 10, 2014 at 4:25 AM, Stephan Bergmann sberg...@redhat.comwrote: On 01/10/2014 09:46 AM, Stephan Bergmann wrote: * Looks like starting with LO 4.2 cppumaker has a problem when the specified output directory is not an absolute path (incl. the case where you do not explicitly specify an output directory via -O at all). As a workaround, try cppumaker -O $PWD -Gc offapi.rdb types.rdb myfile.rdb and I'll see to get this fixed. Fixed on master now as http://cgit.freedesktop.org/ libreoffice/core/commit/?id=d320760dc1c9d6501d84849219b4d9fc6c62b85b codemaker: fix^2 invalid string index access, backports to LO 4.2[.0] pending. Stephan -- = Intuition - is the inability to figure out the facts on which we based the decision. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
On 01/09/2014 05:33 PM, Neeraj Rai wrote: 3. cppumaker -BUCR -Gc offapi.rdb types.rdb myfile.rdb 4.2 doesn't support options -BUR so I took them out leaving -C and it builds but the output dirname is .org instead of org * Yes, -BUCR is gone since LO 4.1, see https://wiki.documentfoundation.org/ReleaseNotes/4.1#javamaker_.2F_cppumaker. * Looks like starting with LO 4.2 cppumaker has a problem when the specified output directory is not an absolute path (incl. the case where you do not explicitly specify an output directory via -O at all). As a workaround, try cppumaker -O $PWD -Gc offapi.rdb types.rdb myfile.rdb and I'll see to get this fixed. Stephan ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
On 01/10/2014 09:46 AM, Stephan Bergmann wrote: * Looks like starting with LO 4.2 cppumaker has a problem when the specified output directory is not an absolute path (incl. the case where you do not explicitly specify an output directory via -O at all). As a workaround, try cppumaker -O $PWD -Gc offapi.rdb types.rdb myfile.rdb and I'll see to get this fixed. Fixed on master now as http://cgit.freedesktop.org/libreoffice/core/commit/?id=d320760dc1c9d6501d84849219b4d9fc6c62b85b codemaker: fix^2 invalid string index access, backports to LO 4.2[.0] pending. Stephan ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
Hi Stephan, I had built an extension last year with help from you and others on this list. I am having issues building it with 4.2 . The build had 7 steps and fails at 3rd with 4.2. would you be able to point me in the right direction. 1. idlc -C -I my file.IDL 2.regmerge myfile.rdb /UCR myfile.urd 3. cppumaker -BUCR -Gc offapi.rdb types.rdb myfile.rdb 4.2 doesn't support options -BUR so I took them out leaving -C and it builds but the output dirname is .org instead of org 4. gcc options include myfile_impl.cxx Fails with missing XInterface.hpp 5. gcc -o myshlib.so 6. Zip my file.oxt 7. Unopkg add -f my file.oxt Thanks Neeraj ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
On 12/10/2013 08:55 PM, Neeraj Rai wrote: Traceback (most recent call last): File libreconverter-master/libreconverter.py, line 18, in module import loutils File libreconverter-master/loutils.py, line 39, in module import uno File libreoffice-4.0/lib/libreoffice/program/uno.py, line 38, in module _g_ctx = pyuno.getComponentContext( ) SystemError: Error during bootstrapping uno (RuntimeException):missing whitespace before attribute in file:///path/libreoffice-4.2/lib/libreoffice/program/types/oovbaapi.rdb missing whitespace before attribute is an error message generated in xmlreader/source/xmlreader.cxx, so it smells like your setup is such that it erroneously declares the oovbaapi.rdb as a services rdb (which are in XML format today) rather than a types rdb (which are in binary format). What also looks odd is that your setup apparently mixes libreoffice-4.0/lib/libreoffice/program/uno.py and libreoffice-4.2/lib/libreoffice/program/types/oovbaapi.rdb. What I noticed is that libreconverter's loutils.py has two bugs, one is a missing comma that made it completely nonfunctional at least for me and is fixed with https://github.com/colonelqubit/libreconverter/commit/7e0f81ac96106ccb4baff4951126885841b1e887 Merge pull request #1 from stbergmann/master now. The other is that it hardcodes the location of the LO installation as /usr/lib/libreoffice/program in the _lopaths variable. You presumably do have a LO installation there, but it likely doesn't match the LO installation from which you take the python executable to run libreconverter.py with. What worked for me, trying it out with a local LO 4.2 build, is to patch loutils.py like diff --git a/loutils.py b/loutils.py index 4bac3e1..c2d1364 100644 --- a/loutils.py +++ b/loutils.py @@ -19,7 +19,7 @@ LIBREOFFICE_PORT = 8100 # Find LibreOffice. _lopaths=( -('/usr/lib/libreoffice/program', '/usr/lib/libreoffice/program'), +('/home/sbergman/lo-4.2/core/instdir/program', '/home/sbergman/lo-4.2/core/instdir/program'), ) to match the LO installation of the python executable used when running libreconverter.py, /home/sbergman/lo-4.2/core/instdir/program/python libreconverter.py test-headless3.xlsx output.csv Stephan ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
Hi Stephan, that was it. I had modified the loutil.py to add both 4.0 and 4.2 and since 4.0 was before 4.2, it was being picked up. With 4.2, the python version from 4.0 was messing things up. After I removed program 4.0 etc, it works for 4.2 as expected. For some reason it work for me with and without , . thanks for the help and time. Neeraj On Wed, Dec 11, 2013 at 3:36 AM, Stephan Bergmann sberg...@redhat.comwrote: On 12/10/2013 08:55 PM, Neeraj Rai wrote: Traceback (most recent call last): File libreconverter-master/libreconverter.py, line 18, in module import loutils File libreconverter-master/loutils.py, line 39, in module import uno File libreoffice-4.0/lib/libreoffice/program/uno.py, line 38, in module _g_ctx = pyuno.getComponentContext( ) SystemError: Error during bootstrapping uno (RuntimeException):missing whitespace before attribute in file:///path/libreoffice-4.2/lib/libreoffice/program/types/oovbaapi.rdb missing whitespace before attribute is an error message generated in xmlreader/source/xmlreader.cxx, so it smells like your setup is such that it erroneously declares the oovbaapi.rdb as a services rdb (which are in XML format today) rather than a types rdb (which are in binary format). What also looks odd is that your setup apparently mixes libreoffice-4.0/lib/libreoffice/program/uno.py and libreoffice-4.2/lib/ libreoffice/program/types/oovbaapi.rdb. What I noticed is that libreconverter's loutils.py has two bugs, one is a missing comma that made it completely nonfunctional at least for me and is fixed with https://github.com/colonelqubit/libreconverter/commit/ 7e0f81ac96106ccb4baff4951126885841b1e887 Merge pull request #1 from stbergmann/master now. The other is that it hardcodes the location of the LO installation as /usr/lib/libreoffice/program in the _lopaths variable. You presumably do have a LO installation there, but it likely doesn't match the LO installation from which you take the python executable to run libreconverter.py with. What worked for me, trying it out with a local LO 4.2 build, is to patch loutils.py like diff --git a/loutils.py b/loutils.py index 4bac3e1..c2d1364 100644 --- a/loutils.py +++ b/loutils.py @@ -19,7 +19,7 @@ LIBREOFFICE_PORT = 8100 # Find LibreOffice. _lopaths=( -('/usr/lib/libreoffice/program', '/usr/lib/libreoffice/program'), +('/home/sbergman/lo-4.2/core/instdir/program', '/home/sbergman/lo-4.2/core/instdir/program'), ) to match the LO installation of the python executable used when running libreconverter.py, /home/sbergman/lo-4.2/core/instdir/program/python libreconverter.py test-headless3.xlsx output.csv Stephan -- = Intuition - is the inability to figure out the facts on which we based the decision. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
On 12/10/2013 05:18 AM, Neeraj Rai wrote: I pulled a 4.2 version on Nov 23 and again today. Both seem to show this behaviour. The regview doesn't show the rdb file $./instdir/ure/bin/regview ./instdir/program/types/oovbaapi.rdb open registry ./instdir/program/types/oovbaapi.rdb failed I created an rdb file using idlc and regmerge, which has no such issue. I suspect this is causing some other unexplained issues for me on centos 6.2. Has anyone else run into this ? Any advise on how to approach would be appreciated. Beginning with LO 4.1, we move away from the old .rdb format for UNOIDL type data and gradually replace it with a new format (that is more compact and faster to process). The LO SDK still uses the old format for now. If you build .rdb files for external applications or LO extensions, you will do so with the existing SDK tools (idlc, regmerge, regview) and the generated files are in the old format. The .rdb files that are included in LO itself (ure/share/misc/types.rdb, program/types/offapi.rdb, program/types/oovbaapi.rdb) already use the new format since LO 4.1. This should be mostly transparent to SDK users, as most of the tools that operate on .rdb files (cppumaker, javamaker, etc.) will accept both the old and the new format as input. (And at runtime, the URE and LO of course also accept both formats now.) Only the low-level tools regmerge and regview have not been updated, they continue to only work with the old format. However, beginning with LO 4.2, there is a new tool unoidl-read to convert any .rdb file (both old and new format) into readable form. For now, it is only a build-time tool (in workdir; and if you call it manually you need to extend LD_LIBRARY_PATH so it finds its libs), and you call it with the rdb file to translate, preceded by any rdb files necessary to resolve types mentioned in later rdb files. That is, to show the content of instdir/program/types/oovbaapi.rdb on Linux, do LD_LIBRARY_PATH=instdir/ure/lib workdir/LinkTarget/Executable/unoidl-read instdir/ure/share/misc/types.rdb instdir/program/types/offapi.rdb instdir/program/types/oovbaapi.rdb (And yes, I really need to write all this down somewhere...) Stephan ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
Hi Stephan, thanks for the explanation- it makes things clear. Would you happen to know if running an uno server or connecting to it, is affected by this? Background: Robinson Tyron put up on github recently a python utility to convert xls sheets to csv using headless option in response to another post https://github.com/colonelqubit/libreconverter I ran into issues running libreconverter.py It works with 4.0.0.3 but fails for 4.2 with error about whitespace in oovbaapi.rdb I tried viewing the file and had error, so posted this issue. I don't have immediate need to see .rdb files thanks Neeraj On Tue, Dec 10, 2013 at 5:59 AM, Stephan Bergmann sberg...@redhat.comwrote: On 12/10/2013 05:18 AM, Neeraj Rai wrote: I pulled a 4.2 version on Nov 23 and again today. Both seem to show this behaviour. The regview doesn't show the rdb file $./instdir/ure/bin/regview ./instdir/program/types/oovbaapi.rdb open registry ./instdir/program/types/oovbaapi.rdb failed I created an rdb file using idlc and regmerge, which has no such issue. I suspect this is causing some other unexplained issues for me on centos 6.2. Has anyone else run into this ? Any advise on how to approach would be appreciated. Beginning with LO 4.1, we move away from the old .rdb format for UNOIDL type data and gradually replace it with a new format (that is more compact and faster to process). The LO SDK still uses the old format for now. If you build .rdb files for external applications or LO extensions, you will do so with the existing SDK tools (idlc, regmerge, regview) and the generated files are in the old format. The .rdb files that are included in LO itself (ure/share/misc/types.rdb, program/types/offapi.rdb, program/types/oovbaapi.rdb) already use the new format since LO 4.1. This should be mostly transparent to SDK users, as most of the tools that operate on .rdb files (cppumaker, javamaker, etc.) will accept both the old and the new format as input. (And at runtime, the URE and LO of course also accept both formats now.) Only the low-level tools regmerge and regview have not been updated, they continue to only work with the old format. However, beginning with LO 4.2, there is a new tool unoidl-read to convert any .rdb file (both old and new format) into readable form. For now, it is only a build-time tool (in workdir; and if you call it manually you need to extend LD_LIBRARY_PATH so it finds its libs), and you call it with the rdb file to translate, preceded by any rdb files necessary to resolve types mentioned in later rdb files. That is, to show the content of instdir/program/types/oovbaapi.rdb on Linux, do LD_LIBRARY_PATH=instdir/ure/lib workdir/LinkTarget/Executable/unoidl-read instdir/ure/share/misc/types.rdb instdir/program/types/offapi.rdb instdir/program/types/oovbaapi.rdb (And yes, I really need to write all this down somewhere...) Stephan -- = Intuition - is the inability to figure out the facts on which we based the decision. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
On 12/10/2013 05:06 PM, Neeraj Rai wrote: thanks for the explanation- it makes things clear. Would you happen to know if running an uno server or connecting to it, is affected by this? Background: Robinson Tyron put up on github recently a python utility to convert xls sheets to csv using headless option in response to another post https://github.com/colonelqubit/libreconverter I ran into issues running libreconverter.py It works with 4.0.0.3 but fails for 4.2 with error about whitespace in oovbaapi.rdb That's odd. I just tried with a fresh checkout of that libreconverter and it works fine here (modulo an unrelated problem with how it finds the LO installation) against my local LO 4.2 build. What is the exact error output you get, and what's the input file you feed into it (can you make it available somewhere)? Stephan ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [lo-4.2] regview fails to show rdb files
Hi Stephan, That's encouraging if it works for you. It is possibly an issue with my setup. But I may need help figuring it out. The error I get is listed below : and the file is attached. -- error.txt Traceback (most recent call last): File libreconverter-master/libreconverter.py, line 18, in module import loutils File libreconverter-master/loutils.py, line 39, in module import uno File libreoffice-4.0/lib/libreoffice/program/uno.py, line 38, in module _g_ctx = pyuno.getComponentContext( ) SystemError: Error during bootstrapping uno (RuntimeException):missing whitespace before attribute in file:///path/libreoffice-4.2/lib/libreoffice/program/types/oovbaapi.rdb -- error.txt On Tue, Dec 10, 2013 at 11:27 AM, Stephan Bergmann sberg...@redhat.comwrote: On 12/10/2013 05:06 PM, Neeraj Rai wrote: thanks for the explanation- it makes things clear. Would you happen to know if running an uno server or connecting to it, is affected by this? Background: Robinson Tyron put up on github recently a python utility to convert xls sheets to csv using headless option in response to another post https://github.com/colonelqubit/libreconverter I ran into issues running libreconverter.py It works with 4.0.0.3 but fails for 4.2 with error about whitespace in oovbaapi.rdb That's odd. I just tried with a fresh checkout of that libreconverter and it works fine here (modulo an unrelated problem with how it finds the LO installation) against my local LO 4.2 build. What is the exact error output you get, and what's the input file you feed into it (can you make it available somewhere)? Stephan -- = Intuition - is the inability to figure out the facts on which we based the decision. test-headless3.xlsx Description: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[lo-4.2] regview fails to show rdb files
Hi , I pulled a 4.2 version on Nov 23 and again today. Both seem to show this behaviour. The regview doesn't show the rdb file $./instdir/ure/bin/regview ./instdir/program/types/oovbaapi.rdb open registry ./instdir/program/types/oovbaapi.rdb failed I created an rdb file using idlc and regmerge, which has no such issue. I suspect this is causing some other unexplained issues for me on centos 6.2. Has anyone else run into this ? Any advise on how to approach would be appreciated. thx Neeraj -- = Intuition - is the inability to figure out the facts on which we based the decision. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice