Skip to content

Comments

Set offline mode to false to enable dependency fetching for model files#444

Open
TharmiganK wants to merge 8 commits intomainfrom
fix-dependency-pull
Open

Set offline mode to false to enable dependency fetching for model files#444
TharmiganK wants to merge 8 commits intomainfrom
fix-dependency-pull

Conversation

@TharmiganK
Copy link
Contributor

@TharmiganK TharmiganK commented Feb 24, 2026

Purpose

$Subject

Examples

N/A

Checklist

  • Linked to an issue
  • Updated the specification
  • Updated the changelog
  • Added tests

Summary of Changes

This pull request enables dependency fetching for model file processing and updates project dependencies to improve stability and consistency.

Core Functionality Change

  • Modified the offline mode flag from true to false in BalProjectUtils.java to allow dependencies to be fetched during model file schema validation, enabling the tool to properly resolve and access model file dependencies.

Dependency Version Updates

  • Updated persist.sql-native dependency version from 1.7.1 to 1.7.2 across all test resource Ballerina.toml files (60+ files)
  • Normalized dependency version declarations in gradle.properties by removing timestamp suffixes for consistency:
    • stdlibPersistVersion: 1.7.0 (removed timestamp suffix)
    • stdlibPersistSqlVersion: 1.7.2 (removed timestamp suffix)
    • persistSqlNativeVersion: 1.7.2 (removed timestamp suffix)

Release Updates

  • Bumped project version from 1.9.0-SNAPSHOT to 1.9.1-SNAPSHOT in gradle.properties
  • Updated changelog to mark version 1.9.0 as released with date 2026-02-24
  • Updated tool configuration references in BalTool.toml to reference non-SNAPSHOT artifacts

Impact

The primary change enables the tool to fetch and resolve dependencies when processing model files, which improves the reliability of schema validation and model file handling by ensuring all required dependencies are available during processing.

@coderabbitai
Copy link

coderabbitai bot commented Feb 24, 2026

📝 Walkthrough

Walkthrough

This PR releases version 1.9.0 by consolidating version metadata, updating test fixtures to normalize dependency versions, and enabling online dependency resolution during schema validation.

Changes

Cohort / File(s) Summary
Release Management
changelog.md, gradle.properties
Finalized release 1.9.0 by replacing "Unreleased" header with concrete date and bumping project version to 1.9.1-SNAPSHOT. Normalized timestamp suffixes from stdlib persist library versions (1.7.0 and 1.7.2).
Test Resource Version Updates
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_*/Ballerina.toml
Updated io.ballerina.stdlib/persist.sql-native dependency from 1.7.1 to 1.7.2 across 74 test output Ballerina.toml files.
Validation Logic
persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java
Changed offline mode from true to false in validateSchemaFile method to enable dependency fetching during project schema validation.
Tool Configuration
persist-tool/BalTool.toml
Updated JAR file references to non-SNAPSHOT versions for persist-cli and persist-core dependencies.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • lnash94
  • shafreenAnfar
  • daneshk

Poem

🐰 Version bumps and timestamps fade,
Test fixtures dance in neat parade,
Offline modes switch to online flight,
Release 1.9 shines so bright!
Dependencies resolved, all things aligned,
A rabbit's work, refined and signed! 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: setting offline mode to false in BalProjectUtils.java to enable dependency fetching for model files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix-dependency-pull

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link

@TharmiganK TharmiganK marked this pull request as ready for review February 24, 2026 11:23
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_4/Ballerina.toml (1)

1-5: ⚠️ Potential issue | 🟡 Minor

Pre-existing: package name doesn't match the containing directory.

The name field is "tool_test_generate_multimodel_invalid" but the directory is tool_test_generate_multimodel_4. This is not introduced by this PR, but it may cause confusing test failure messages if this fixture is ever referenced by name. Worth correcting in a follow-up.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_4/Ballerina.toml`
around lines 1 - 5, The package name in the Ballerina.toml ("name" =
"tool_test_generate_multimodel_invalid") does not match the containing
directory; update the "name" field value to "tool_test_generate_multimodel_4" so
it matches the directory and avoids confusing test failures when the fixture is
referenced; edit the TOML in the file containing the [package] block and change
the name key accordingly.
♻️ Duplicate comments (19)
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_58_mssql/Ballerina.toml (1)

13-13: Version bump is consistent with the rest of the PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_58_mssql/Ballerina.toml`
at line 13, The Ballerina.toml currently sets version = "1.7.2"; confirm and
keep this bump, and ensure consistency by updating any other package metadata or
Ballerina.toml files in the repo to the same version; check for mismatches in
package/version declarations and align them so "version" in Ballerina.toml
matches the PR-wide version.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_40/Ballerina.toml (1)

13-13: Version bump is consistent with the rest of the PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_40/Ballerina.toml`
at line 13, The version line "version = \"1.7.2\"" in Ballerina.toml is already
updated to match the PR; keep this version bump as-is (do not revert) so it
remains consistent with the rest of the changes and ensure no other TOML files
contain an outdated version string that would need synchronizing.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_116/Ballerina.toml (1)

13-13: Version bump is consistent with the rest of the PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_116/Ballerina.toml`
at line 13, The Ballerina.toml version line was updated to version = "1.7.2";
ensure this version bump is propagated consistently across the repo by updating
any other Ballerina.toml, package metadata, CI configs, or release/version
constants that reference the previous version, and run the test matrix to
confirm no regressions; specifically search for and replace the previous version
string with "1.7.2" in project metadata and update changelogs or docs as needed
before committing.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_110_h2/Ballerina.toml (1)

13-13: Version bump is consistent with the rest of the PR.

Same persist.sql-native 1.7.1 → 1.7.2 update as in the other test fixtures; the artifact availability concern raised on tool_test_generate_35/Ballerina.toml applies here as well.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_110_h2/Ballerina.toml`
at line 13, The test fixture Ballerina.toml was updated to version = "1.7.2" to
match the PR (upgrading persist.sql-native to 1.7.2); verify that the
persist.sql-native 1.7.2 artifact is actually available to the test environment
and, if it is not, either restore the dependency to 1.7.1 or update the test
fixture resolution (e.g., test repo settings) so the 1.7.2 artifact can be
fetched; locate the version line ("version = \"1.7.2\"") in this file and the
corresponding persist.sql-native declaration in other test fixtures (e.g.,
tool_test_generate_35/Ballerina.toml) and make the same corrective change across
fixtures to keep them consistent.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml (1)

10-10: Version bump is consistent with the rest of the PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml`
at line 10, The Ballerina.toml's version key should be updated to "1.7.2" to
match the PR; edit the version = "..." entry in
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml
to "1.7.2" and scan for any other occurrences of the package version (other
Ballerina.toml files or metadata) to keep them consistent.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_121_init_params_h2/Ballerina.toml (1)

10-10: Version bump is consistent with the rest of the PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_121_init_params_h2/Ballerina.toml`
at line 10, The Ballerina.toml currently has the updated line version = "1.7.2"
which matches the PR; ensure this change is applied consistently by searching
for any other occurrences of Ballerina.toml or version = "..." in the repo
(including module manifests or CI/build configs) and update them to "1.7.2" if
they differ so all manifests remain synchronized.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_22/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_22/Ballerina.toml`
around lines 10 - 13, The test output Ballerina.toml has an inconsistent
dependency version for the SQL native module; update the
[[platform.java21.dependency]] block so the groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native" use the same version value applied in
tool_test_generate_5 (make the version entry consistent across tests), and
re-run the test to verify the file matches the expected output for
tool_test_generate_22; check the "version" field in that block to locate and
change the value.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_59_mssql/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5 (also confirm compatibility with distribution 2201.5.0).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_59_mssql/Ballerina.toml`
around lines 10 - 13, Update the dependency version for the
platform.java21.dependency block referencing artifactId "persist.sql-native"
(the version field in the Ballerina.toml snippet) to match the same bump used in
tool_test_generate_5, and run the compatibility verification against
distribution 2201.5.0 to ensure no regressions; locate the
[[platform.java21.dependency]] entry with groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native" and change its version to the same value used in
tool_test_generate_5, then execute the same compatibility checks you used for
that test output to confirm it works with distro 2201.5.0.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_113_schema/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5 (also confirm compatibility with distribution 2201.11.0).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_113_schema/Ballerina.toml`
around lines 10 - 13, The dependency block for platform.java21.dependency
(artifactId "persist.sql-native") in tool_test_generate_113_schema currently
shows version "1.7.2"; apply the same dependency bump and verification steps you
used for tool_test_generate_5: ensure the version is updated consistently across
test outputs, run the same compatibility checks against distribution 2201.11.0,
and confirm the updated version does not break builds or tests referenced by the
test suite; update the Ballerina.toml entry for this test to match the verified
version and document the compatibility result.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_27/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_27/Ballerina.toml`
around lines 10 - 13, The dependency block [[platform.java21.dependency]] with
groupId "io.ballerina.stdlib" and artifactId "persist.sql-native" needs the same
version update/verification applied earlier in tool_test_generate_5; change the
version value to match that test's expected version and re-run the same
verification (compare the version string in this [[platform.java21.dependency]]
block against the version used in tool_test_generate_5) to ensure consistency
across test outputs.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_2/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_2/Ballerina.toml`
around lines 10 - 13, The dependency version for the
[[platform.java21.dependency]] block referencing artifactId "persist.sql-native"
must be updated to match the same version used in the other test outputs (as
done in tool_test_generate_5); edit the version value in this block to the
approved version and then verify consistency across all test resource outputs
(search for platform.java21.dependency and persist.sql-native in test fixtures)
to ensure no other test files still reference the old version.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_28/Ballerina.toml (1)

10-13: Same dependency bump as earlier test outputs.
Line 13: Please apply the same verification noted for tool_test_generate_5.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_28/Ballerina.toml`
around lines 10 - 13, This output contains a mismatched dependency version for
artifactId "persist.sql-native" — update the version value in the Ballerina.toml
entry for [[platform.java21.dependency]] (artifactId "persist.sql-native") to
the same version used in the corresponding tool_test_generate_5 expected output,
then re-run the test generation/verification to ensure the updated
Ballerina.toml matches the canonical expected file; also confirm there are no
duplicate dependency entries and update any related lock/checksum files if
present.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_123_init_params_multiple_entities/Ballerina.toml (1)

7-10: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_123_init_params_multiple_entities/Ballerina.toml`
around lines 7 - 10, The [[platform.java21.dependency]] block's version for
groupId "io.ballerina.stdlib" and artifactId "persist.sql-native" should match
the earlier fixtures; update the version field to "1.7.2" (or confirm it already
is) and verify all other occurrences of this dependency (search for the same
groupId/artifactId) are consistently bumped to 1.7.2 so tests use the same
dependency version across fixtures.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_64/Ballerina.toml (1)

10-13: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_64/Ballerina.toml`
around lines 10 - 13, This file contains a duplicate dependency bump for the
same dependency block ([[platform.java21.dependency]] with groupId
"io.ballerina.stdlib", artifactId "persist.sql-native", version "1.7.2"); ensure
the version bump is consistent with earlier fixtures by either removing the
duplicate block or updating the version to match the canonical fixture, and
verify no conflicting entries for "persist.sql-native" remain across test
fixtures; locate the dependency blocks by the artifactId "persist.sql-native"
and adjust or deduplicate them so all tests use the same version.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_91/Ballerina.toml (1)

10-13: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_91/Ballerina.toml`
around lines 10 - 13, The Ballerina.toml shows a dependency version bump for
io.ballerina.stdlib:persist.sql-native to 1.7.2; verify and apply the same
version change across all related fixtures and test resources so they remain
consistent with earlier bumps — search for the unique identifiers groupId
"io.ballerina.stdlib" and artifactId "persist.sql-native" (and the section
header platform.java21.dependency) and update any mismatched version fields to
"1.7.2", then run the test suite to confirm no remaining discrepancies.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_124_init_params_with_config/Ballerina.toml (1)

7-10: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_124_init_params_with_config/Ballerina.toml`
around lines 7 - 10, Update the dependency version for the TOML dependency table
[[platform.java21.dependency]] (keys groupId, artifactId, version) to match the
earlier fixtures by setting version = "1.7.2"; then scan other test fixture TOML
files for the same groupId/artifactId (io.ballerina.stdlib / persist.sql-native)
and verify there are no conflicting versions or duplicate dependency
entries—harmonize them to 1.7.2 if any differ.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_31/Ballerina.toml (1)

7-10: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_31/Ballerina.toml`
around lines 7 - 10, The Ballerina.toml entry for [[platform.java21.dependency]]
(groupId "io.ballerina.stdlib", artifactId "persist.sql-native") must be aligned
with the same dependency version used in the earlier fixtures; update the
version value here to match the other test fixtures' bumped version and re-run
the test suite to verify consistency.
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_63_mssql/Ballerina.toml (1)

10-13: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_63_mssql/Ballerina.toml`
around lines 10 - 13, The TOML shows a dependency bump for artifactId
"persist.sql-native" under the [[platform.java21.dependency]] table to version
"1.7.2"; ensure this matches the earlier fixture bumps by searching for other
occurrences of "persist.sql-native" and updating any mismatched versions to
"1.7.2", and if this entry is a duplicate of an existing dependency block remove
the redundant one so there is only a single [[platform.java21.dependency]] entry
for "persist.sql-native".
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_111_h2/Ballerina.toml (1)

10-13: Same dependency bump as earlier fixtures.

No additional concerns beyond the verification requested above.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_111_h2/Ballerina.toml`
around lines 10 - 13, The dependency entry for artifactId "persist.sql-native"
under [[platform.java21.dependency]] is a duplicate of earlier fixtures and
needs to be synchronized; find all occurrences of the dependency (look for the
[[platform.java21.dependency]] block with groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native") and ensure the version is consistently set to
"1.7.2" (or remove the duplicate block if it’s unintended), then re-run the
test/verification that flagged this fixture to confirm the change.
🧹 Nitpick comments (2)
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_84/Ballerina.toml (1)

13-13: CI environments may fail to resolve the new dependency under the offline → online mode switch.

The persist.sql-native bump to 1.7.2 is consistent across all changed test fixtures, which is fine. However, according to the PR summary, BalProjectUtils.validateSchemaFile now sets offline = false, meaning schema validation will attempt live network resolution. In air-gapped or restricted CI runners, this will cause those validation steps to fail outright rather than using locally cached artifacts. Please verify that all CI pipelines (including pre-merge checks) can reach the Ballerina Central / Maven Central registries, or add an explicit fallback path for offline environments.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_84/Ballerina.toml`
at line 13, The CI failure risk comes from changing persist.sql-native to
version "1.7.2" in Ballerina.toml while BalProjectUtils.validateSchemaFile now
forces offline = false and will attempt live resolution; update the code to
handle air-gapped CI by adding an offline fallback or conditional behavior in
BalProjectUtils.validateSchemaFile (e.g., detect CI/offline via env var or a
configuration flag and fall back to using local cached artifacts or skip live
resolution), or alternatively document and ensure all CI pipelines can reach
Ballerina/Maven Central; reference BalProjectUtils.validateSchemaFile and the
Ballerina.toml persist.sql-native version bump when making the change.
persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java (1)

166-172: Consider making offline mode configurable if air-gapped deployments are supported.
The setOffline(false) at lines 170 and 195 is currently hardcoded. If offline/air-gapped environments are a documented use case, wire this to a CLI flag or configuration property (defaulting to false) so users can opt into offline mode. Otherwise, this is working as intended.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java`
around lines 166 - 172, The call to buildOptionsBuilder.setOffline(false) in
validateSchemaFile is hardcoded; make offline mode configurable by reading a
config/flag and passing that boolean to setOffline instead. Replace the literal
false with a value obtained from your configuration source (for example a
PersistConfig.isOfflineMode() method, a CLI flag parser, or
System.getProperty/ENV lookup) and default to false when the config is absent;
update both places where setOffline(...) is used so
BuildOptions.BuildOptionsBuilder.setOffline(offLineFlag) uses the configured
value and ensure any new config accessor is documented/initialized before
validateSchemaFile runs.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_85/Ballerina.toml`:
- Line 13: The test fixtures reference the unpublished dependency version string
"version = \"1.7.2\"" which will fail if tests are allowed to fetch Maven
artifacts; revert the change that disables offline resolution in BalProjectUtils
(restore the offline mode flag to true) or alternatively update the
Ballerina.toml entries to a published artifact version instead of "1.7.2" so
tests can run without remote resolution; locate the change in BalProjectUtils
that flipped offline mode to false and either undo it or update all fixture
version strings away from "1.7.2".

---

Outside diff comments:
In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_4/Ballerina.toml`:
- Around line 1-5: The package name in the Ballerina.toml ("name" =
"tool_test_generate_multimodel_invalid") does not match the containing
directory; update the "name" field value to "tool_test_generate_multimodel_4" so
it matches the directory and avoids confusing test failures when the fixture is
referenced; edit the TOML in the file containing the [package] block and change
the name key accordingly.

---

Duplicate comments:
In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_110_h2/Ballerina.toml`:
- Line 13: The test fixture Ballerina.toml was updated to version = "1.7.2" to
match the PR (upgrading persist.sql-native to 1.7.2); verify that the
persist.sql-native 1.7.2 artifact is actually available to the test environment
and, if it is not, either restore the dependency to 1.7.1 or update the test
fixture resolution (e.g., test repo settings) so the 1.7.2 artifact can be
fetched; locate the version line ("version = \"1.7.2\"") in this file and the
corresponding persist.sql-native declaration in other test fixtures (e.g.,
tool_test_generate_35/Ballerina.toml) and make the same corrective change across
fixtures to keep them consistent.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_111_h2/Ballerina.toml`:
- Around line 10-13: The dependency entry for artifactId "persist.sql-native"
under [[platform.java21.dependency]] is a duplicate of earlier fixtures and
needs to be synchronized; find all occurrences of the dependency (look for the
[[platform.java21.dependency]] block with groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native") and ensure the version is consistently set to
"1.7.2" (or remove the duplicate block if it’s unintended), then re-run the
test/verification that flagged this fixture to confirm the change.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_113_schema/Ballerina.toml`:
- Around line 10-13: The dependency block for platform.java21.dependency
(artifactId "persist.sql-native") in tool_test_generate_113_schema currently
shows version "1.7.2"; apply the same dependency bump and verification steps you
used for tool_test_generate_5: ensure the version is updated consistently across
test outputs, run the same compatibility checks against distribution 2201.11.0,
and confirm the updated version does not break builds or tests referenced by the
test suite; update the Ballerina.toml entry for this test to match the verified
version and document the compatibility result.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_116/Ballerina.toml`:
- Line 13: The Ballerina.toml version line was updated to version = "1.7.2";
ensure this version bump is propagated consistently across the repo by updating
any other Ballerina.toml, package metadata, CI configs, or release/version
constants that reference the previous version, and run the test matrix to
confirm no regressions; specifically search for and replace the previous version
string with "1.7.2" in project metadata and update changelogs or docs as needed
before committing.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_121_init_params_h2/Ballerina.toml`:
- Line 10: The Ballerina.toml currently has the updated line version = "1.7.2"
which matches the PR; ensure this change is applied consistently by searching
for any other occurrences of Ballerina.toml or version = "..." in the repo
(including module manifests or CI/build configs) and update them to "1.7.2" if
they differ so all manifests remain synchronized.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_123_init_params_multiple_entities/Ballerina.toml`:
- Around line 7-10: The [[platform.java21.dependency]] block's version for
groupId "io.ballerina.stdlib" and artifactId "persist.sql-native" should match
the earlier fixtures; update the version field to "1.7.2" (or confirm it already
is) and verify all other occurrences of this dependency (search for the same
groupId/artifactId) are consistently bumped to 1.7.2 so tests use the same
dependency version across fixtures.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_124_init_params_with_config/Ballerina.toml`:
- Around line 7-10: Update the dependency version for the TOML dependency table
[[platform.java21.dependency]] (keys groupId, artifactId, version) to match the
earlier fixtures by setting version = "1.7.2"; then scan other test fixture TOML
files for the same groupId/artifactId (io.ballerina.stdlib / persist.sql-native)
and verify there are no conflicting versions or duplicate dependency
entries—harmonize them to 1.7.2 if any differ.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml`:
- Line 10: The Ballerina.toml's version key should be updated to "1.7.2" to
match the PR; edit the version = "..." entry in
persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml
to "1.7.2" and scan for any other occurrences of the package version (other
Ballerina.toml files or metadata) to keep them consistent.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_2/Ballerina.toml`:
- Around line 10-13: The dependency version for the
[[platform.java21.dependency]] block referencing artifactId "persist.sql-native"
must be updated to match the same version used in the other test outputs (as
done in tool_test_generate_5); edit the version value in this block to the
approved version and then verify consistency across all test resource outputs
(search for platform.java21.dependency and persist.sql-native in test fixtures)
to ensure no other test files still reference the old version.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_22/Ballerina.toml`:
- Around line 10-13: The test output Ballerina.toml has an inconsistent
dependency version for the SQL native module; update the
[[platform.java21.dependency]] block so the groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native" use the same version value applied in
tool_test_generate_5 (make the version entry consistent across tests), and
re-run the test to verify the file matches the expected output for
tool_test_generate_22; check the "version" field in that block to locate and
change the value.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_27/Ballerina.toml`:
- Around line 10-13: The dependency block [[platform.java21.dependency]] with
groupId "io.ballerina.stdlib" and artifactId "persist.sql-native" needs the same
version update/verification applied earlier in tool_test_generate_5; change the
version value to match that test's expected version and re-run the same
verification (compare the version string in this [[platform.java21.dependency]]
block against the version used in tool_test_generate_5) to ensure consistency
across test outputs.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_28/Ballerina.toml`:
- Around line 10-13: This output contains a mismatched dependency version for
artifactId "persist.sql-native" — update the version value in the Ballerina.toml
entry for [[platform.java21.dependency]] (artifactId "persist.sql-native") to
the same version used in the corresponding tool_test_generate_5 expected output,
then re-run the test generation/verification to ensure the updated
Ballerina.toml matches the canonical expected file; also confirm there are no
duplicate dependency entries and update any related lock/checksum files if
present.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_31/Ballerina.toml`:
- Around line 7-10: The Ballerina.toml entry for [[platform.java21.dependency]]
(groupId "io.ballerina.stdlib", artifactId "persist.sql-native") must be aligned
with the same dependency version used in the earlier fixtures; update the
version value here to match the other test fixtures' bumped version and re-run
the test suite to verify consistency.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_40/Ballerina.toml`:
- Line 13: The version line "version = \"1.7.2\"" in Ballerina.toml is already
updated to match the PR; keep this version bump as-is (do not revert) so it
remains consistent with the rest of the changes and ensure no other TOML files
contain an outdated version string that would need synchronizing.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_58_mssql/Ballerina.toml`:
- Line 13: The Ballerina.toml currently sets version = "1.7.2"; confirm and keep
this bump, and ensure consistency by updating any other package metadata or
Ballerina.toml files in the repo to the same version; check for mismatches in
package/version declarations and align them so "version" in Ballerina.toml
matches the PR-wide version.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_59_mssql/Ballerina.toml`:
- Around line 10-13: Update the dependency version for the
platform.java21.dependency block referencing artifactId "persist.sql-native"
(the version field in the Ballerina.toml snippet) to match the same bump used in
tool_test_generate_5, and run the compatibility verification against
distribution 2201.5.0 to ensure no regressions; locate the
[[platform.java21.dependency]] entry with groupId "io.ballerina.stdlib" and
artifactId "persist.sql-native" and change its version to the same value used in
tool_test_generate_5, then execute the same compatibility checks you used for
that test output to confirm it works with distro 2201.5.0.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_63_mssql/Ballerina.toml`:
- Around line 10-13: The TOML shows a dependency bump for artifactId
"persist.sql-native" under the [[platform.java21.dependency]] table to version
"1.7.2"; ensure this matches the earlier fixture bumps by searching for other
occurrences of "persist.sql-native" and updating any mismatched versions to
"1.7.2", and if this entry is a duplicate of an existing dependency block remove
the redundant one so there is only a single [[platform.java21.dependency]] entry
for "persist.sql-native".

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_64/Ballerina.toml`:
- Around line 10-13: This file contains a duplicate dependency bump for the same
dependency block ([[platform.java21.dependency]] with groupId
"io.ballerina.stdlib", artifactId "persist.sql-native", version "1.7.2"); ensure
the version bump is consistent with earlier fixtures by either removing the
duplicate block or updating the version to match the canonical fixture, and
verify no conflicting entries for "persist.sql-native" remain across test
fixtures; locate the dependency blocks by the artifactId "persist.sql-native"
and adjust or deduplicate them so all tests use the same version.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_91/Ballerina.toml`:
- Around line 10-13: The Ballerina.toml shows a dependency version bump for
io.ballerina.stdlib:persist.sql-native to 1.7.2; verify and apply the same
version change across all related fixtures and test resources so they remain
consistent with earlier bumps — search for the unique identifiers groupId
"io.ballerina.stdlib" and artifactId "persist.sql-native" (and the section
header platform.java21.dependency) and update any mismatched version fields to
"1.7.2", then run the test suite to confirm no remaining discrepancies.

---

Nitpick comments:
In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_84/Ballerina.toml`:
- Line 13: The CI failure risk comes from changing persist.sql-native to version
"1.7.2" in Ballerina.toml while BalProjectUtils.validateSchemaFile now forces
offline = false and will attempt live resolution; update the code to handle
air-gapped CI by adding an offline fallback or conditional behavior in
BalProjectUtils.validateSchemaFile (e.g., detect CI/offline via env var or a
configuration flag and fall back to using local cached artifacts or skip live
resolution), or alternatively document and ensure all CI pipelines can reach
Ballerina/Maven Central; reference BalProjectUtils.validateSchemaFile and the
Ballerina.toml persist.sql-native version bump when making the change.

In `@persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java`:
- Around line 166-172: The call to buildOptionsBuilder.setOffline(false) in
validateSchemaFile is hardcoded; make offline mode configurable by reading a
config/flag and passing that boolean to setOffline instead. Replace the literal
false with a value obtained from your configuration source (for example a
PersistConfig.isOfflineMode() method, a CLI flag parser, or
System.getProperty/ENV lookup) and default to false when the config is absent;
update both places where setOffline(...) is used so
BuildOptions.BuildOptionsBuilder.setOffline(offLineFlag) uses the configured
value and ensure any new config accessor is documented/initialized before
validateSchemaFile runs.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3e9480d and 4604e14.

📒 Files selected for processing (102)
  • changelog.md
  • gradle.properties
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_1/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_101/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_105/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_106/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_107_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_108_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_109_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_11/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_110_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_111_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_112_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_113_schema/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_114/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_115/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_116/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_117/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_118_init_params_mysql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_119_init_params_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_12/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_120_init_params_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_121_init_params_h2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_122_init_params_relationships/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_123_init_params_multiple_entities/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_124_init_params_with_config/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_125_init_params_negative_invalid_model/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_13/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_15/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_16/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_17/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_19/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_22/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_24/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_25/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_26/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_27/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_28/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_29/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_3/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_31/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_33/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_34/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_35/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_36/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_37/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_39/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_40/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_41/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_46/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_5/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_50/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_51/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_58_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_59_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_60_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_61_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_62_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_63_mssql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_64/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_65/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_66_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_67_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_68_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_69_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_7/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_70_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_71_postgresql/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_72/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_73/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_74/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_75/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_76/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_77/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_78/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_79/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_8/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_80/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_81/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_82/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_83/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_84/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_85/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_86/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_87/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_88/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_89/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_9/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_90/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_91/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_92/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_93/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_94/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_backward_compat/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_hybrid/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_1/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_2/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_3/Ballerina.toml
  • persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_multimodel_4/Ballerina.toml
  • persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java
  • persist-tool/BalTool.toml

groupId = "io.ballerina.stdlib"
artifactId = "persist.sql-native"
version = "1.7.1"
version = "1.7.2"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check Maven Central for persist.sql-native:1.7.2
curl -sf "https://search.maven.org/solrsearch/select?q=g:io.ballerina.stdlib+AND+a:persist.sql-native+AND+v:1.7.2&rows=1&wt=json" \
  | python3 -c "import sys, json; data=json.load(sys.stdin); print('Found:', data['response']['numFound'], 'result(s)'); [print(d['id'], d['latestVersion']) for d in data['response']['docs']]"

Repository: ballerina-platform/persist-tools

Length of output: 94


🏁 Script executed:

# Find BalProjectUtils.java file
find . -name "BalProjectUtils.java" -type f

Repository: ballerina-platform/persist-tools

Length of output: 152


🏁 Script executed:

# Search for offline mode in BalProjectUtils.java to verify the companion change
rg -n "offline" --type java | head -20

Repository: ballerina-platform/persist-tools

Length of output: 400


🏁 Script executed:

# Read BalProjectUtils.java around the offline mode changes
sed -n '160,200p' ./persist-core/src/main/java/io/ballerina/persist/utils/BalProjectUtils.java

Repository: ballerina-platform/persist-tools

Length of output: 2330


🏁 Script executed:

# Check the full Ballerina.toml file to understand the version context
cat ./persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_85/Ballerina.toml

Repository: ballerina-platform/persist-tools

Length of output: 337


🏁 Script executed:

# Search for any version 1.7.2 references in the codebase
rg "1\.7\.2" -n

Repository: ballerina-platform/persist-tools

Length of output: 11443


persist.sql-native:1.7.2 is not published to Maven Central—this will block all test execution.

The companion change in BalProjectUtils.java (lines 168, 193) switches offline mode to false to allow live Maven fetches for dependencies. However, the artifact does not exist on Maven Central yet. Since 1.7.2 is referenced in 70+ test fixture files across the test suite, enabling offline mode to false will cause dependency-resolution failures on every test run using these fixtures. This change cannot be merged until the artifact is published.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@persist-cli-tests/src/test/resources/test-src/output/tool_test_generate_85/Ballerina.toml`
at line 13, The test fixtures reference the unpublished dependency version
string "version = \"1.7.2\"" which will fail if tests are allowed to fetch Maven
artifacts; revert the change that disables offline resolution in BalProjectUtils
(restore the offline mode flag to true) or alternatively update the
Ballerina.toml entries to a published artifact version instead of "1.7.2" so
tests can run without remote resolution; locate the change in BalProjectUtils
that flipped offline mode to false and either undo it or update all fixture
version strings away from "1.7.2".

@codecov
Copy link

codecov bot commented Feb 24, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 85.04%. Comparing base (3e9480d) to head (4604e14).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #444   +/-   ##
=======================================
  Coverage   85.04%   85.04%           
=======================================
  Files          68       68           
  Lines        6808     6808           
  Branches      921      921           
=======================================
  Hits         5790     5790           
  Misses        730      730           
  Partials      288      288           

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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