Skip to content

feat: more datatype support#32

Open
icweaver wants to merge 16 commits into
mainfrom
datatype
Open

feat: more datatype support#32
icweaver wants to merge 16 commits into
mainfrom
datatype

Conversation

@icweaver
Copy link
Copy Markdown
Member

@icweaver icweaver commented Apr 4, 2026

Adds support for structured (nested) datatypes, and support for ascii and ucs (also outlined in that link), which some newer Roman data files seem to use. This required changing how the datatype field is parsed, so I thought it would be better to have this as a separate PR instead of cramming it into #25.

To add this support, the new AsciiDatatype and Ucs4Datatype types were introduced. These are spiritual variants of Datatype, but since that one is an enum, it seemed like it would be more trouble than it's worth to get them to all subtype a common abstract type.

This PR also includes a grip of tests using the reference files from asdf-standard. I just included a copy of the most recent ones (v1.6.0) in the test directory here for simplicity. On a related note, should the asdf spec version printed here be updated to reflect this?

Could be a good first PR to generalize things to dynamically load different versions directly from that repo instead. Another good one might be to start refactoring src/ASDF.jl now that it is starting to get a little long

@icweaver icweaver added the enhancement New feature or request label Apr 4, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 4, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.79%. Comparing base (3d5ef0c) to head (bdc6ae7).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #32      +/-   ##
==========================================
+ Coverage   99.75%   99.79%   +0.03%     
==========================================
  Files           1        1              
  Lines         413      479      +66     
==========================================
+ Hits          412      478      +66     
  Misses          1        1              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Base automatically changed from strict to main April 4, 2026 17:38
@icweaver icweaver mentioned this pull request Apr 4, 2026
@icweaver icweaver mentioned this pull request Apr 4, 2026
13 tasks
@icweaver icweaver changed the title More datatypes feat: more datatype support Apr 30, 2026
@cgarling
Copy link
Copy Markdown
Member

cgarling commented May 1, 2026

Thanks for your work on this Ian, I'm really happy to see it! I have asdf files made with romanisim that I made for some roman cycle 1 proposals that might be useful for checking against but IDK if/when I will be able to do so myself. If you'd like the files to check out yourself let me know and I can host them somewhere for you.

@icweaver
Copy link
Copy Markdown
Member Author

icweaver commented May 1, 2026

Thanks Chris, for sure! Happy to check out any sample files you have.

@icweaver
Copy link
Copy Markdown
Member Author

icweaver commented May 4, 2026

Update: things look to be working so far with the test files I've been sent from folks. Is there anything else that people would like to see here?

@icweaver
Copy link
Copy Markdown
Member Author

Will probably give this another week and then merge for the v2 release unless I hear back from other folks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants