Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sbertix/spm-dependencies-checker

A GitHub Action to monitor your Swift Package Manager dependencies.
https://github.com/sbertix/spm-dependencies-checker

actions github github-actions spm swift

Last synced: 3 months ago
JSON representation

A GitHub Action to monitor your Swift Package Manager dependencies.

Awesome Lists containing this project

README

        

# SPM Dependencies Checker

This action process your `Package.swift` file to detect your **Swift Package Manager** dependencies, and compiles a list with all outdated ones.

## Usage

This action needs to run on **macOS** and requires [**actions/checkout**](https://github.com/actions/checkout) in order to function correctly.
A possible _workflow_ could be as following:

```yml
name: dependencies

on:
schedule:
- cron: "0 0 * * *"

jobs:
dependencies:
runs-on: macos-latest

steps:
- uses: actions/checkout@master
- uses: sbertix/spm-dependencies-checker@master
with:
language: html # optional. Defaults to `markdown`.
excluding: | # optional. Packages you want to exclude.
ComposableRequest
@sbertix
```

### Inputs

language (optional)

An optional `string` holding either `html` or `txt` (otherwise `txt` is used), representing the language used for the `message` output.

excluding (optional)

A `string` made of newline-separated components, either representing library names or authors (when starting with `@`) to exclude from the analysis.

### Outputs

**message**

A plain (or HTML, depending on `language` _input_) `string` with outdated dependencies info.

txt

```
https://github.com/sbertix/Swiftagram 4.0.0 -> 4.1.0 need(s) updating.
```

html

```html

Dependencies



```

outdated-dependencies

A `string` holding the _JSON representation_ of the `array` containing the list of all outdated dependencies.

```json
[
{
"name": "Swiftagram",
"owner": "Sbertix",
"url": "https://github.com/sbertix/Swiftagram",
"installed": "4.0.0",
"last": "4.1.2"
}
]
```