Rename the Honeydew converter package to ossie_honeydew, keep legacy "osi" metadata readable - #313
Open
baruchoxman wants to merge 2 commits into
Open
Conversation
Contributor
|
Hello @baruchoxman , This is already been tracked by @jbonofre via #288. Thanks, |
Contributor
Author
If you don't mind, I'd prefer to get this one merged, as there were also some backwards compatibility decisions in this one |
Contributor
I would defer to @jbonofre |
17 tasks
jbonofre
self-requested a review
September 8, 2026 11:36
Member
|
@baruchoxman do you have time to rebase and resolve conflicts? Thanks! |
Every other converter in the repo names its package ossie_<vendor> (ossie_databricks, ossie_dbt, ossie_sigma, ossie_snowflake, ...). The Honeydew converter was the lone exception at honeydew_ossie, so bring it in line: src/honeydew_ossie -> src/ossie_honeydew tests/test_honeydew_ossie_*.py -> tests/test_ossie_honeydew_*.py honeydew-ossie (dist + script) -> apache-ossie-honeydew / ossie-honeydew The module docstring advertised `python converter.py` rather than the installed entry point; it now names the `ossie-honeydew` console script the packaging actually provides. CI targets converters/honeydew by path, so it is unaffected. Signed-off-by: Baruch Oxman <baruch@honeydew.ai>
… docs The converter stores Ossie-only fields the Honeydew schema has no home for in a Honeydew metadata section, and the rebrand renamed that section from "osi" to "ossie". That name is a persisted key, not just an identifier: workspaces written by an earlier version still carry an "osi" section, and reading only "ossie" would silently drop every preserved ai_context, label, unique_keys and custom_extensions entry on the way back out. _read_ossie_metadata now accepts either name, so round-tripping a workspace produced before the rebrand no longer loses data. Writes still use "ossie". Covered by test_read_legacy_osi_metadata_section. Also points the README at Honeydew's current documentation: the workspace YAML schema page, and the Apache Ossie (OSI) page that documents this integration from the Honeydew side. Signed-off-by: Baruch Oxman <baruch@honeydew.ai>
baruchoxman
force-pushed
the
rebrand-honeydew-connector-to-ossie
branch
from
September 9, 2026 08:59
6b9e12a to
399ecf0
Compare
Contributor
Author
@jbonofre done |
Member
|
@baruchoxman thanks! I'm doing a new pass. |
jbonofre
approved these changes
Sep 9, 2026
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
Two small follow-ups to the Honeydew converter, now that
#288 has landed the OSI → Ossie
rename on
main:ossie_<vendor>convention every other converter follows.
"osi"metadata section, soworkspaces produced before the rebrand still round-trip without silently
dropping preserved fields.
1. Naming
mainrenamed the distribution and package tohoneydew-ossie/honeydew_ossie,which leaves Honeydew as the only converter not following
ossie_<vendor>(
ossie_databricks,ossie_dbt,ossie_gooddata,ossie_nvidia_gsf,ossie_omni,ossie_ontology,ossie_orionbelt,ossie_sigma,ossie_snowflake,ossie_wisdom):honeydew-ossieapache-ossie-honeydewhoneydew_ossieossie_honeydewhoneydew-ossieossie-honeydewtest_honeydew_ossie_converter.pytest_ossie_honeydew_converter.pyThe module docstring also advertised
python converter.py <subcommand>ratherthan the entry point packaging actually installs; it now names the console script:
Subcommand names are unchanged — #288 already renamed them to
ossie-to-honeydew/honeydew-to-ossie. CI targetsconverters/honeydew/**by path, so it is unaffected by the package move.
2. The data-loss fix
The converter stores Ossie-only fields the Honeydew schema has no home for
(
ai_context,label,unique_keys,custom_extensions,vendors) in a namedHoneydew
metadatasection, so they survive aHoneydew → Ossie → Honeydewround trip. #288 renamed that section
osi→ossie.That name is a persisted key, not just an identifier: workspaces on disk
written by any earlier version still carry an
osisection. Reading onlyossiesilently discards every field it preserves — no error, no warning, just missing
data on the way back out.
_read_ossie_metadatanow accepts either name; writes still emitossieonly.Measured on
examples/tpcds_semantic_model.yaml(exported to a workspace,section names downgraded to
osito simulate a pre-rebrand workspace, thenre-exported). Against
main, the export loses:ai_contextblockssynonymslistscustom_extensionsentrylabelvalues re-derived rather than restored— 67 lines of preserved data. With this PR the same legacy workspace exports
byte-identical YAML to the non-legacy one. Regression test:
test_read_legacy_osi_metadata_section.3. Documentation links
Honeydew has renamed its own OSI page to
Apache Ossie (OSI), which
documents this converter from the Honeydew side. The README now links to it, and
points its "workspace YAML" reference at Honeydew's
YAML schema page rather than the docs root
— matching how the
omni,dbtanddatabricksREADMEs link to a specificvendor format page.
Related Issues
None.
Verification
Rebased onto
main@c109cf5. All checks run fromconverters/honeydew:uv run --frozen pytest— 129 passed (128 existing + 1 new legacy-metadataregression test).
uv lock --check— lock is current. Theuv.lockdiff is the distributionrename plus the alphabetical reorder uv requires; no dependency versions
changed (regenerating from scratch would have pulled unrelated
packagingand
pygmentsbumps, so the lock was edited in place instead).uv run --frozen ossie-honeydew --help— console script resolves and listsossie-to-honeydew/honeydew-to-ossie.examples/tpcds_semantic_model.yamlthroughossie-to-honeydew→honeydew-to-ossie; the generated workspace writesname: ossiesections.loss against
mainis quantified above (measured in a cleanmainworktree).../../core-spec/spec.md, present).examples/flights.yamlis an ontology document (ontology:/ontology_mappings:)rather than a
semantic_model:one, so it is out of this converter's scope and wasnot round-tripped — unchanged by this PR.
Checklist
Specification
core-spec/and follow the existing structureNo specification changes.
Ontology
ontology/are consistent with spec changesNo ontology changes.
Converters
converters/is updated to reflect spec or ontology changes — package naming, plus the legacy-metadata fallback aboveValidation
validation/are updated if the spec changedNo validation changes.
Documentation
docs/is updated to reflect any user-facing changes —docs/carries no converter-specific naming; the converter README is updatedCONTRIBUTING.mdis updated if the contribution process changedExamples
examples/are added or updated for any new spec constructs or converter supportNo new constructs.
Tests
pytest/ CI green)Compliance
uv.lockchange is the distribution rename and reorder only