Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add boxed variant comparisons #542

Merged
merged 2 commits into from
Feb 3, 2025
Merged

Conversation

jpschorr
Copy link
Contributor

This PR builds on #540 and adds comparisons and comparison tests.

There are still todos and some additional test failures that will be addressed by future PRs that add functionality.

To see the ultimate end-point of this integration, refer to #536 and note the test coverage and conformance test results.


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Copy link

codecov bot commented Jan 31, 2025

Codecov Report

Attention: Patch coverage is 36.32959% with 170 lines in your changes missing coverage. Please review.

Project coverage is 80.08%. Comparing base (cc421cf) to head (9cba19d).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
extension/partiql-extension-ion/src/decode.rs 25.24% 77 Missing ⚠️
extension/partiql-extension-ion/src/boxed_ion.rs 36.25% 49 Missing and 2 partials ⚠️
partiql-value/src/boxed_variant.rs 13.04% 20 Missing ⚠️
partiql-value/src/variant.rs 53.12% 15 Missing ⚠️
partiql-value/src/value.rs 44.44% 3 Missing and 2 partials ⚠️
partiql-value/src/comparison.rs 0.00% 2 Missing ⚠️

❌ Your patch status has failed because the patch coverage (36.32%) is below the target coverage (85.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #542      +/-   ##
==========================================
- Coverage   80.49%   80.08%   -0.42%     
==========================================
  Files          95       95              
  Lines       20266    20465     +199     
  Branches    20266    20465     +199     
==========================================
+ Hits        16314    16390      +76     
- Misses       3520     3640     +120     
- Partials      432      435       +3     

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

Copy link

github-actions bot commented Jan 31, 2025

Conformance comparison report

Base (cc421cf) a332d66 +/-
% Passing 85.72% 86.31% 0.59%
✅ Passing 5511 5549 38
❌ Failing 918 880 -38
🔶 Ignored 0 0 0
Total Tests 6429 6429 0

Number passing in both: 5511

Number failing in both: 880

Number passing in Base (cc421cf) but now fail: 0

Number failing in Base (cc421cf) but now pass: 38

The following test(s) were previously failing but now pass. Before merging, confirm they are intended to pass:

Click here to see
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_result_false_
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_blob_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_struct_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_clob_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_1_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_null_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_missing_result_true_
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_struct_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_symbol_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_null_result_true_
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_result_false
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_int_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_decimal_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_sexp_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_symbol_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_null_result_true_
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_bool_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_list_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_missing_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_result_false_
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_int_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_string_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_1_result_true_
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_clob_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_null_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::permissive_exists_valid_cases_param_missing_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_1_result_true_
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_missing_result_true_
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_sexp_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_bool_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_list_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_decimal_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::strict_null_comparison_sql_null_blob_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_1_result_true
  • partiql_tests::eval::ion::primitives::primitives::null::null::permissive_null_comparison_sql_null_string_is_null_result_true
  • partiql_tests::eval::ion::primitives::primitives::functions::exists::exists::strict_exists_valid_cases_param_result_false

@jpschorr
Copy link
Contributor Author

jpschorr commented Feb 3, 2025

There are some lingering warnings of the form ...is more private than the item...

They are fixed in #544 : for example: https://github.com/partiql/partiql-lang-rust/pull/544/files#diff-b95d0de35899342f30d2531c8cd3728a958d846d163f0c154c204f7aeb8979ceL112

Base automatically changed from feat-boxed-variant to main February 3, 2025 19:20
@jpschorr jpschorr force-pushed the feat-boxed-variant-comparisons branch from 95a28d7 to 68f01d4 Compare February 3, 2025 19:51
extension/partiql-extension-ion/src/decode.rs Outdated Show resolved Hide resolved
extension/partiql-extension-ion/src/decode.rs Outdated Show resolved Hide resolved
extension/partiql-extension-ion/src/decode.rs Show resolved Hide resolved
extension/partiql-extension-ion/src/decode.rs Outdated Show resolved Hide resolved
partiql-value/src/value.rs Show resolved Hide resolved
@jpschorr jpschorr requested a review from alancai98 February 3, 2025 21:35
@jpschorr jpschorr merged commit f684ea9 into main Feb 3, 2025
18 of 19 checks passed
@jpschorr jpschorr deleted the feat-boxed-variant-comparisons branch February 3, 2025 21:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants