princenyeche / jiraone

A REST API Implementation to Jira Cloud APIs for creating reports and for performing other Jira queries.
https://jiraone.readthedocs.io
MIT License
24 stars 11 forks source link

Error trying to import to json (Jira Data Center) #122

Open largui opened 10 months ago

largui commented 10 months ago

Hello Support, I am trying to export json file on Jira DC. I got this issue:

Exception in thread Thread-4 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-1 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-5 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-13 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run Exception in thread Thread-12 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-14 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-16 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-18 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner Exception in thread Thread-17 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-20 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-21 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-15 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-22 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-23 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-24 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-19 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-25 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields Exception in thread Thread-26 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields "key": a["key"], KeyError: 'key' map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-27 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner Exception in thread Thread-28 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-30 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-29 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-33 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-35 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-34 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-36 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3673, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3606, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-31 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-32 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(*self._args, *self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3688, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3598, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-38 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 953, in run self._target(self._args, **self._kwargs) File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 3673, in float_fields map_name = field.get_field( File "/usr/local/lib/python3.10/dist-packages/jiraone/access.py", line 3606, in get_field "key": a["key"], KeyError: 'key' Exception in thread Thread-37 (float_fields): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run()

For CSV no issues. All good.

Code

LOGIN.api = False fields = [] jql = "project in (XPN) order by created DESC" issue_export(jql=jql, extension="json", fields=fields)

Thanks and regards, Sergio

princenyeche commented 10 months ago

Hey @largui

I'm working on releasing version 0.7.9 which should solve this problem and improve the performance for the JSON export. It should be released before or on this weekend.

largui commented 10 months ago

Hello @princenyeche , Thanks for your update. I will be waiting for that.

Regards

princenyeche commented 10 months ago

Hey @largui the new version is out, please let me know if all the issues you encountered before are resolved.

largui commented 9 months ago

Hey @princenyeche, I will check it right away and I will let you know.

largui commented 9 months ago

Hello @princenyeche,

I got this error now with the latest version 0.8.2: Downloading issue export in JSON format. <Response [200]> ::downloading issues at page: 0 of 1 <Response [200]> ::downloading issues at page: 1 of 1 Processing. Current progress: 50% Processing. Current progress: 100% Converting Jira custom field names to Jira JSON compatible names. Verifying users membership Searching for user data. Verifying Sprint values. Extracting Sprint Ids from values. Searching for Sprint data JSON conversion started. Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 6935, in json_field_builder field_builder( File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 6928, in field_builder start_process() File "/usr/local/lib/python3.10/dist-packages/jiraone/reporting.py", line 6545, in start_process if not obj_name.get("column_name").startswith( AttributeError: 'NoneType' object has no attribute 'startswith' An error has occurred: 'NoneType' object has no attribute 'startswith'

princenyeche commented 9 months ago

Hi @largui, it seems there's an issue with the field extraction at that specific code section, or possibly due to some other factor. This error shouldn't happen because, by this point in the script, it should already be aware of the names and properties of both system and custom fields you have. Could you inform me whether there were any additional temporary files in the folder where the extraction occurred before you executed the script?

largui commented 9 months ago

Hi @princenyeche, I checked it and there is no any temporary files in the folder. I removed export and logs ones to be recreated again. This is my script:

from jiraone import LOGIN, issue_export import os

your_cert_path = "Caroot.crt" os.environ["REQUESTS_CA_BUNDLE"] = your_cert_path

before calling jiraone statements

LOGIN.api = False LOGIN = LOGIN("admin", "Password", "https://myjira.com") fields = [] jql = "project in (XPN) order by created DESC" issue_export(jql=jql, extension="json", fields=fields, final_file="backup")

princenyeche commented 9 months ago

@largui I'm unsure what the actual cause might be at the moment with the data being None but can you attempt the below steps as that might give me a hunch of what might be happening

largui commented 9 months ago

Defaulting to comma as CSV separator. Downloading issue export in CSV format. <Response [200]> ::downloading issues at page: 0 of 10 <Response [200]> ::downloading issues at page: 1 of 10 <Response [200]> ::downloading issues at page: 2 of 10 <Response [200]> ::downloading issues at page: 3 of 10 <Response [200]> ::downloading issues at page: 4 of 10 <Response [200]> ::downloading issues at page: 5 of 10 <Response [200]> ::downloading issues at page: 6 of 10 <Response [200]> ::downloading issues at page: 7 of 10 <Response [200]> ::downloading issues at page: 8 of 10 <Response [200]> ::downloading issues at page: 9 of 10 <Response [200]> ::downloading issues at page: 10 of 10 Processing. Current progress: 9% Processing. Current progress: 18% Processing. Current progress: 27% Processing. Current progress: 36% Processing. Current progress: 45% Processing. Current progress: 54% Processing. Current progress: 63% Processing. Current progress: 72% Processing. Current progress: 81% Processing. Current progress: 90% Processing. Current progress: 100% Export Completed.File located at /scripts/datacenter/EXPORT/backup.csv Defaulting to comma as CSV separator. Traceback (most recent call last): File "/scripts/datacenter/exportv2.py", line 16, in issue_export(csv_to_json="backup.csv", fields=fields, final_file="backup") File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 3494, in export_issues validate_on_error( File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/utils.py", line 315, in validate_on_error raise JiraOneErrors( jiraone.exceptions.JiraOneErrors: <JiraOneError: The jql argument should be a string of a valid Jira query.Detected <class 'NoneType'> instead.>

largui commented 9 months ago

Another question: Is it possible to use token instead of password? I trying this in Login: LOGIN = LOGIN("admin", "Token", "https://myjira.com") but I got credentials error_ Traceback (most recent call last): File "/scripts/datacenter/exportv2.py", line 15, in issue_export(jql=jql, extension="csv", fields=fields, final_file="backup") File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 3136, in export_issues raise JiraOneErrors( jiraone.exceptions.JiraOneErrors:

What am I missing?

princenyeche commented 9 months ago

Hey @largui

Yes, you can use PAT as mentioned here under bearer authentication. Please declare the base_url by using

# your previous import statements and expressions
LOGIN.base_url = "https://myjira.com"
largui commented 9 months ago

Outuput: Defaulting to comma as CSV separator. Downloading issue export in CSV format. <Response [200]> ::downloading issues at page: 0 of 0 Processing. Current progress: 100% Export Completed.File located at /scripts/datacenter/EXPORT/backup.csv Defaulting to comma as CSV separator. Downloading issue export in CSV format. Processing. Current progress: 100% Export Completed.File located at /scripts/datacenter/EXPORT/backup.csv

But the export folder is empty sleondelarosa@JALS:/scripts/datacenter$ ls -tlr EXPORT/ total 0

princenyeche commented 9 months ago

That's not the expected behaviour, I'll correct that later on but do

# previous code example
issue_export(csv_to_json="backup.csv", fields=fields, final_file="backup", extension="json")

Apologies for the back and forth. Kindly include the extension argument to ensure recognition of the JSON part. Feel free to reach out if the NoneType error persists. In case it does, examine the CSV export (you can generate a CSV separately, as the script will delete the old file). Open the file and check for any missing columns or columns without names then let me know what you find out.

largui commented 9 months ago

Defaulting to comma as CSV separator. Downloading issue export in CSV format. <Response [200]> ::downloading issues at page: 0 of 10 <Response [200]> ::downloading issues at page: 1 of 10 <Response [200]> ::downloading issues at page: 2 of 10 <Response [200]> ::downloading issues at page: 3 of 10 <Response [200]> ::downloading issues at page: 4 of 10 <Response [200]> ::downloading issues at page: 5 of 10 <Response [200]> ::downloading issues at page: 6 of 10 <Response [200]> ::downloading issues at page: 7 of 10 <Response [200]> ::downloading issues at page: 8 of 10 <Response [200]> ::downloading issues at page: 9 of 10 <Response [200]> ::downloading issues at page: 10 of 10 Processing. Current progress: 9% Processing. Current progress: 18% Processing. Current progress: 27% Processing. Current progress: 36% Processing. Current progress: 45% Processing. Current progress: 54% Processing. Current progress: 63% Processing. Current progress: 72% Processing. Current progress: 81% Processing. Current progress: 90% Processing. Current progress: 100% Export Completed.File located at /scripts/datacenter/EXPORT/backup.csv Traceback (most recent call last): File "/scripts/datacenter/exportv2.py", line 17, in issue_export(csv_to_json="backup.csv", fields=fields, final_file="backup", extension="json") File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 3494, in export_issues validate_on_error( File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/utils.py", line 315, in validate_on_error raise JiraOneErrors( jiraone.exceptions.JiraOneErrors: <JiraOneError: The jql argument should be a string of a valid Jira query.Detected <class 'NoneType'> instead.>

largui commented 9 months ago

One more question @princenyeche, Is there any constraint in the number of issues to export using CSV file? I going to test to export to CSV file around 120000 issues I suppose that this take time and nothing more, right?

Thanks for your support

princenyeche commented 9 months ago

No constraint, just the time you've taken. Did you get your JSON file sorted out?

# previous code example
issue_export(csv_to_json="backup.csv", fields=fields, final_file="backup", extension="json", jql=jql)

There are some behaviours with this method that are not working well when combined, added to my backlog for things to fix in the next release.

largui commented 9 months ago

Same issue: Defaulting to comma as CSV separator. Downloading issue export in CSV format. <Response [200]> ::downloading issues at page: 0 of 10 <Response [200]> ::downloading issues at page: 1 of 10 <Response [200]> ::downloading issues at page: 2 of 10 <Response [200]> ::downloading issues at page: 3 of 10 <Response [200]> ::downloading issues at page: 4 of 10 <Response [200]> ::downloading issues at page: 5 of 10 <Response [200]> ::downloading issues at page: 6 of 10 <Response [200]> ::downloading issues at page: 7 of 10 <Response [200]> ::downloading issues at page: 8 of 10 <Response [200]> ::downloading issues at page: 9 of 10 <Response [200]> ::downloading issues at page: 10 of 10 Processing. Current progress: 9% Processing. Current progress: 18% Processing. Current progress: 27% Processing. Current progress: 36% Processing. Current progress: 45% Processing. Current progress: 54% Processing. Current progress: 63% Processing. Current progress: 72% Processing. Current progress: 81% Processing. Current progress: 90% Processing. Current progress: 100% Export Completed.File located at /scripts/datacenter/EXPORT/backup.csv Downloading issue export in JSON format. Processing. Current progress: 100% Converting Jira custom field names to Jira JSON compatible names. Verifying users membership Searching for user data. Verifying Sprint values. Extracting Sprint Ids from values. Searching for Sprint data JSON conversion started. Traceback (most recent call last): File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 6935, in json_field_builder field_builder( File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 6928, in field_builder start_process() File "/home/sleondelarosa/.local/lib/python3.10/site-packages/jiraone/reporting.py", line 6545, in start_process if not obj_name.get("column_name").startswith( AttributeError: 'NoneType' object has no attribute 'startswith' An error has occurred: 'NoneType' object has no attribute 'startswith'

princenyeche commented 9 months ago

Hopefully, in the next release cycle, I'll revisit this issue when I have more time to dive into the likely cause of the NoneType value. I think it's a field without a proper column name but I'm uncertain. I probably need to validate all field properties before they reach that line in the code. I don't have an ETA but I'll work on it as soon as I can.

largui commented 9 months ago

Ok, thanks. I am looking forward to hear from you soon