lycheeverse/lychee-action
### [`v1.4.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.4.1)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.4.0...v1.4.1)
Bugfix: update to latest lychee 0.9.0 Docker image tag
Due to a race condition in the pipeline, we pushed an older version of lychee (0.8.2) to the 0.9.0 tag.
The new release binaries didn't exist yet, causing the binary to use old ones.
This is fixed now and the image got pushed again. Update the image sha accordingly.
### [`v1.4.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.4.0)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.2...v1.4.0)
Update to lychee 0.9.0. See highlights [here](https://togithub.com/lycheeverse/lychee/releases/tag/v0.9.0).
### [`v1.3.2`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.2)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.1...v1.3.2)
Create an output file even if lychee panics (see [https://github.com/lycheeverse/lychee-action/issues/82](https://togithub.com/lycheeverse/lychee-action/issues/82)).
### [`v1.3.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.1)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.0...v1.3.1)
Bugfix: Use `>` as redirect operator for output files ([#77](https://togithub.com/lycheeverse/lychee-action/issues/77)). Thanks to [@vipulgupta2048](https://togithub.com/vipulgupta2048).
### [`v1.3.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.0)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.2.1...v1.3.0)
##### Update lychee bin to 0.8.2, with directory support.
This will be the default in the next major version, but can already be tested with the following config:
```yaml
- name: Link Checker
uses: lycheeverse/lychee-action@v1.3.0
with:
##### Recursively check all supported files (html, markdown for now) in repo
args: --verbose --no-progress .
```
lychee supports plaintext files as well as many other formats, but as of now `lychee .` is conservative and
will only check HTML and Markdown files. So it should be a safe replacement for the current default:
`'./**/*.md' './**/*.html'`. It should also be faster and will use less file-handles than glob patterns.
##### Other highlights of lychee 0.8.2:
- Improve concurrency with streams ([https://github.com/lycheeverse/lychee/pull/330](https://togithub.com/lycheeverse/lychee/pull/330))
- Fix false-positives for special Github URLs (like /sponsors or /marketplace)
- Add support for `.lycheeignore` file [https://github.com/lycheeverse/lychee/issues/308](https://togithub.com/lycheeverse/lychee/issues/308) ([https://github.com/lycheeverse/lychee/pull/402](https://togithub.com/lycheeverse/lychee/pull/402))
Especially the `.lycheeignore` part should be helpful for folks that used workarounds like custom ignore files before.
This is now a native feature of lychee. See [https://github.com/lycheeverse/lychee/issues/308](https://togithub.com/lycheeverse/lychee/issues/308) for more info.
Full lychee 0.8.2 changelog [here](https://togithub.com/lycheeverse/lychee/releases/tag/v0.8.2).
### [`v1.2.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.2.1)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.2.0...v1.2.1)
##### Fix evaluating glob patterns
Glob patterns were not properly evaluated for three reasons:
1. Quotes around globs were not preserved. As a result, unquoted wildcards were evaluated by bash instead of lychee
2. `**` patterns handled by the [glob](https://togithub.com/rust-lang-nursery/glob) crate need to be prefixed with a separator, e.g. `./`. See code [here](https://togithub.com/rust-lang-nursery/glob/blob/master/src/lib.rs#L536) and [here](https://togithub.com/rust-lang-nursery/glob/blob/337d417ee872dc04e8e6faff4b7379141933df59/src/lib.rs#L583-L596). We should probably switch to [globset](https://togithub.com/BurntSushi/globset) at some point, which doesn't have that limitation.
3. The lychee command itself needs to be executed with `eval` to make it find links. Otherwise it interprets the input argument (`${ARGS[@]}`) as a string and tries to find links within that string. (String input is supported by lychee). We want to interpret it as individual (whitespace-separated) arguments however. (Note that Github Actions doesn't support arrays as inputs, which prevents us from using array splitting.)
**Recommended usage inside pipelines: Surround glob patterns with single quotes and prefix them with `./`.**
```yaml
- name: Link Checker
uses: lycheeverse/lychee-action@v1.1.1
with:
##### Check all Markdown and HTML files
args: --verbose --no-progress './**/*.md' './**/*.html'
```
For more context, see [#67](https://togithub.com/lycheeverse/lychee-action/issues/67) and [#68](https://togithub.com/lycheeverse/lychee-action/issues/68).
The examples have been updated accordingly.
### [`v1.2.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.2.0)
[Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.1.1...v1.2.0)
##### New inputs
| Input | Example | Description |
|--------|---------------|-------------------------------------------------|
| format | json | Use json as output format (instead of markdown) |
| output | /tmp/foo.json | Use different output filename |
| fail | true | Fail action on broken links |
##### Full example config
```yaml
- name: Link Checker
uses: lycheeverse/lychee-action@v1.2.0
with:
##### Check all markdown and html files in repo (default)
args: --verbose --no-progress **/*.md **/*.html
##### Use json as output format (instead of markdown)
format: json
##### Use different output filename
output: /tmp/foo.txt
##### Fail action on broken links
fail: true
```
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
v1.1.1
->v1.4.1
Release Notes
lycheeverse/lychee-action
### [`v1.4.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.4.1) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.4.0...v1.4.1) Bugfix: update to latest lychee 0.9.0 Docker image tag Due to a race condition in the pipeline, we pushed an older version of lychee (0.8.2) to the 0.9.0 tag. The new release binaries didn't exist yet, causing the binary to use old ones. This is fixed now and the image got pushed again. Update the image sha accordingly. ### [`v1.4.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.4.0) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.2...v1.4.0) Update to lychee 0.9.0. See highlights [here](https://togithub.com/lycheeverse/lychee/releases/tag/v0.9.0). ### [`v1.3.2`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.2) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.1...v1.3.2) Create an output file even if lychee panics (see [https://github.com/lycheeverse/lychee-action/issues/82](https://togithub.com/lycheeverse/lychee-action/issues/82)). ### [`v1.3.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.1) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.3.0...v1.3.1) Bugfix: Use `>` as redirect operator for output files ([#77](https://togithub.com/lycheeverse/lychee-action/issues/77)). Thanks to [@vipulgupta2048](https://togithub.com/vipulgupta2048). ### [`v1.3.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.3.0) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.2.1...v1.3.0) ##### Update lychee bin to 0.8.2, with directory support. This will be the default in the next major version, but can already be tested with the following config: ```yaml - name: Link Checker uses: lycheeverse/lychee-action@v1.3.0 with: ##### Recursively check all supported files (html, markdown for now) in repo args: --verbose --no-progress . ``` lychee supports plaintext files as well as many other formats, but as of now `lychee .` is conservative and will only check HTML and Markdown files. So it should be a safe replacement for the current default: `'./**/*.md' './**/*.html'`. It should also be faster and will use less file-handles than glob patterns. ##### Other highlights of lychee 0.8.2: - Improve concurrency with streams ([https://github.com/lycheeverse/lychee/pull/330](https://togithub.com/lycheeverse/lychee/pull/330)) - Fix false-positives for special Github URLs (like /sponsors or /marketplace) - Add support for `.lycheeignore` file [https://github.com/lycheeverse/lychee/issues/308](https://togithub.com/lycheeverse/lychee/issues/308) ([https://github.com/lycheeverse/lychee/pull/402](https://togithub.com/lycheeverse/lychee/pull/402)) Especially the `.lycheeignore` part should be helpful for folks that used workarounds like custom ignore files before. This is now a native feature of lychee. See [https://github.com/lycheeverse/lychee/issues/308](https://togithub.com/lycheeverse/lychee/issues/308) for more info. Full lychee 0.8.2 changelog [here](https://togithub.com/lycheeverse/lychee/releases/tag/v0.8.2). ### [`v1.2.1`](https://togithub.com/lycheeverse/lychee-action/releases/v1.2.1) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.2.0...v1.2.1) ##### Fix evaluating glob patterns Glob patterns were not properly evaluated for three reasons: 1. Quotes around globs were not preserved. As a result, unquoted wildcards were evaluated by bash instead of lychee 2. `**` patterns handled by the [glob](https://togithub.com/rust-lang-nursery/glob) crate need to be prefixed with a separator, e.g. `./`. See code [here](https://togithub.com/rust-lang-nursery/glob/blob/master/src/lib.rs#L536) and [here](https://togithub.com/rust-lang-nursery/glob/blob/337d417ee872dc04e8e6faff4b7379141933df59/src/lib.rs#L583-L596). We should probably switch to [globset](https://togithub.com/BurntSushi/globset) at some point, which doesn't have that limitation. 3. The lychee command itself needs to be executed with `eval` to make it find links. Otherwise it interprets the input argument (`${ARGS[@]}`) as a string and tries to find links within that string. (String input is supported by lychee). We want to interpret it as individual (whitespace-separated) arguments however. (Note that Github Actions doesn't support arrays as inputs, which prevents us from using array splitting.) **Recommended usage inside pipelines: Surround glob patterns with single quotes and prefix them with `./`.** ```yaml - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: ##### Check all Markdown and HTML files args: --verbose --no-progress './**/*.md' './**/*.html' ``` For more context, see [#67](https://togithub.com/lycheeverse/lychee-action/issues/67) and [#68](https://togithub.com/lycheeverse/lychee-action/issues/68). The examples have been updated accordingly. ### [`v1.2.0`](https://togithub.com/lycheeverse/lychee-action/releases/v1.2.0) [Compare Source](https://togithub.com/lycheeverse/lychee-action/compare/v1.1.1...v1.2.0) ##### New inputs | Input | Example | Description | |--------|---------------|-------------------------------------------------| | format | json | Use json as output format (instead of markdown) | | output | /tmp/foo.json | Use different output filename | | fail | true | Fail action on broken links | ##### Full example config ```yaml - name: Link Checker uses: lycheeverse/lychee-action@v1.2.0 with: ##### Check all markdown and html files in repo (default) args: --verbose --no-progress **/*.md **/*.html ##### Use json as output format (instead of markdown) format: json ##### Use different output filename output: /tmp/foo.txt ##### Fail action on broken links fail: true ```Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.