Repository navigation
Adopt Egeria 6.3 boxed properties; raise on failed bearer token requests - #498
Merged
Merged
Conversation
…quests Egeria 6.3 (odpi/egeria#9389) leaves unset numbers and flags out of responses and keeps them on a merge update, which fixes ISSUE-166. - Dr.Egeria: a Create rewritten to Update no longer sends the spec defaults the parser filled in, which would overwrite stored values. - Stop forcing 0 for GovernanceControlProperties.domainIdentifier, EmbeddedConnectionProperties.position, role headCount and Solution Role domainIdentifier. - Remove the ISSUE-166 workarounds: security finding rows now show a returned 0 / false, and SecurityFindingProcessor no longer copies the current values into a merge update. - create_egeria_bearer_token raised nothing on bad credentials and returned Egeria's 401 error text as the token (or "FAILED" on a connection error). It now raises PyegeriaUnauthorizedException, PyegeriaClientException, PyegeriaConnectionException or PyegeriaTimeoutException and leaves the headers unchanged. Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com>
This was referenced Oct 27, 2026
dwolfson
added a commit
that referenced
this pull request
Oct 28, 2026
* docs(issues): re-sort the issue trackers, open items first PYEGERIA_ISSUES.md: - Released fixes still marked "not yet released" now name the PR and release: ISSUE-111/113/129/134/136 (#446) and ISSUE-135 (#445) in 6.2.2, ISSUE-153 (#460) 6.2.5, ISSUE-160 (#474/#475 6.2.8, #478 6.2.9), ISSUE-161 (#477) 6.2.9, ISSUE-162 (#482) and ISSUE-163/164 (#483) 6.2.10. ISSUE-166 notes the pyegeria side (#498, 6.2.13). - Moved the fixed entries (ISSUE-153, 160-166) from the open sections to the top of Fixed / Resolved. - Awaiting re-test is now a real section after the open ones, holding ISSUE-125, 124, 117, 112, 90, 95 and 89. Its old header sat in the middle of the Fixed list, where everything under it except ISSUE-95 and ISSUE-89 was already fixed. - The At-a-glance counts and lists are rebuilt from the section contents (14 open pyegeria items, 7 awaiting re-test, 5 open Egeria Server issues), and the re-test section notes the quickstart now runs Egeria main abe31272. EGERIA_OPEN_ISSUES.md: drop the fixed ISSUE-166 entry, and move ISSUE-79 (Egeria needs information) and ISSUE-38 (pending oak2026 merge) out of Awaiting re-test, matching their 2026-10-18 status. No entry text was removed: 166 entries before and after. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015pdMuTg6FmqPWeapeXM54g Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com> * docs(issues): ISSUE-165 released in 6.2.11 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015pdMuTg6FmqPWeapeXM54g Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com> --------- Signed-off-by: Dan Wolfson <dan.wolfson@pdr-associates.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Egeria 6.3 now uses boxed types for the numbers and flags in its property beans (odpi/egeria#9389, merged as 12b1aaae). An unset value is left out of the response, and a merge update keeps a value it doesn't mention. This fixes ISSUE-166. This PR adapts pyegeria to that change and also fixes a bearer-token bug reported by a user.
Boxed properties
Createfinds the element already exists and becomes anUpdate, it no longer sends the spec defaults the parser filled in for the Create (e.g.isNullable: true,position: 0). On 6.3 those would overwrite stored values. OnlyMerge Updatekeeps its default. SeeAsyncBaseCommandProcessor._drop_create_defaults.GovernanceControlProperties.domain_identifier,EmbeddedConnectionProperties.position, Person/Team RoleheadCountand Solution RoledomainIdentifierare now left unset when not given.DataDiscovery._security_rowshows a returned 0.0 / false as a real answer.SecurityFindingProcessorno longer copies current values into a merge update.update_usage_activitydocstrings are updated to match.PYEGERIA_ISSUES.md/EGERIA_OPEN_ISSUES.md.Bearer token
create_egeria_bearer_tokendidn't check the HTTP status. With bad credentials it returned Egeria's 401 error text as the token and put it in the Authorization headers. On a connection error it returned"FAILED". Both base clients now share_post_for_bearer_token, which raises instead and leaves the headers unchanged:PyegeriaUnauthorizedExceptionPyegeriaClientExceptionPyegeriaConnectionException/PyegeriaTimeoutExceptionPyegeriaInvalidParameterExceptionNote for callers
Elements written by servers older than 6.3 still hold a stored 0 / false for values nobody set; #9389 doesn't migrate them. Code that compared the token result to
"FAILED"should catch the exception instead.Testing
test_create_bearer_token_errors.py(7 cases) andtest_upsert_drops_create_defaults.py.PyegeriaUnauthorizedException.VulnerabilityAnnotationcreated with only a severity came back withoutcvssScore/exploitAvailable/patchAvailable.🤖 Generated with Claude Code