diff --git a/.github/CompatHelper.yml b/.github/CompatHelper.yml new file mode 100644 index 0000000..3dfba52 --- /dev/null +++ b/.github/CompatHelper.yml @@ -0,0 +1,45 @@ +name: CompatHelper +on: + schedule: + - cron: 0 0 * * * + workflow_dispatch: +permissions: + contents: write + pull-requests: write +jobs: + CompatHelper: + runs-on: ubuntu-latest + steps: + - name: Check if Julia is already available in the PATH + id: julia_in_path + run: which julia + continue-on-error: true + - name: Install Julia, but only if it is not already available in the PATH + uses: julia-actions/setup-julia@v1 + with: + version: '1' + arch: ${{ runner.arch }} + if: steps.julia_in_path.outcome != 'success' + - name: "Add the General registry via Git" + run: | + import Pkg + ENV["JULIA_PKG_SERVER"] = "" + Pkg.Registry.add("General") + shell: julia --color=yes {0} + - name: "Install CompatHelper" + run: | + import Pkg + name = "CompatHelper" + uuid = "aa819f21-2bde-4658-8897-bab36330d9b7" + version = "3" + Pkg.add(; name, uuid, version) + shell: julia --color=yes {0} + - name: "Run CompatHelper" + run: | + import CompatHelper + CompatHelper.main() + shell: julia --color=yes {0} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }} + # COMPATHELPER_PRIV: ${{ secrets.COMPATHELPER_PRIV }} \ No newline at end of file diff --git a/.github/TagBot.yml b/.github/TagBot.yml new file mode 100644 index 0000000..ba6db9e --- /dev/null +++ b/.github/TagBot.yml @@ -0,0 +1,33 @@ +name: TagBot +on: + issue_comment: + types: + - created + workflow_dispatch: + inputs: + lookback: + default: "3" +permissions: + actions: read + checks: read + contents: write + deployments: read + issues: read + discussions: read + packages: read + pages: read + pull-requests: read + repository-projects: read + security-events: read + statuses: read +jobs: + TagBot: + if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot' + runs-on: ubuntu-latest + steps: + - uses: JuliaRegistries/TagBot@v1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + # Edit the following line to reflect the actual name of the GitHub Secret containing your private key + ssh: ${{ secrets.DOCUMENTER_KEY }} + # ssh: ${{ secrets.NAME_OF_MY_SSH_PRIVATE_KEY_SECRET }} \ No newline at end of file diff --git a/.github/UnitTests.yml b/.github/UnitTests.yml new file mode 100644 index 0000000..42440c8 --- /dev/null +++ b/.github/UnitTests.yml @@ -0,0 +1,56 @@ +name: Unit Tests + +on: + - push + - pull_request + +# needed to allow julia-actions/cache to delete old caches that it has created +permissions: + actions: write + contents: read + +jobs: + test: + name: Julia ${{ matrix.julia-version }} - ${{ matrix.os }} - ${{ matrix.julia-arch }} - ${{ github.event_name }} + runs-on: ${{ matrix.os }} + continue-on-error: ${{ matrix.experimental }} + strategy: + fail-fast: false + matrix: + julia-version: + - '1.6' # LTS + - '1' + julia-arch: [x64, x86] + os: [ubuntu-latest, windows-latest, macOS-latest] + exclude: + - os: macOS-latest + julia-arch: x86 + experimental: [false] + include: + - julia-version: nightly + julia-arch: x64 + os: ubuntu-latest + experimental: true + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + - name: Setup Julia + uses: julia-actions/setup-julia@v1 + with: + version: ${{ matrix.julia-version }} + arch: ${{ matrix.julia-arch }} + - uses: julia-actions/cache@v1 + - uses: julia-actions/julia-buildpkg@v1 + - name: Run Tests + uses: julia-actions/julia-runtest@v1 + with: + annotate: true + - name: Create CodeCov + uses: julia-actions/julia-processcoverage@v1 + - name: Upload CodeCov + uses: codecov/codecov-action@v4 + with: + files: lcov.info + token: ${{ secrets.CODECOV_TOKEN }} + fail_ci_if_error: false \ No newline at end of file diff --git a/Project.toml b/Project.toml index 7874b09..44ee5ab 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "BedgraphFiles" uuid = "85eb9095-274b-55ce-be28-9e90f41ac741" authors = ["CiarĂ¡n O'Mara "] -version = "2.3.1" +version = "2.4.0" [deps] Bedgraph = "0bcc2ff6-69eb-520d-bede-0374fc5bd2fd" diff --git a/README.md b/README.md index 7b2ee83..44b1da8 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # BedgraphFiles.jl [![Project Status: Active - The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active) -![Unit Tests](https://github.com/CiaranOMara/BedgraphFiles.jl/workflows/Unit%20Tests/badge.svg?branch=master) +[![Unit Tests](https://github.com/CiaranOMara/BedgraphFiles.jl/actions/workflows/UnitTests.yml/badge.svg?branch=master)](https://github.com/CiaranOMara/BedgraphFiles.jl/actions/workflows/UnitTests.yml) [![codecov](https://codecov.io/gh/CiaranOMara/BedgraphFiles.jl/branch/master/graph/badge.svg?branch=master)](https://codecov.io/gh/CiaranOMara/BedgraphFiles.jl?branch=master) > This project follows the [semver](http://semver.org) pro forma and uses the [git-flow branching model](http://nvie.com/git-model "original @@ -65,7 +65,7 @@ using FileIO, BedgraphFiles, DataTables, IndexedTables, Gadfly dt = DataTable(load("data.bedgraph")) # Load into an IndexedTable -it = IndexedTable(load("data.bedgraph")) +it = table(load("data.bedgraph")) # Plot directly with Gadfly plot(load("data.bedgraph"), xmin=:leftposition, xmax=:rightposition, y=:value, Geom.bar)