Skip to content
Merged
Show file tree
Hide file tree
Changes from 111 commits
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
ed2ca7c
Set author/codeowner
omus Feb 19, 2025
cd28a2d
Switch references to julia-version
omus Feb 19, 2025
c320eed
Add a description
omus Feb 19, 2025
7140e0c
Package is public
omus Feb 19, 2025
fa712bb
Rename .yml to .yaml
omus Feb 19, 2025
457878a
Rename yamllint config file to use a default name
omus Feb 19, 2025
bae46cd
fixup! Switch references to julia-version
omus Feb 19, 2025
45b4566
fixup! Set author/codeowner
omus Feb 19, 2025
ce06851
fixup! Add a description
omus Feb 19, 2025
51a90ab
Drop trailing slash from job names
omus Feb 19, 2025
2bcf4e4
Update YAML linting rules
omus Feb 19, 2025
374fa30
fixup! Update YAML linting rules
omus Feb 19, 2025
0f338ae
Use double-quotes
omus Feb 19, 2025
06af11f
fixup! Use double-quotes
omus Feb 19, 2025
4bef51f
Add note on GHA syntax
omus Feb 19, 2025
99c2c04
Disable commitlint
omus Feb 19, 2025
9b08555
Rename workflow to CI
omus Feb 19, 2025
c19da88
Rename markdownlint config file
omus Feb 19, 2025
6ad9ad7
drop! Debug
omus Feb 19, 2025
5e73480
Custom config file names and LINTER_RULES_PATH incompatible
omus Feb 19, 2025
4a06e83
Skip markdown
omus Feb 19, 2025
faf79c8
Empty: test
omus Feb 19, 2025
750266c
Set log level to DEBUG
omus Feb 19, 2025
96a3960
Try fix
omus Feb 19, 2025
64820ff
Iterating
omus Feb 19, 2025
5cf7d7d
Iterating
omus Feb 19, 2025
ff21bd5
Iterating
omus Feb 19, 2025
7fce630
Iterating
omus Feb 19, 2025
d043b9d
Disable debug logging
omus Feb 19, 2025
1e6f15d
Make an .env
omus Feb 19, 2025
8a1f38f
Update dependencies
omus Feb 19, 2025
4d6d69e
Run most PR workflows independent of base branch
omus Feb 21, 2025
2935653
Draft
omus Feb 20, 2025
27bebb1
Refactor
omus Feb 20, 2025
c6b11f5
Adding tests
omus Feb 20, 2025
365ed12
Tests and drop tc
omus Feb 20, 2025
2803574
Formatting
omus Feb 20, 2025
1fbf33c
Cleanup
omus Feb 20, 2025
e835401
Fix linting
omus Feb 21, 2025
ad96f27
Silence dotenv-linter
omus Feb 21, 2025
533af7e
Update action test
omus Feb 21, 2025
7f49cdc
Silence dotenv-linter
omus Feb 21, 2025
04d193a
Drop arch input
omus Feb 21, 2025
2ecbadb
Test for transpiled
omus Feb 21, 2025
72364fd
Create bundle
omus Feb 21, 2025
0a32122
node-fetch testing mess
omus Feb 21, 2025
23327bb
Experiment with fetch wrapper
omus Feb 21, 2025
36bbab7
Jest mostly functional
omus Feb 21, 2025
8afe7d3
Improve things
omus Feb 21, 2025
425308c
Use nock for HTTP mocking
omus Feb 21, 2025
1716496
Flush out main tests
omus Feb 21, 2025
8202841
Use node prefix on import
omus Feb 21, 2025
e60ffcf
Remove wait
omus Feb 21, 2025
586be7f
Bundle
omus Feb 21, 2025
802e278
Improve CI action test
omus Feb 21, 2025
99cdc77
Use versions.json for testVersions
omus Feb 21, 2025
14941da
Simplify updating tests
omus Feb 21, 2025
400320e
Drop quotes
omus Feb 21, 2025
9b4bf66
Fix comment
omus Feb 21, 2025
3720e1d
Show resolved version in CI
omus Feb 21, 2025
9eb2408
Update bundle
omus Feb 21, 2025
b900a38
Fix linting error
omus Feb 21, 2025
0277e4a
Fix debug change to versions.json
omus Feb 21, 2025
cd63526
Initial support for multiple versions
omus Feb 21, 2025
64e9022
Fix tests
omus Feb 24, 2025
924cfe8
Support YAML input handling
omus Feb 24, 2025
c98678f
Port: Badge label
omus Feb 25, 2025
90d3ecf
Formatting
omus Feb 25, 2025
47e033e
Document version specifier syntax
omus Feb 25, 2025
823f774
Refactoring to fall inline with documentation
omus Feb 25, 2025
8ef2ef1
Validate input version specifiers
omus Feb 25, 2025
f969870
Functionality in place
omus Feb 25, 2025
838189f
Fix GHA test
omus Feb 25, 2025
20596ee
Linting fixes
omus Feb 25, 2025
106e31d
Input fix
omus Feb 25, 2025
25349c1
Set output to resolved
omus Feb 25, 2025
b12adf9
Fix regex tests
omus Feb 25, 2025
17de402
Linting
omus Feb 25, 2025
2832b9e
fixup! Linting
omus Feb 25, 2025
5aa5c26
Add GHA example
omus Feb 25, 2025
c89ea50
fixup! Add GHA example
omus Feb 25, 2025
6d0de75
Cleanup
omus Feb 25, 2025
cdd5301
fixup! Add GHA example
omus Feb 25, 2025
c9093b3
Cleanup
omus Feb 25, 2025
7eb5861
Add CONTRIBUTION guide
omus Feb 25, 2025
e11e961
Document inputs/outputs
omus Feb 25, 2025
0713b1d
fixup! Document inputs/outputs
omus Feb 25, 2025
1df85bc
Fix CI
omus Feb 25, 2025
9e6c70a
Allow inline HTML in tables
omus Feb 25, 2025
03ebbe5
Prettier ignoring markdown table
omus Feb 25, 2025
905a8dd
fix
omus Feb 25, 2025
a6b5ea7
Fix GHA example test
omus Feb 25, 2025
2aafbb4
Create separate example workflow
omus Feb 25, 2025
52b74cc
fixup! Create separate example workflow
omus Feb 25, 2025
9d31016
fixup! Create separate example workflow
omus Feb 25, 2025
87ee7fa
Add tests for resolveVersionSpecifiers
omus Feb 26, 2025
95156b6
Rename functions
omus Feb 26, 2025
18ce249
Return unique
omus Feb 26, 2025
9d80ebe
Add more docstrings
omus Feb 26, 2025
4bac62e
Use trailing comma ES5
omus Feb 26, 2025
a459074
Require markdown lists to be ordered
omus Feb 26, 2025
19c22d2
Use trailing comma ES5
omus Feb 26, 2025
f7dc08b
Merge branch 'cv/initial-refactor' into cv/implementation
omus Feb 26, 2025
affb56b
CI fixes
omus Feb 26, 2025
cb8adc8
Set version to 0.1.0
omus Feb 26, 2025
5e91783
fixup! Drop trailing slash from job names
omus Feb 26, 2025
1b118b8
Merge branch 'cv/initial-refactor' into cv/implementation
omus Feb 27, 2025
dd7f818
Rename output `unique` to `unique-json`
omus Feb 27, 2025
75f6472
Provide scalar output `version`
omus Mar 3, 2025
c860b2d
Use more basic Backus-Naur form
omus Mar 7, 2025
2db95f3
fixup! Use more basic Backus-Naur form
omus Mar 7, 2025
abcfe55
Update CONTRIBUTING on installing Node.js
omus Mar 11, 2025
485182d
Add additional version input test
omus Mar 11, 2025
c5c6dbb
Add YAML decimal conversion test
omus Mar 11, 2025
86b16cb
Test nightly HEAD request performance
omus Mar 12, 2025
2bb34ab
fixup! Add YAML decimal conversion test
omus Mar 12, 2025
696eaea
Confirm nightly check performance
omus Mar 12, 2025
f5bd6e5
Revert "Test nightly HEAD request performance"
omus Mar 12, 2025
cc49330
Add guidance to CONTRIBUTING.md
omus Mar 12, 2025
be1235e
Use string literal type for if-missing
omus Mar 12, 2025
cb7ec0c
Skip non-functional tests
omus Mar 12, 2025
496c3e2
Merge branch 'main' into cv/implementation
omus Mar 12, 2025
ae6b00b
Fix dotenv linter
omus Mar 12, 2025
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
15 changes: 8 additions & 7 deletions .env.example → .env
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
# dotenv-linter:off IncorrectDelimiter
# dotenv-linter:off QuoteCharacter

# Do not commit your actual .env file to Git! This may contain secrets or other
# private information.

# Enable/disable step debug logging (default: `false`). For local debugging, it
# may be useful to set it to `true`.
ACTIONS_STEP_DEBUG=true
ACTIONS_STEP_DEBUG="true"

# GitHub Actions inputs should follow `INPUT_<name>` format (case-sensitive).
# Hyphens should not be converted to underscores!
INPUT_MILLISECONDS=2400
INPUT_IF_MISSING="warn"
INPUT_VERSIONS="[lts, 1, ~1.10, 1.9-nightly, nightly]"

# GitHub Actions default environment variables. These are set for every run of a
# workflow and can be used in your actions. Setting the value here will override
# any value set by the local-action tool.
# https://docs.github.com/en/actions/learn-github-actions/variables#default-environment-variables

# CI="true"
CI="true"
# GITHUB_ACTION=""
# GITHUB_ACTION_PATH=""
# GITHUB_ACTION_REPOSITORY=""
Expand Down Expand Up @@ -53,9 +54,9 @@ INPUT_MILLISECONDS=2400
# GITHUB_WORKFLOW_REF=""
# GITHUB_WORKFLOW_SHA=""
# GITHUB_WORKSPACE=""
# RUNNER_ARCH=""
RUNNER_ARCH="X64"
# RUNNER_DEBUG=""
# RUNNER_NAME=""
# RUNNER_OS=""
# RUNNER_TEMP=""
RUNNER_OS="Linux"
RUNNER_TEMP="/tmp/julia-version"
# RUNNER_TOOL_CACHE=""
5 changes: 3 additions & 2 deletions .github/dependabot.yml → .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
version: 2
updates:
- package-ecosystem: github-actions
Expand All @@ -15,9 +16,9 @@ updates:
schedule:
interval: weekly
ignore:
- dependency-name: '@types/node'
- dependency-name: "@types/node"
update-types:
- 'version-update:semver-major'
- version-update:semver-major
groups:
npm-development:
dependency-type: development
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,11 @@
# If this workflow is run from a feature branch, it will act as an additional CI
# check and fail if the checked-in `dist/` directory does not match what is
# expected from the build.
---
name: Check Transpiled JavaScript

on:
pull_request:
branches:
- main
push:
branches:
- main
Expand All @@ -22,7 +21,7 @@ permissions:

jobs:
check-dist:
name: Check dist/
name: Check dist
runs-on: ubuntu-latest

steps:
Expand All @@ -41,7 +40,7 @@ jobs:
id: install
run: npm ci

- name: Build dist/ Directory
- name: Build dist Directory
id: build
run: npm run bundle

Expand Down
74 changes: 74 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
name: CI

on:
pull_request: {}
push:
branches:
- main

permissions:
contents: read

jobs:
test-typescript:
name: TypeScript Tests
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm

- name: Install Dependencies
run: npm ci

- name: Check Format
run: npm run format:check

- name: Lint
run: npm run lint

- name: Test
run: npm run ci-test

test-action:
name: GitHub Actions Test
permissions:
contents: read
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Create Project.toml
shell: bash
run: |
echo -e '[compat]\njulia = "1.6"' >Project.toml

- name: Test julia-version
id: julia-version
uses: ./
with:
versions: |
- min
- lts
- 1
- ~1.10
if-missing: error

- name: Validate output
shell: bash
run: |
set -x
[[ "$(jq -r 'length' <<<"$unique_json")" -eq 3 ]] || exit 1
[[ "$(jq -r '.[0]' <<<"$unique_json")" == "1.6.0" ]] || exit 1
[[ "$(jq -r '.[1]' <<<"$unique_json")" =~ ^1\.10\.([8-9]|[1-9][0-9]*)$ ]] || exit 1 # [1.10.8, 1.11.0)
[[ "$(jq -r '.[2]' <<<"$unique_json")" =~ ^1\.(1[1-9]|2[0-9]+)\.[0-9]+$ ]] || exit 1 # [1.11.0, ∞)

[[ "$version" == "" ]] || exit 1
env:
unique_json: ${{ steps.julia-version.outputs.unique-json }}
version: ${{ steps.julia-version.outputs.version }}
64 changes: 0 additions & 64 deletions .github/workflows/ci.yml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
---
name: CodeQL

on:
pull_request:
branches:
- main
pull_request: {}
push:
branches:
- main
schedule:
- cron: '31 7 * * 3'
- cron: 31 7 * * 3

permissions:
actions: read
Expand Down
56 changes: 56 additions & 0 deletions .github/workflows/example.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
name: Example
on:
pull_request: {}
push:
branches:
- main

# These permissions are needed to:
# - Checkout the Git repository (`contents: read`)
permissions:
contents: read

jobs:
version:
name: Resolve Julia Versions
runs-on: ubuntu-latest
outputs:
json: ${{ steps.julia-version.outputs.unique-json }}
steps:
- uses: actions/checkout@v4
- name: Create Project.toml
shell: bash
run: |
# Need Julia 1.8 for `macos-latest` which defaults to Apple Silicon (aarch64)
echo -e '[compat]\njulia = "1.8"' >Project.toml
- uses: ./
id: julia-version
with:
versions: |
- min # Oldest supported version
- lts # Long-Term Stable
- 1 # Latest release

test:
# e.g. `Julia 1.10.8 - ubuntu-latest`
name: Julia ${{ matrix.version }} - ${{ matrix.os }}
needs: version
runs-on: ${{ matrix.os }}
strategy:
matrix:
version: ${{ fromJSON(needs.version.outputs.json) }}
os:
- ubuntu-latest
- windows-latest
- macos-latest
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- name: Julia version info
shell: julia --color=yes {0}
run: |
using InteractiveUtils
versioninfo()
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This workflow checks the statuses of cached dependencies used in this action
# with the help of the Licensed tool. If any licenses are invalid or missing,
# this workflow will fail. See: https://github.com/licensee/licensed

---
name: Licensed

on:
Expand Down
11 changes: 7 additions & 4 deletions .github/workflows/linter.yml → .github/workflows/linter.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
---
name: Lint Codebase

on:
pull_request:
branches:
- main
pull_request: {}
push:
branches:
- main
Expand Down Expand Up @@ -43,11 +42,15 @@ jobs:
DEFAULT_BRANCH: main
FILTER_REGEX_EXCLUDE: dist/**/*
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
LINTER_RULES_PATH: ${{ github.workspace }}
LINTER_RULES_PATH: .
# LOG_LEVEL: DEBUG # Useful when configuration files cannot be found
MARKDOWN_CONFIG_FILE: .markdownlint.yaml
VALIDATE_ALL_CODEBASE: true
VALIDATE_GIT_COMMITLINT: false
VALIDATE_JAVASCRIPT_ES: false
VALIDATE_JAVASCRIPT_STANDARD: false
VALIDATE_JSCPD: false
VALIDATE_TYPESCRIPT_ES: false
VALIDATE_JSON: false
VALIDATE_TYPESCRIPT_STANDARD: false
YAML_CONFIG_FILE: .yamllint.yaml
4 changes: 2 additions & 2 deletions .licensed.yml → .licensed.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# See: https://github.com/licensee/licensed/blob/main/docs/configuration.md

---
sources:
npm: true

Expand All @@ -15,4 +15,4 @@ allowed:
ignored:
npm:
# Used by Rollup.js when building in GitHub Actions
- '@rollup/rollup-linux-x64-gnu'
- "@rollup/rollup-linux-x64-gnu"
5 changes: 3 additions & 2 deletions .markdown-lint.yml → .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# See: https://github.com/DavidAnson/markdownlint

# For details on rules see: https://github.com/updownpress/markdown-lint/tree/master/rules
---
# Unordered list style
MD004:
style: dash
Expand All @@ -10,7 +11,7 @@ MD013:

# Ordered list item prefix
MD029:
style: one
style: ordered

# Spaces after list markers
MD030:
Expand Down
6 changes: 3 additions & 3 deletions .prettierrc.yml → .prettierrc.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# See: https://prettier.io/docs/en/configuration

---
printWidth: 80
tabWidth: 2
useTabs: false
semi: false
singleQuote: true
singleQuote: false
quoteProps: as-needed
jsxSingleQuote: false
trailingComma: none
trailingComma: es5
bracketSpacing: true
bracketSameLine: true
arrowParens: always
Expand Down
Loading