Skip to content

Commit

Permalink
Add initial development files
Browse files Browse the repository at this point in the history
  • Loading branch information
AP6YC committed Mar 31, 2021
1 parent 01f9bee commit baf3ea5
Show file tree
Hide file tree
Showing 14 changed files with 408 additions and 2 deletions.
33 changes: 33 additions & 0 deletions .appveyor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Documentation: https://github.com/JuliaCI/Appveyor.jl
environment:
matrix:
- julia_version: 1.5
- julia_version: nightly
# Set this to download test data outside of repo
DATADEPS_ALWAYS_ACCEPT: true
platform:
# - x86
- x64
matrix:
allow_failures:
- julia_version: nightly
branches:
only:
- master
- /release-.*/
notifications:
- provider: Email
on_build_success: false
on_build_failure: false
on_build_status_changed: false
install:
- ps: iex ((new-object net.webclient).DownloadString("https://raw.githubusercontent.com/JuliaCI/Appveyor.jl/version-1/bin/install.ps1"))
build_script:
- echo "%JL_BUILD_SCRIPT%"
- C:\julia\bin\julia -e "%JL_BUILD_SCRIPT%"
test_script:
- echo "%JL_TEST_SCRIPT%"
- C:\julia\bin\julia -e "%JL_TEST_SCRIPT%"
on_success:
- echo "%JL_CODECOV_SCRIPT%"
- C:\julia\bin\julia -e "%JL_CODECOV_SCRIPT%"
197 changes: 197 additions & 0 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
name: CI
# Run on master, tags, or any pull request
on:
# schedule:
# - cron: '0 2 * * *' # Daily at 2 AM UTC (8 PM CST)
push:
branches: [master]
tags: ["*"]
pull_request:
jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
version:
# - "1.0" # LTS
- "1.5"
- "1" # Latest Release
os:
- ubuntu-latest
# - macOS-latest
- windows-latest
arch:
- x64
# - x86
# exclude:
# Test 32-bit only on Linux
# - os: macOS-latest
# arch: x86
# - os: windows-latest
# arch: x86
# include:
# - os: ubuntu-latest
# version: 1.5
# arch: x64
env:
# Set this to download test data outside of repo
DATADEPS_ALWAYS_ACCEPT: true
steps:
# Cancel ongoing tests if pushing to branch again before the previous
# build is finished.
- name: Cancel ongoing tests for previous commits
uses: styfle/cancel-workflow-action@0.6.0
with:
access_token: ${{ github.token }}

- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@v2
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-${{ matrix.arch }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-${{ matrix.arch }}-test-${{ env.cache-name }}-
${{ runner.os }}-${{ matrix.arch }}-test-
${{ runner.os }}-${{ matrix.arch }}-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@latest
- run: |
git config --global user.name Tester
git config --global user.email te@st.er
- uses: julia-actions/julia-runtest@latest
- uses: julia-actions/julia-processcoverage@v1

- name: Codecov
uses: codecov/codecov-action@v1
with:
file: lcov.info

- name: Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: lcov.info

# slack:
# name: Notify Slack Failure
# needs: test
# runs-on: ubuntu-latest
# if: always() && github.event_name == 'schedule'
# steps:
# - uses: technote-space/workflow-conclusion-action@v2
# - uses: voxmedia/github-action-slack-notify-build@v1
# if: env.WORKFLOW_CONCLUSION == 'failure'
# with:
# channel: nightly-dev
# status: FAILED
# color: danger
# env:
# SLACK_BOT_TOKEN: ${{ secrets.DEV_SLACK_BOT_TOKEN }}

# docs:
# name: Documentation
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# - uses: julia-actions/setup-julia@v1
# with:
# version: '1'
# - run: |
# git config --global user.name name
# git config --global user.email email
# git config --global github.user username
# - run: |
# julia --project=docs -e '
# using Pkg
# Pkg.develop(PackageSpec(path=pwd()))
# Pkg.instantiate()'
# - run: |
# julia --project=docs -e '
# using Documenter: doctest
# using PkgTemplates
# doctest(PkgTemplates)'
# - run: julia --project=docs docs/make.jl
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}

# # This is a basic workflow to help you get started with Actions

# name: Unit Test

# # Controls when the action will run.
# on:
# # Triggers the workflow on push or pull request events but only for the master branch
# push:
# branches: [ master ]
# pull_request:
# branches: [ master ]

# # Allows you to run this workflow manually from the Actions tab
# workflow_dispatch:

# # A workflow run is made up of one or more jobs that can run sequentially or in parallel
# jobs:
# # This workflow contains a single job called "build"
# build:
# # The type of runner that the job will run on
# # runs-on: ubuntu-latest
# strategy:
# matrix:
# julia: [1.5, latest]
# # Steps represent a sequence of tasks that will be executed as part of the job
# steps:
# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
# - uses: actions/checkout@v2

# # Runs a single command using the runners shell
# - name: Run a one-line script
# run: echo Hello, world!

# # Runs a set of commands using the runners shell
# - name: Run a multi-line script
# run: |
# echo Add other actions to build,
# echo test, and deploy your project.


# name: Python package

# on: [push]

# jobs:
# build:

# runs-on: ubuntu-latest
# strategy:
# matrix:
# python-version: [2.7, 3.5, 3.6, 3.7, 3.8]

# steps:
# - uses: actions/checkout@v2
# - name: Set up Python ${{ matrix.python-version }}
# uses: actions/setup-python@v2
# with:
# python-version: ${{ matrix.python-version }}
# - name: Install dependencies
# run: |
# python -m pip install --upgrade pip
# pip install flake8 pytest
# if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
# - name: Lint with flake8
# run: |
# # stop the build if there are Python syntax errors or undefined names
# flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
# flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
# - name: Test with pytest
# run: |
# pytest
31 changes: 31 additions & 0 deletions .github/workflows/Documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Documentation

on:
push:
branches:
- master
tags: '*'
pull_request:

jobs:
build:
runs-on: ubuntu-latest
steps:
# Cancel ongoing documentation build if pushing to branch again before the previous
# build is finished.
- name: Cancel ongoing documentation builds for previous commits
uses: styfle/cancel-workflow-action@0.6.0
with:
access_token: ${{ github.token }}

- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: '1.4'
- name: Install dependencies
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
- name: Build and deploy
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # For authentication with GitHub Actions token
# DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # For authentication with SSH deploy key
run: julia --project=docs/ docs/make.jl
30 changes: 30 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
# Cancel ongoing build if pushing to branch again before the previous
# build is finished.
- name: Cancel ongoing build for previous commits
uses: styfle/cancel-workflow-action@0.6.0
with:
access_token: ${{ github.token }}

- name: Checkout
uses: actions/checkout@v2
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: paper/paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: paper/paper.pdf
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,13 @@
# IDE ignores
.vscode/

# Julia package ignores
*.jl.*.cov
*.jl.cov
*.jl.mem
.DS_Store
/Manifest.toml
/docs/Manifest.toml
/dev/
/docs/build/
/docs/site/
9 changes: 7 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,18 @@
name = "CVI"
uuid = "3dd06b04-970f-4012-aacc-8e537122e708"
authors = ["Sasha Petrenko <sap625@mst.edu> and contributors"]
authors = ["Sasha Petrenko <sap625@mst.edu>"]
version = "0.1.0"

[deps]
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"

[compat]
julia = "1"

[extras]
DelimitedFiles = "8bb1440f-4735-579b-a4ab-409b98df4dab"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"

[targets]
test = ["Test"]
test = ["Test", "SafeTestsets", "DelimitedFiles"]
4 changes: 4 additions & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[deps]
CVI = "3dd06b04-970f-4012-aacc-8e537122e708"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
LiveServer = "16fef848-5104-11e9-1b77-fb7a48bbb589"
24 changes: 24 additions & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
using Documenter, CVI

makedocs(
modules=[CVI],
format=Documenter.HTML(prettyurls = get(ENV, "CI", nothing) == "true"),
# format=Documenter.HTML(),
pages=[
"Home" => "index.md",
"Tutorial" => [
"Guide" => "man/guide.md",
"Examples" => "man/examples.md",
"Contributing" => "man/contributing.md",
"Index" => "man/full-index.md"
]
],
repo="https://github.com/AP6YC/CVI.jl/blob/{commit}{path}#L{line}",
sitename="AdaptiveResonance.jl",
authors="Sasha Petrenko",
# assets=String[],
)

deploydocs(
repo="github.com/AP6YC/CVI.jl.git",
)
2 changes: 2 additions & 0 deletions docs/serve.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
using LiveServer
serve(dir="build")
19 changes: 19 additions & 0 deletions docs/src/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# CVI.jl

The [Package Guide](@ref) provides a tutorial explaining how to get started using Documenter.

Some examples of packages using Documenter can be found on the [Examples](@ref) page.

See the [Index](@ref main-index) for the complete list of documented functions and types.

## Manual Outline

```@contents
Pages = [
"man/guide.md",
"man/examples.md",
"man/contributing.md",
"man/full-index.md",
]
Depth = 1
```
11 changes: 11 additions & 0 deletions docs/src/man/contributing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Contributing

To formally contribute to the package, please follow the usual branch pull request procedure:

1. Fork the project.
2. Create your feature branch (git checkout -b my-new-feature).
3. Commit your changes (git commit -am 'Added some feature').
4. Push to the branch (git push origin my-new-feature).
5. Create a new [GitHub pull request](https://github.com/AP6YC/AdaptiveResonance.jl/pulls).

If you simply have suggestions for improvement, Sasha Petrenko (<sap625@mst.edu>) is the current developer and maintainer of the AdaptiveResonance package, so please feel free to reach out with thoughts and questions.

0 comments on commit baf3ea5

Please sign in to comment.