diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..06ea155 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,34 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + +env: + CARGO_TERM_COLOR: always + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + core.autocrlf: input + - run: cargo fmt --check + - run: cargo clippy --all-targets -- -D warnings + + test: + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, windows-latest] + runs-on: ${{ matrix.os }} + steps: + # core.autocrlf=input keeps the working tree LF on every OS: the + # span/byte-offset tests and the git rename assertions compare exact + # fixture bytes. + - uses: actions/checkout@v4 + with: + core.autocrlf: input + - run: cargo test --locked diff --git a/Cargo.toml b/Cargo.toml index 07bcf7f..cde4d50 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,12 @@ name = "jmove" version = "0.1.0" edition = "2024" +description = "Project-aware file mover and import fixer for TypeScript/JavaScript and Java: rewrites every import, applies atomically, dry-run + JSON for AI agents." +license = "GPL-3.0-or-later" +repository = "https://github.com/loki5512344/jmove" +readme = "README.md" +keywords = ["refactoring", "imports", "java", "typescript", "rename"] +categories = ["development-tools", "command-line-utilities"] [dependencies] anyhow = "1.0.104"