Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
964c0c8
GH Action: Fix bug in testing latest perl version
mikkoi May 17, 2026
4c36e5a
GH Action: Add EXTENDED_TESTING var to linux workflow
mikkoi May 17, 2026
49045a0
GH Action: Remove Perl 5.30 from linux workflow, no dzil
mikkoi May 17, 2026
e25a2b9
GH Action: Update actions/checkout to v6 in linux workflow
mikkoi May 17, 2026
55cb6ad
GH Action: Correct typo in linux workflow
mikkoi May 17, 2026
e985d10
GH Action: Add on->pull_request to linux workflow
mikkoi May 17, 2026
239997c
GH Action: Copy changes from env-dot to windows workflow
mikkoi May 17, 2026
d3e056c
Add build badges to README.md
mikkoi May 17, 2026
1c82c6f
GH Action: Add ci workflow
mikkoi May 17, 2026
60740f7
GH Action: Add ci workflow, fix #1
mikkoi May 17, 2026
c520087
Add Codecov badge to README.md
mikkoi May 17, 2026
ae63081
Build: do not generate README, we include weaved README.md now
mikkoi May 17, 2026
1e556fb
Remove tabs
mikkoi May 17, 2026
921d73c
Remove PodWeaver and PerlTidy from dist.ini/@MIKKOI
mikkoi May 17, 2026
ba74bd0
Add Prereqs / DevelopSuggests suggests to dist.ini
mikkoi May 17, 2026
784c551
Add AUTHOR AND Legal to all lib/ files
mikkoi May 17, 2026
07167de
Add Coveralls badge to README.md
mikkoi May 17, 2026
9a7f274
Add Rename GH Action workflows in README.md badges
mikkoi May 17, 2026
b205722
GH Actions: Rename secrets.COVERALLS_TOKEN to COVERALLS_REPO_TOKEN
mikkoi May 17, 2026
a1b58c8
Sort Software::Policies in dist.ini
mikkoi May 17, 2026
5516f04
Remove README.md from MANIFEST.SKIP, update
mikkoi May 17, 2026
ce18e74
Add .weavefilerc
mikkoi May 17, 2026
894f421
Update bundle @MIKKOI to version 0.005
mikkoi May 17, 2026
adc01e8
Add WeaveFile to dist.ini
mikkoi May 17, 2026
03b7981
Update .weavefile
mikkoi May 17, 2026
9ad1a82
Update lib files
mikkoi May 17, 2026
6c1f1bb
Update README
mikkoi May 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: CI
on:
pull_request:
push:
branches:
- '*'
workflow_dispatch:

jobs:
build:
name: Build distribution
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.42
steps:
- id: checkout
name: Checkout
uses: actions/checkout@v6
- id: run-tests
name: Run Tests
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
EXTENDED_TESTING: 1
RELEASE_TESTING: 1
run: auto-build-and-test-dist
- id: upload-artifact
# Upload artifact to a GitHub Actions "storage".
name: Upload Build
uses: actions/upload-artifact@v7.0.1
with:
name: build_dir
path: build_dir
coverage:
needs: build
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.42
steps:
- id: checkout
name: Checkout
uses: actions/checkout@v6
- id: download-artifact
# Download the artifact that was uploaded in earlier step.
name: Download Build
uses: actions/download-artifact@v8.0.1
with:
name: build_dir
path: .
- id: install-deps
name: Install deps
run: cpan-install-dist-deps
- id: test
name: Test
run: test-dist
env:
CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}}
COVERALLS_TOKEN: ${{secrets.COVERALLS_REPO_TOKEN}}
17 changes: 9 additions & 8 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,20 @@
name: linux

on:
pull_request:
push:
branches:
- '*'
# tags-ignore:
# - '*'
workflow_dispatch:
# pull_request:

jobs:
perl:
env:
# some plugins still needs this to run their tests...
# some plugins still need this to run their tests...
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
EXTENDED_TESTING: 1
RELEASE_TESTING: 1

runs-on: ubuntu-latest
Expand All @@ -28,7 +27,7 @@ jobs:
- '5.40'
- '5.34'
- '5.28'
- '5.20'
# - '5.20' No dzil
# - '5.18' No dzil
# - '5.16' No dzil
# - '5.14' No dzil
Expand All @@ -42,7 +41,7 @@ jobs:
steps:
- id: checkout
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
- id: explore-tools-perl
name: perl -V
run: perl -V
Expand All @@ -67,12 +66,14 @@ jobs:
- id: list-deps-with-verbosity
name: List Dependencies With Verbosity
run: |
dzil --verbose listdeps --requires --develop recommends --suggests --cpanm-version --omit-core ${{ matrix.perl-version }}
dzil --verbose listdeps --requires --develop recommends --suggests --cpanm-version --omit-core "$(perl -E 'say $];')"
shell: bash
- id: install-dzil-deps
name: Install Dependencies
run: |
dzil listdeps --requires --develop recommends --suggests --cpanm-version --omit-core ${{ matrix.perl-version }} \
dzil listdeps --requires --develop recommends --suggests --cpanm-version --omit-core "$(perl -E 'say $];')" \
| cpanm --verbose --force --notest || true
shell: bash
# - id: build-project-and-explore
# name: Build Project And Explore
# run: |
Expand Down
164 changes: 83 additions & 81 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -1,71 +1,42 @@
name: windows

on:
pull_request:
push:
branches:
- '*'
tags-ignore:
- '*'
workflow_dispatch:
# pull_request:

jobs:
perl:
# name: Perl Perl ${{ matrix.perl }} on ${{ matrix.os }}
# https://justatheory.com/2021/11/cache-perl-github-workflows/
env:
# some plugins still needs this to run their tests...
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
RELEASE_TESTING: 1

# strategy:
# matrix:
# os: [ windows ]
# perl: [ 'latest' ]
test:
runs-on: windows-latest
# runs-on: ${{ matrix.os }}-latest

steps:
- id: checkout
name: Checkout
uses: actions/checkout@v4

# There is no strategy/matrix because Windows container has its own
# Strawberry Perl and we go with whatever version it is.

# - id: cache-cpan
# name: Cache CPAN modules
# uses: actions/cache@v4
# # env:
# # cache-name: cache-cpan-modules
# with:
# # npm cache files are stored in `~/.npm` on Linux/macOS
# # path: ~/.cpan
# # path: local
# path: C:/Strawberry/perl/site/lib
# # key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
# # key: perl-${{ steps.perl.outputs.perl-hash }}
# key: static
# # restore-keys: |
# # ${{ runner.os }}-build-${{ env.cache-name }}-
# # ${{ runner.os }}-build-
# # ${{ runner.os }}-
uses: actions/checkout@v6

- id: setup-strawberry-perl
name: Setup Strawberry Perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: '5.42'
distribution: strawberry # Critical for Windows compatibility

- id: explore-tools-perl
name: Explore Tools Perl
shell: pwsh
run: |
perl -V

- id: explore-tools-cpan
name: Explore Tools Cpan
shell: pwsh
run: |
cpan -V
- id: explore-tools-cpanm
name: Explore Tools Cpanm
run: |
cpanm -V

- id: explore-filesystem
name: Explore Filesystem
shell: pwsh
run: |
dir
dir C:\
Expand All @@ -76,57 +47,88 @@ jobs:
dir D:\
# dir .cpan
# dir .cpan\build

- id: explore-whoami
name: Explore Who Am I
shell: pwsh
run: |
whoami

- id: explore-environment
name: Explore Environment
shell: pwsh
run: |
Get-ChildItem env: | Format-Table -Wrap
- id: install-dzil

- id: install-test2
name: Install Test2
shell: pwsh
run: |
cpanm --notest --force Test2::Suite

- id: install-dist-zilla
name: Install Dist::Zilla
shell: pwsh
run: |
cpanm --verbose --force --notest Dist::Zilla
# - id: install-extra
# name: Install Extra Dependencies Which Are Somehow Missing
# env:
# PUREPERL_ONLY: 1
# run: |
# cpanm --verbose --force --notest Test::Perl::Critic
# # - id:
# name: Install Dependencies
# # #run: cpm install -g --no-test --show-build-log-on-failure --cpanfile cpanfile
# # run: cpm install -g --no-test --show-build-log-on-failure --cpanfile cpanfile
# # - id:
# name: Makefile.PL
# # run: perl Makefile.PL
- id: list-dzil-authordeps-with-verbosity
name: List Dist::Zilla Author Dependencies With Verbosity
cpanm --notest --force Dist::Zilla

- id: explore-missing-dzil-authordeps
name: Explore Missing Dist::Zilla Author Dependencies
shell: pwsh
run: |
dzil --verbose authordeps --cpanm-versions
- id: install-dzil-authordeps
name: Install Dist::Zilla Author Dependencies
dzil authordeps --missing --cpanm-versions

- id: install-missing-dzil-authordeps
name: Install Missing Dist::Zilla Author Dependencies
shell: pwsh
run: |
dzil authordeps --cpanm-versions \
| cpanm --verbose --force --notest || true
- id: list-deps-with-verbosity
name: List Dependencies With Verbosity
$authDeps = dzil authordeps --missing --cpanm-versions
if ($authDeps) {
Write-Host "Installing missing author dependencies: $authDeps"
$authDeps | cpanm --verbose --force --notest
if ($LASTEXITCODE -eq 1) {
Write-Host "cpanm returned 1, but checking if work got done..."
$authDepsCheck = dzil authordeps --missing
# if ($authDepsCheck | ) {
# Write-Host "Work got done successfully despite exit code 1."
# $global:LASTEXITCODE = 0
# }
}
$global:LASTEXITCODE = 0

} else {
Write-Host "No missing author dependencies found."
}

- id: explore-missing-deps
name: Explore Missing Dependencies
shell: pwsh
run: |
dzil --verbose listdeps --develop --requires --recommends --suggests --cpanm-version
- id: install-dzil-deps
name: Install Dependencies
# dzil listdeps --requires --develop recommends --suggests --cpanm-version --omit-core ${{ matrix.perl-version }} \
dzil listdeps --missing --develop --requires --no-recommends --no-suggests --cpanm-version

- id: install-missing-deps
name: Install Missing Dependencies
shell: pwsh
run: |
dzil listdeps --requires --develop recommends --suggests --cpanm-version \
| cpanm --verbose --force --notest || true
# - id: build-project-and-explore
# name: Build Project And Explore
# run: |
# dzil --verbose build \
# && Get-ChildItem -Path -Recurse -Force -Exclude .git
$listDeps = dzil listdeps --missing --develop --requires --no-recommends --no-suggests --cpanm-version
if ($listDeps) {
Write-Host "Installing missing dependencies: $listDeps"
$listDeps | cpanm --verbose --force --notest
if ($LASTEXITCODE -eq 1) {
Write-Host "cpanm returned 1, but checking if work got done..."
dzil listdeps --missing --develop --requires --no-recommends --no-suggests
# if ($?) {
# Write-Host "Work got done successfully despite exit code 1."
# $global:LASTEXITCODE = 0
# }
}
$global:LASTEXITCODE = 0
} else {
Write-Host "No missing dependencies found."
}

- id: run-tests
name: Run Tests
shell: pwsh
run: |
dzil --verbose test --all --test-verbose
dzil test --no-author
Loading
Loading