Skip to content

feat: publish chainservice npm package#49

Open
just-a-node wants to merge 38 commits intodevfrom
feat/publish-chainservice
Open

feat: publish chainservice npm package#49
just-a-node wants to merge 38 commits intodevfrom
feat/publish-chainservice

Conversation

@just-a-node
Copy link
Contributor

🤖 Linear

Closes CONG-XXX

LayneHaber
LayneHaber previously approved these changes Feb 14, 2025
Copy link
Contributor

@LayneHaber LayneHaber left a comment

Choose a reason for hiding this comment

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

curious about the isolmate package change, but looks like its just used for a non-interface CREATE3 in the XERC20FactoryForTest

"@openzeppelin/contracts-upgradeable": "5.0.2",
"dotenv": "^16.4.5",
"isolmate": "github:defi-wonderland/isolmate#59e18043c2450fef550f1744b3705ce9ebcaf1c8",
"solmate": "^6.8.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

do we have any idea what the difference is between the two packages?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, only used for the XERC20 contracts.

Main diff is that DW version has interfaces, the regular solmate package does not.

DW version has a package-lock.json that conflicts with CI: STDERR warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. - that's the reason it was switched out.

LayneHaber
LayneHaber previously approved these changes Feb 28, 2025
Copilot AI review requested due to automatic review settings July 26, 2025 00:37
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR enables publishing of the chainservice npm package by adding CI/CD automation and updating package configurations. The changes prepare three packages (contracts, utils, and chainservice) for automated publishing to npm with proper versioning and dependency management.

  • Updates package versions to 0.0.1-alpha.11 for contracts, utils, and chainservice packages
  • Adds CI/CD workflow steps to automatically publish packages in dependency order
  • Replaces isolmate dependency with standard solmate package

Reviewed Changes

Copilot reviewed 9 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
packages/utils/package.json Adds publishConfig and updates version to alpha.11
packages/contracts/package.json Adds publishConfig, updates version, and switches from isolmate to solmate
packages/adapters/chainservice/package.json Adds publishConfig and updates version to alpha.11
.github/workflows/build-test-deploy.yml Adds three separate publishing steps for contracts, utils, and chainservice packages
README.md Documents chainservice package and dependency order
Multiple .sol files Updates import statements from isolmate to solmate/OpenZeppelin

pragma solidity >=0.8.4 <0.9.0;

import {IERC20} from 'isolmate/interfaces/tokens/IERC20.sol';
import {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';
Copy link

Copilot AI Jul 26, 2025

Choose a reason for hiding this comment

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

[nitpick] The import is switching from isolmate to OpenZeppelin, but other files are switching to solmate. Consider using a consistent library choice across the codebase for better maintainability.

Copilot uses AI. Check for mistakes.
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.

5 participants