Exception during RML report generation in OpenERP 7 - odoo

I am getting the exceptions while PDF generation.
This happen sometimes not always. Sometime first exception occurs and sometime second.
Here are the stack traces capturing the problems. Almost similar to first exception identified for django at Troubleshoot reportlab heisenbug
But this doesn't seems to work in my case.
File "/home/openerp/clean_oe7/server/openerp/report/report_sxw.py", line 533, in create_single_pdf
pdf = create_doc(etree.tostring(processed_rml),rml_parser.localcontext,logo,title.encode('utf8'))
File "/home/openerp/clean_oe7/server/openerp/report/interface.py", line 206, in create_pdf
obj.render()
File "/home/openerp/clean_oe7/server/openerp/report/render/render.py", line 59, in render
self._result = self._render()
File "/home/openerp/clean_oe7/server/openerp/report/render/rml.py", line 41, in _render
return rml2pdf.parseNode(self.rml, self.localcontext, images=self.bin_datas, path=self.path,title=self.title)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1032, in parseNode
r.render(fp)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 328, in render
pt_obj.render(el)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1003, in render
fis += r.render(node_story)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 897, in render
return process_story(node_story)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 890, in process_story
flow = self._flowable(node)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 813, in _flowable
return self._table(node)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 697, in _table
fl = self._flowable(n, extra_style=paraStyle)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 766, in _flowable
result.append(platypus.Paragraph(i, style, **(utils.attr_get(node, [], {'bulletText':'str'}))))
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 827, in __init__
self._setup(text, style, bulletText, frags, cleanBlockQuotedText)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 842, in _setup
style, frags, bulletTextFrags = _parser.parse(text,style)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1058, in parse
return self._complete_parse()
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1061, in _complete_parse
del self._seq
AttributeError: ParaParser instance has no attribute '_seq'
File "/home/openerp/clean_oe7/server/openerp/report/report_sxw.py", line 442, in create
pdf = create_doc(etree.tostring(processed_rml),rml_parser.localcontext,logo,title.encode('utf8'))
File "/home/openerp/clean_oe7/server/openerp/report/interface.py", line 206, in create_pdf
obj.render()
File "/home/openerp/clean_oe7/server/openerp/report/render/render.py", line 59, in render
self._result = self._render()
File "/home/openerp/clean_oe7/server/openerp/report/render/rml.py", line 41, in _render
return rml2pdf.parseNode(self.rml, self.localcontext, images=self.bin_datas, path=self.path,title=self.title)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1032, in parseNode
r.render(fp)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 328, in render
pt_obj.render(el)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1003, in render
fis += r.render(node_story)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 897, in render
return process_story(node_story)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 890, in process_story
flow = self._flowable(node)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 813, in _flowable
return self._table(node)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 697, in _table
fl = self._flowable(n, extra_style=paraStyle)
File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 766, in _flowable
result.append(platypus.Paragraph(i, style, **(utils.attr_get(node, [], {'bulletText':'str'}))))
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 827, in __init__
self._setup(text, style, bulletText, frags, cleanBlockQuotedText)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 842, in _setup
style, frags, bulletTextFrags = _parser.parse(text,style)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1057, in parse
self.close() # force parsing to complete
File "/usr/lib/python2.7/dist-packages/reportlab/lib/xmllib.py", line 521, in close
self.parser.close()
AttributeError: 'NoneType' object has no attribute 'close'

Related

Odoo showing KeyError: 'last_path_node' after migrate from v12 to v13 with Openupgrade

I migrate my odoo instance from v12 to v13 using Openupgrade without errors. I also made change in my code and update my custom modules using
python3 odoo-bin --addons-path="./addons, ./extra_addons, ./OCA/contract" -p 8069 -d database_name -u module_name
also without error. My odoo instance is apparently loading without error, I can even see the odoo main interface but when and click an element from the main menu (lets say "contacts") it shows "Internal Server Error" and when I check the logs I can see the following errors " path = options['last_path_node']
KeyError: 'last_path_node'"
Where is the full log of the error
**Contexto del error:
Vista `App Drawer - Web Client`
[view_id: 941, xml_id: web_responsive.webclient_bootstrap, model: n/a, parent_id: 178]
2022-09-08 13:33:39,610 19400 INFO wimax13 werkzeug: 127.0.0.1 - - [08/Sep/2022 13:33:39] "GET /web HTTP/1.1" 500 - 386 0.534 1.152
2022-09-08 13:33:39,973 19400 ERROR wimax13 werkzeug: Error on request:
Traceback (most recent call last):
File "/home/ernesto/Programming/odoo/wimax13/lib/python3.6/site-packages/werkzeug/serving.py", line 270, in run_wsgi
execute(self.server.app)
File "/home/ernesto/Programming/odoo/wimax13/lib/python3.6/site-packages/werkzeug/serving.py", line 258, in execute
application_iter = app(environ, start_response)
File "/home/ernesto/Programming/odoo/wimax13/odoo/service/server.py", line 439, in app
return self.app(e, s)
File "/home/ernesto/Programming/odoo/wimax13/odoo/service/wsgi_server.py", line 142, in application
return application_unproxied(environ, start_response)
File "/home/ernesto/Programming/odoo/wimax13/odoo/service/wsgi_server.py", line 117, in application_unproxied
result = odoo.http.root(environ, start_response)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 1287, in __call__
return self.dispatch(environ, start_response)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 1257, in __call__
return self.app(environ, start_wrapped)
File "/home/ernesto/Programming/odoo/wimax13/lib/python3.6/site-packages/werkzeug/wsgi.py", line 766, in __call__
return self.app(environ, start_response)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 1457, in dispatch
result = ir_http._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/addons/website/models/ir_http.py", line 172, in _dispatch
response = super(Http, cls)._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/addons/auth_signup/models/ir_http.py", line 19, in _dispatch
return super(Http, cls)._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/addons/web_editor/models/ir_http.py", line 21, in _dispatch
return super(IrHttp, cls)._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/addons/utm/models/ir_http.py", line 29, in _dispatch
response = super(IrHttp, cls)._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/addons/http_routing/models/ir_http.py", line 519, in _dispatch
result = super(IrHttp, cls)._dispatch()
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_http.py", line 238, in _dispatch
return cls._handle_exception(e)
File "/home/ernesto/Programming/odoo/wimax13/addons/utm/models/ir_http.py", line 34, in _handle_exception
response = super(IrHttp, cls)._handle_exception(exc)
File "/home/ernesto/Programming/odoo/wimax13/addons/http_routing/models/ir_http.py", line 610, in _handle_exception
return super(IrHttp, cls)._handle_exception(exception)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_http.py", line 206, in _handle_exception
return request._handle_exception(exception)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 750, in _handle_exception
return super(HttpRequest, self)._handle_exception(exception)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 310, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/home/ernesto/Programming/odoo/wimax13/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_http.py", line 234, in _dispatch
result = request.dispatch()
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 809, in dispatch
r = self._call_function(**self.params)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 350, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/home/ernesto/Programming/odoo/wimax13/odoo/service/model.py", line 94, in wrapper
return f(dbname, *args, **kwargs)
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 342, in checked_call
result.flatten()
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 1236, in flatten
self.response.append(self.render())
File "/home/ernesto/Programming/odoo/wimax13/odoo/http.py", line 1229, in render
return env["ir.ui.view"].render_template(self.template, self.qcontext)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_ui_view.py", line 1191, in render_template
return self.browse(self.get_view_id(template)).render(values, engine)
File "/home/ernesto/Programming/odoo/wimax13/addons/website/models/ir_ui_view.py", line 336, in render
return super(View, self).render(values, engine=engine, minimal_qcontext=minimal_qcontext)
File "/home/ernesto/Programming/odoo/wimax13/addons/web_editor/models/ir_ui_view.py", line 27, in render
return super(IrUiView, self).render(values=values, engine=engine, minimal_qcontext=minimal_qcontext)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_ui_view.py", line 1199, in render
return self.env[engine].render(self.id, qcontext)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_qweb.py", line 58, in render
result = super(IrQWeb, self).render(id_or_xml_id, values=values, **context)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/qweb.py", line 260, in render
self.compile(template, options)(self, body.append, values or {})
File "<decorator-gen-54>", line 2, in compile
File "/home/ernesto/Programming/odoo/wimax13/odoo/tools/cache.py", line 90, in lookup
value = d[key] = self.method(*args, **kwargs)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/ir_qweb.py", line 113, in compile
return super(IrQWeb, self).compile(id_or_xml_id, options=options)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/qweb.py", line 277, in compile
element, document = self.get_template(template, options)
File "/home/ernesto/Programming/odoo/wimax13/odoo/addons/base/models/qweb.py", line 364, in get_template
path = options['last_path_node']
KeyError: 'last_path_node' - - -**
Based on the third line of your Traceback, your error seems to be related with this view:
view_id: 941, xml_id: web_responsive.webclient_bootstrap
You can access this view using its id: 941 in this kind of url:
https://your-oerp.odoo.com/web?#id=941&action=28&model=ir.ui.view&view_type=form
to provide me its content... to investigate the error
Is this view (with relativ high id: 941) "not native" / part of your custom module ?
On the other hand, this view name (id:941): "web_responsive.webclient_bootstrap" doesn t exist in Odoo 13 and seems to have been replaced:
In Odoo 13, the existing bootstrap-related views are:
web._assets_bootstrap
web.webclient_bootstrap
web_enterprise.webclient_bootstrap
web_studio.webclient_bootstrap

pyshark "TypeError: sequence item 6: expected str instance, _io.TextIOWrapper found"

I am using pyshark for live packet capture. when I pass a parameter output_file = myFilObject for saving captures to a file,
getting following error on sniffing line. If output_file parameter is removed, this works absolutely fine. Please suggest.
MySampleCode:
import pyshark
def capturePacket():
outputF = open('capturepcap.pcap', 'w')
cap = pyshark.LiveCapture(interface='Ethernet 8', output_file=outputF)
cap.sniff(timeout=60)
outputF.close()
Error:
Traceback (most recent call last):
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "c:\Users\wxyz\.vscode\extensions\ms-python.python-2022.6.2\pythonFiles\lib\python\debugpy\__main__.py", line 45, in <module>
cli.main()
File "c:\Users\wxyz\.vscode\extensions\ms-python.python-2022.6.2\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 444, in main
run()
File "c:\Users\wxyz\.vscode\extensions\ms-python.python-2022.6.2\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 285, in run_file
runpy.run_path(target_as_str, run_name=compat.force_str("__main__"))
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 269, in run_path
return _run_module_code(code, init_globals, run_name,
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 96, in _run_module_code
_run_code(code, mod_globals, init_globals,
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "c:\Users\wxyz\Documents\automation\practice_set_script\paket_capture\basic_packetCapture.py", line 29, in <module>
capturePacket()
File "c:\Users\wxyz\Documents\automation\practice_set_script\paket_capture\basic_packetCapture.py", line 22, in capturePacket
cap.sniff(timeout=60)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\site-packages\pyshark\capture\capture.py", line 137, in load_packets
self.apply_on_packets(keep_packet, timeout=timeout, packet_count=packet_count)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\site-packages\pyshark\capture\capture.py", line 274, in apply_on_packets
return self.eventloop.run_until_complete(coro)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 641, in run_until_complete
return future.result()
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\asyncio\tasks.py", line 445, in wait_for
return fut.result()
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\site-packages\pyshark\capture\capture.py", line 283, in packets_from_tshark
tshark_process = await self._get_tshark_process(packet_count=packet_count)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\site-packages\pyshark\capture\live_capture.py", line 94, in _get_tshark_process
tshark = await super(LiveCapture, self)._get_tshark_process(packet_count=packet_count, stdin=read)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\site-packages\pyshark\capture\capture.py", line 399, in _get_tshark_process
self._log.debug("Creating TShark subprocess with parameters: " + " ".join(parameters))
TypeError: sequence item 6: expected str instance, _io.TextIOWrapper found
Error on reading from the event loop self pipe
loop: <ProactorEventLoop running=True closed=False debug=False>
Traceback (most recent call last):
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\asyncio\proactor_events.py", line 779, in _loop_self_reading
f = self._proactor.recv(self._ssock, 4096)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\asyncio\windows_events.py", line 450, in recv
self._register_with_iocp(conn)
File "C:\Users\wxyz\AppData\Local\Programs\Python\Python310\lib\asyncio\windows_events.py", line 723, in _register_with_iocp
_overlapped.CreateIoCompletionPort(obj.fileno(), self._iocp, 0, 0)
OSError: [WinError 87] The parameter is incorrect
PS C:\Users\wxyz\Documents\automation\practice_set_script\paket_capture>
The issue in your code is these lines:
outputF = open('capturepcap.pcap', 'w')
cap = pyshark.LiveCapture(interface='Ethernet 8', output_file=outputF)
The output_file parameter is a string and not a io.TextIOWrapper
:param output_file: A string of a file to write every read packet into (useful when filtering).
So this works:
import pyshark
def capturePacket():
cap = pyshark.LiveCapture(interface='en0', output_file='capturepcap.pcap')
cap.sniff(timeout=60)
capturePacket()
Here is a reference that I put together on using PyShark

pandas read_csv with storage_options working locally but not in Dataflow

I am trying to import data from an API into my GBQ and want to use dataflow.
Due to reasons unknown and unimaginable to me, the API merely returns a URL of a ".csv.gz", which I then need to download and process before pushing the data into GBQ.
Furthermore, the API has authentication with a bearer token, so I was looking for a method to handle download and parsing of the data as well as the auth and found:
pd.read_csv('https://app.SOMEPROVIDER.com/api/reporting/download/SOMEID.csv.gz', storage_options={'Authorization': 'Bearer '+ bearer_token}, compression='gzip', header=0, sep=',', quotechar='"')
which works fantastically when using it in my Beam pipeline locally.
However, as soon as I upload the pipeline to dataflow and run it there, I get the error message
ValueError: storage_options passed with file object or non-fsspec file path
Full trace:
"apache_beam/runners/common.py", line 1223, in
apache_beam.runners.common.DoFnRunner.process File
"apache_beam/runners/common.py", line 572, in
apache_beam.runners.common.SimpleInvoker.invoke_process File
".\filename.py", line 144, in process File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
610, in read_csv return _read(filepath_or_buffer, kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
462, in _read parser = TextFileReader(filepath_or_buffer, **kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
819, in __init__ self._engine = self._make_engine(self.engine) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1050, in _make_engine return mapping[engine](self.f, **self.options) #
type: ignore[call-arg] File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1867, in __init__ self._open_handles(src, kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1362, in _open_handles self.handles = get_handle( File
"/usr/local/lib/python3.8/site-packages/pandas/io/common.py", line
558, in get_handle ioargs = _get_filepath_or_buffer( File
"/usr/local/lib/python3.8/site-packages/pandas/io/common.py", line
286, in _get_filepath_or_buffer raise ValueError( ValueError:
storage_options passed with file object or non-fsspec file path During
handling of the above exception, another exception occurred: Traceback
(most recent call last): File
"/usr/local/lib/python3.8/site-packages/dataflow_worker/batchworker.py",
line 651, in do_work work_executor.execute() File
"/usr/local/lib/python3.8/site-packages/dataflow_worker/executor.py",
line 179, in execute op.start() File
"dataflow_worker/shuffle_operations.py", line 63, in
dataflow_worker.shuffle_operations.GroupedShuffleReadOperation.start
File "dataflow_worker/shuffle_operations.py", line 64, in
dataflow_worker.shuffle_operations.GroupedShuffleReadOperation.start
File "dataflow_worker/shuffle_operations.py", line 79, in
dataflow_worker.shuffle_operations.GroupedShuffleReadOperation.start
File "dataflow_worker/shuffle_operations.py", line 80, in
dataflow_worker.shuffle_operations.GroupedShuffleReadOperation.start
File "dataflow_worker/shuffle_operations.py", line 84, in
dataflow_worker.shuffle_operations.GroupedShuffleReadOperation.start
File "apache_beam/runners/worker/operations.py", line 353, in
apache_beam.runners.worker.operations.Operation.output File
"apache_beam/runners/worker/operations.py", line 215, in
apache_beam.runners.worker.operations.SingletonConsumerSet.receive
File "dataflow_worker/shuffle_operations.py", line 261, in
dataflow_worker.shuffle_operations.BatchGroupAlsoByWindowsOperation.process
File "dataflow_worker/shuffle_operations.py", line 268, in
dataflow_worker.shuffle_operations.BatchGroupAlsoByWindowsOperation.process
File "apache_beam/runners/worker/operations.py", line 353, in
apache_beam.runners.worker.operations.Operation.output File
"apache_beam/runners/worker/operations.py", line 215, in
apache_beam.runners.worker.operations.SingletonConsumerSet.receive
File "apache_beam/runners/worker/operations.py", line 712, in
apache_beam.runners.worker.operations.DoOperation.process File
"apache_beam/runners/worker/operations.py", line 713, in
apache_beam.runners.worker.operations.DoOperation.process File
"apache_beam/runners/common.py", line 1225, in
apache_beam.runners.common.DoFnRunner.process File
"apache_beam/runners/common.py", line 1290, in
apache_beam.runners.common.DoFnRunner._reraise_augmented File
"apache_beam/runners/common.py", line 1223, in
apache_beam.runners.common.DoFnRunner.process File
"apache_beam/runners/common.py", line 752, in
apache_beam.runners.common.PerWindowInvoker.invoke_process File
"apache_beam/runners/common.py", line 875, in
apache_beam.runners.common.PerWindowInvoker._invoke_process_per_window
File "apache_beam/runners/common.py", line 1386, in
apache_beam.runners.common._OutputProcessor.process_outputs File
"apache_beam/runners/worker/operations.py", line 215, in
apache_beam.runners.worker.operations.SingletonConsumerSet.receive
File "apache_beam/runners/worker/operations.py", line 712, in
apache_beam.runners.worker.operations.DoOperation.process File
"apache_beam/runners/worker/operations.py", line 713, in
apache_beam.runners.worker.operations.DoOperation.process File
"apache_beam/runners/common.py", line 1225, in
apache_beam.runners.common.DoFnRunner.process File
"apache_beam/runners/common.py", line 1306, in
apache_beam.runners.common.DoFnRunner._reraise_augmented File
"apache_beam/runners/common.py", line 1223, in
apache_beam.runners.common.DoFnRunner.process File
"apache_beam/runners/common.py", line 572, in
apache_beam.runners.common.SimpleInvoker.invoke_process File
".\filename.py", line 144, in process File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
610, in read_csv return _read(filepath_or_buffer, kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
462, in _read parser = TextFileReader(filepath_or_buffer, **kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
819, in __init__ self._engine = self._make_engine(self.engine) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1050, in _make_engine return mapping[engine](self.f, **self.options) #
type: ignore[call-arg] File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1867, in __init__ self._open_handles(src, kwds) File
"/usr/local/lib/python3.8/site-packages/pandas/io/parsers.py", line
1362, in _open_handles self.handles = get_handle( File
"/usr/local/lib/python3.8/site-packages/pandas/io/common.py", line
558, in get_handle ioargs = _get_filepath_or_buffer( File
"/usr/local/lib/python3.8/site-packages/pandas/io/common.py", line
286, in _get_filepath_or_buffer raise ValueError( ValueError:
storage_options passed with file object or non-fsspec file path [while
running 'Fetch actual report data'] ```
Does anyone know why that works locally but not in the cloud? I assume it might have to do with the filesystem and temporary files - but then the error message does not make a lot of sense...
According to the the pandas doc, the storage_options parameter is handed to urllib for https links and only to fsspec for s3 and gcs paths. see here
It turned out it was just a version issue. The interpretation of the storage options argument as authorization info did not exist in the pandas version that is included in the dataflow images and when I passed a local "wheel" of a the newest available pandas version with the --extra_package parameter, the issue resolved itself.

Blender throws keyframe error when exporting as gltf (glb) file with animations - Key.path_resolve could not be resolved

I am pretty new to blender, animations and gltf. I have successfully created my 3d model and was able to export that as glb file. Currently, I am trying to add a walking animation but the export to gltf with animations doesn't work. This is the error that the exporter is throwing:
Python: Traceback (most recent call last):
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\__init__.py", line 575, in execute
return gltf2_blender_export.save(context, export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 46, in save
json, buffer = __export(export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 63, in __export
__gather_gltf(exporter, export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 72, in __gather_gltf
active_scene_idx, scenes, animations = gltf2_blender_gather.gather_gltf2(export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 39, in gather_gltf2
animations += __gather_animations(blender_scene, export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 83, in __gather_animations
animations_, merged_tracks = gltf2_blender_gather_animations.gather_animations(_blender_object, merged_tracks, len(animations), export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animations.py", line 76, in gather_animations
animation = __gather_animation(blender_action, blender_object, export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animations.py", line 114, in __gather_animation
channels=__gather_channels(blender_action, blender_object, export_settings),
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animations.py", line 150, in __gather_channels
blender_action, blender_object, export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_channels.py", line 83, in gather_animation_channels
None)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_channels.py", line 202, in __gather_animation_channel
sampler=__gather_sampler(channels, blender_object, export_settings, bake_bone, bake_channel, bake_range_start, bake_range_end, action_name, driver_obj),
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_channels.py", line 263, in __gather_sampler
export_settings
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_samplers.py", line 65, in gather_animation_sampler
bake_bone, bake_channel, bake_range_start, bake_range_end, action_name, driver_obj, export_settings),
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_samplers.py", line 240, in __gather_input
export_settings)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_sampler_keyframes.py", line 240, in gather_keyframes
step
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 90, in wrapper_bonecache
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_animation_sampler_keyframes.py", line 177, in get_bone_matrix
drivers_to_manage = get_sk_drivers(obj_driver)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 117, in wrapper_skdriverdiscover
result = func(*args)
File "E:\Applications\Blender\2.92\scripts\addons\io_scene_gltf2\blender\exp\gltf2_blender_gather_drivers.py", line 54, in get_sk_drivers
sk_name = child.data.shape_keys.path_resolve(get_target_object_path(sk_c.data_path)).name
ValueError: Key.path_resolve("key_blocks["Key 1"]") could not be resolved
location: <unknown location>:-1
I suppose that the gltf exporter can't find my keyframes, but I have no clue on how to fix that issue.
Any help is much appreciated!
Thanks
I have submitted a bug report for the gltf exporter. You can look at it here: https://github.com/KhronosGroup/glTF-Blender-IO/issues/1401
Removing invalid drivers fixes the issue.

AttributeError: 'S3File' object has not attribute 'getvalue', while running to_csv

I'm running to_csv command as follows to an ouput file on a s3 bucket with ServerSideEncryption enabled:
to_csv("s3://mys3bucket/result.csv",
storage_option={'s3_additional_kwargs':
{'ServerSideEncryption': 'AES256'}})
I'm getting the following attribute error:
File "/usr/lib/python2.7/site-packages/dask/dataframe/core.py", line 1091, in to_csv
return to_csv(self, filename, **kwargs)
File "/usr/lib/python2.7/site-packages/dask/dataframe/io/csv.py", line 577, in to_csv
delayed(values).compute(get=get, scheduler=scheduler)
File "/usr/lib/python2.7/site-packages/dask/base.py", line 156, in compute
(result,) = compute(self, traverse=False, **kwargs)
File "/usr/lib/python2.7/site-packages/dask/base.py", line 400, in compute
results = schedule(dsk, keys, **kwargs)
File "/usr/lib/python2.7/site-packages/distributed/client.py", line 2159, in get
direct=direct)
File "/usr/lib/python2.7/site-packages/distributed/client.py", line 1562, in gather
asynchronous=asynchronous)
File "/usr/lib/python2.7/site-packages/distributed/client.py", line 652, in sync
return sync(self.loop, func, *args, **kwargs)
File "/usr/lib/python2.7/site-packages/distributed/utils.py", line 275, in sync
six.reraise(*error[0])
File "/usr/lib/python2.7/site-packages/distributed/utils.py", line 260, in f
result[0] = yield make_coro()
File "/usr/lib64/python2.7/site-packages/tornado/gen.py", line 1099, in run
value = future.result()
File "/usr/lib64/python2.7/site-packages/tornado/concurrent.py", line 260, in result
raise_exc_info(self._exc_info)
File "/usr/lib64/python2.7/site-packages/tornado/gen.py", line 1107, in run
yielded = self.gen.throw(*exc_info)
File "/usr/lib/python2.7/site-packages/distributed/client.py", line 1439, in _gather
traceback)
File "/usr/lib/python2.7/site-packages/dask/dataframe/io/csv.py", line 439, in _to_csv_chunk
df.to_csv(f, **kwargs)
File "/usr/lib64/python2.7/site-packages/pandas/core/frame.py", line 1745, in to_csv
formatter.save()
File "/usr/lib64/python2.7/site-packages/pandas/io/formats/csvs.py", line 161, in save
buf = f.getvalue()
File "/usr/lib/python2.7/site-packages/dask/bytes/utils.py", line 136, in __getattr__
return getattr(self.file, key)
AttributeError: 'S3File' object has no attribute 'getvalue'
I searched for this error, but couldn't find a relevant solution.
Do you have any idea?