Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
5e9e30b
v0.3.1
FL03 Dec 9, 2025
4ddee18
update flake.nix
FL03 Dec 9, 2025
9a5bc1b
update README.md
FL03 Dec 9, 2025
8d89be5
update SECURITY.md
FL03 Dec 9, 2025
04a337e
update layers
FL03 Dec 9, 2025
e84468d
update examples
FL03 Dec 9, 2025
0baf743
cargo fmt
FL03 Dec 9, 2025
d533158
update
FL03 Dec 9, 2025
6d7028e
cargo fmt
FL03 Dec 9, 2025
5fe3038
update apply.rs
FL03 Dec 9, 2025
d6737a7
update
FL03 Dec 9, 2025
4489ea6
add scripts
FL03 Dec 9, 2025
4c2f835
update scripts
FL03 Dec 9, 2025
4ca3f65
update flake.lock
FL03 Dec 9, 2025
ad48e15
update
FL03 Dec 9, 2025
a28eab3
update
FL03 Dec 9, 2025
077627f
update
FL03 Dec 9, 2025
a8d1cc2
update
FL03 Dec 9, 2025
6d52144
update
FL03 Dec 9, 2025
00fdd78
update
FL03 Dec 9, 2025
ad6564d
update
FL03 Dec 9, 2025
e28dc88
update
FL03 Dec 10, 2025
47925e1
update README.md
FL03 Dec 10, 2025
f9c59d8
update
FL03 Dec 10, 2025
669ceda
update leaky.rs
FL03 Dec 10, 2025
f15356f
update
FL03 Dec 10, 2025
a6523be
update
FL03 Dec 10, 2025
1f153c8
update snn
FL03 Dec 10, 2025
f363406
update Cargo.toml
FL03 Dec 10, 2025
2b6470d
add leaky.md
FL03 Dec 10, 2025
621cf24
update
FL03 Dec 10, 2025
5c05a39
update core
FL03 Dec 10, 2025
0229ffb
update
FL03 Dec 10, 2025
311e87b
update
FL03 Dec 10, 2025
76cdc09
update
FL03 Dec 11, 2025
6845b18
update .envrc
FL03 Dec 11, 2025
37df024
update
FL03 Dec 11, 2025
a33f118
update
FL03 Dec 11, 2025
db26b94
update
FL03 Dec 11, 2025
5f4a9d8
update
FL03 Dec 11, 2025
2185478
update params_base.rs
FL03 Dec 11, 2025
093106d
update params
FL03 Dec 11, 2025
4a40eb6
update
FL03 Dec 11, 2025
0756491
update
FL03 Dec 11, 2025
84c2c58
update
FL03 Dec 11, 2025
1def7ab
update params_base.rs
FL03 Dec 12, 2025
b478f10
update params
FL03 Dec 13, 2025
52dc652
update get.rs
FL03 Dec 13, 2025
241b8c9
update
FL03 Dec 13, 2025
9e6f9aa
update
FL03 Dec 13, 2025
e8733a2
update
FL03 Dec 13, 2025
f61a2f6
update hkt.rs
FL03 Dec 13, 2025
574a002
update
FL03 Dec 14, 2025
6a2690f
update raw_params.rs
FL03 Dec 14, 2025
d17e17b
update
FL03 Dec 14, 2025
db94a08
update
FL03 Dec 14, 2025
c48ed80
update
FL03 Dec 14, 2025
c071bc8
update traits
FL03 Dec 14, 2025
f2842ed
update
FL03 Dec 14, 2025
36bc956
update
FL03 Dec 14, 2025
4b33e90
update
FL03 Dec 14, 2025
0cd513b
update
FL03 Dec 14, 2025
fab7f35
update traits
FL03 Dec 14, 2025
dad2654
update snn
FL03 Dec 14, 2025
9bc3f90
update
FL03 Dec 18, 2025
e162f54
update
FL03 Dec 18, 2025
96b8720
update
FL03 Dec 18, 2025
fb66676
update
FL03 Dec 27, 2025
20b64d3
update flake.nix
FL03 Dec 27, 2025
3f29dbd
update default.nix
FL03 Dec 27, 2025
9e1fbc7
update flake.lock
FL03 Dec 27, 2025
ad8b16d
update
FL03 Dec 27, 2025
1193170
update Cargo.toml
FL03 Dec 27, 2025
547d741
cargo update
FL03 Dec 27, 2025
a66cb8c
update rand_utils.rs
FL03 Dec 27, 2025
d591bf6
update
FL03 Dec 27, 2025
41a1662
update
FL03 Jan 6, 2026
31823cd
update rust.yml
FL03 Jan 6, 2026
8bbbc16
update Cargo.toml
FL03 Jan 6, 2026
43d560e
update Cargo.toml
FL03 Jan 6, 2026
b656696
update Cargo.toml
FL03 Jan 6, 2026
e866aba
update hyper_params.rs
FL03 Jan 6, 2026
01e89a1
update Cargo.toml
FL03 Jan 6, 2026
31efea8
update
FL03 Jan 6, 2026
40a2a77
update
FL03 Jan 6, 2026
e4d2094
update apply.rs
FL03 Jan 6, 2026
4e61a50
update
FL03 Jan 6, 2026
5aa81f1
update
FL03 Jan 6, 2026
ad007aa
update impl_model_format.rs
FL03 Jan 6, 2026
18bf16c
update
FL03 Jan 6, 2026
4fc45c4
update
FL03 Jan 6, 2026
e92f0ff
update impl_layer_repr.rs
FL03 Jan 6, 2026
d1ced08
update
FL03 Jan 6, 2026
18da4cb
update complex.rs
FL03 Jan 6, 2026
1c912c0
rename clippy.toml
FL03 Jan 11, 2026
941e483
update
FL03 Jan 11, 2026
b83cfd6
update
FL03 Jan 11, 2026
a8010cf
update
FL03 Jan 11, 2026
043c222
update
FL03 Jan 11, 2026
8363fe1
update
FL03 Jan 12, 2026
23deba0
update
FL03 Jan 12, 2026
fb11759
update
FL03 Jan 12, 2026
3bef094
update
FL03 Jan 12, 2026
f7c90f9
update
FL03 Jan 12, 2026
2a9e876
update Cargo.toml
FL03 Jan 12, 2026
5efa868
update
FL03 Jan 12, 2026
6f37380
update iter_params.rs
FL03 Jan 12, 2026
fdce450
cargo fmt --all
FL03 Jan 12, 2026
85de7b4
update
FL03 Jan 12, 2026
fc0eb04
update
FL03 Jan 12, 2026
b7cd3b6
update
FL03 Jan 13, 2026
51ac152
update
FL03 Jan 13, 2026
4d3e32c
update
FL03 Jan 13, 2026
6f99f52
update
FL03 Jan 14, 2026
4ca6f90
update
FL03 Jan 14, 2026
766afad
update
FL03 Jan 14, 2026
f73e863
update
FL03 Jan 14, 2026
85f9457
update
FL03 Jan 14, 2026
e29c32d
update Cargo.toml
FL03 Jan 14, 2026
95169ce
update
FL03 Jan 14, 2026
9f33ae7
update
FL03 Jan 14, 2026
48d6ee1
update cargo-bench.yml
FL03 Jan 14, 2026
91c2ffa
update
FL03 Jan 14, 2026
363fad2
update
FL03 Jan 14, 2026
09689d6
update .github/workflows
FL03 Jan 14, 2026
cc55d6b
update cargo-clippy.yml
FL03 Jan 14, 2026
60b8da2
update
FL03 Jan 14, 2026
95b4118
cargo fmt --all
FL03 Jan 14, 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
1 change: 1 addition & 0 deletions .artifacts/docs/leaky.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Leaky Integrate-and-Fire (LIF) Neuron
2 changes: 2 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
CARGO_TERM_COLOR=always
RUST_BACKTRACE=full
RUST_LOG=debug,concision=info
22 changes: 13 additions & 9 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,23 @@
version: 2

updates:
- package-ecosystem: devcontainers
directory: /
schedule:
interval: monthly
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
- package-ecosystem: rust-toolchain
directory: /
schedule:
interval: monthly
- package-ecosystem: cargo
schedule:
interval: monthly
directories:
- .
- /
- /concision
- /core
- /data
Expand All @@ -15,11 +27,3 @@ updates:
- /macros
- /params
- /traits
- package-ecosystem: devcontainers
directory: /
schedule:
interval: monthly
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
68 changes: 68 additions & 0 deletions .github/workflows/cargo-bench.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# This workflow is used to benchmark a Rust project
name: cargo-bench
# The workflow may be manually triggered and is run automatically when:
# - a pull request is closed on the default branch (main/master)
# - a release is published
# - a repository_dispatch event with the type "cargo-bench" is received

concurrency:
cancel-in-progress: false
group: ${{ github.workflow }}-${{ github.ref }}

env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full

on:
pull_request:
branches: [main, master]
types: [closed]
push:
tags: [latest, v*.*.*, "*-nightly"]
repository_dispatch:
types: [cargo-bench]
workflow_dispatch:

permissions:
contents: write
checks: write

jobs:
cargo-bench:
name: Benchmark
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
features: [full]
target: [x86_64-unknown-linux-gnu]
outputs:
id: ${{ steps.artifacts.outputs.artifact-id }}
digest: ${{ steps.artifacts.outputs.artifact-digest }}
url: ${{ steps.artifacts.outputs.artifact-url }}
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
repository: ${{ github.repository }}
ref: ${{ github.event.client_payload.ref || github.ref }}
token: ${{ github.token }}
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache-key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
target: ${{ matrix.target }}
- name: Install cargo-criterion
uses: taiki-e/install-action@v2
with:
tool: cargo-criterion
- name: Benchmark the workspace (${{ matrix.target }})
run: cargo criterion -v --benches --locked --workspace --features ${{ matrix.features }} --target ${{ matrix.target }}
- name: Upload the results
id: artifacts
uses: actions/upload-artifact@v6
with:
name: Benchmark Report (${{ github.run_id }})
if-no-files-found: error
overwrite: true
path: target/criterion/
43 changes: 22 additions & 21 deletions .github/workflows/cargo-clippy.yml
Original file line number Diff line number Diff line change
@@ -1,50 +1,51 @@
name: Clippy
name: clippy

concurrency:
cancel-in-progress: false
group: ${{ github.workflow }}-${{ github.ref }}

on:
pull_request:
branches: [main, master]
types: [opened, ready_for_review, reopened]
types: [synchronize]
push:
branches: [main, master]
tags: [v*.*.*, "*-nightly"]
release:
types: [created, edited]
tags: [latest, v*.*.*, "*-nightly"]
repository_dispatch:
types: [clippy, cargo-clippy]
workflow_dispatch:

permissions:
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
contents: read
security-events: write
statuses: write

jobs:
clippy:
runs-on: ubuntu-latest
permissions:
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
contents: read
security-events: write
statuses: write
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
repository: ${{ github.repository }}
ref: ${{ github.event.client_payload.ref || github.ref }}
token: ${{ github.token }}
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache-key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
components: clippy, rustfmt
toolchain: nightly
override: true
- name: Setup the for sarif output
run: cargo install clippy-sarif sarif-fmt
components: clippy,rustfmt
- uses: taiki-e/install-action@v2
with:
tool: clippy-sarif sarif-fmt
- name: Run Clippy
run: cargo clippy
--all-features
--workspace
--message-format=json | clippy-sarif | tee rust-clippy-results.sarif | sarif-fmt
run: |
cargo clippy \
--features full \
--message-format=json | clippy-sarif | tee rust-clippy-results.sarif | sarif-fmt
- name: Upload analysis
uses: github/codeql-action/upload-sarif@v4
continue-on-error: true
with:
sarif_file: rust-clippy-results.sarif
wait-for-processing: true
35 changes: 12 additions & 23 deletions .github/workflows/cargo-publish.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,28 @@
name: Publish
name: cargo-publish

concurrency:
cancel-in-progress: false
group: ${{ github.workflow }}-${{ github.ref }}

env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full

on:
repository_dispatch:
types: [deploy, publish, cargo-publish, crates-io]
types: [crates-io, cargo-publish]
workflow_dispatch:
inputs:
publish:
default: true
description: "Publish the crate(s) to crates.io?"
type: boolean

env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
permissions:
contents: read
deployments: write

jobs:
crates-io:
environment: crates-io
runs-on: ubuntu-latest
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
outputs:
url: ${{ steps.results.outputs.url }}
permissions:
contents: read
deployments: write
packages: write
strategy:
fail-fast: false
max-parallel: 1
Expand All @@ -45,19 +38,15 @@ jobs:
- concision
- concision-ext
steps:
- name: Checkout
uses: actions/checkout@v6
- uses: actions/checkout@v6
with:
fetch-depth: 0
ref: ${{ github.ref }}
repository: ${{ github.repository }}
ref: ${{ github.event.client_payload.ref || github.ref }}
token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
cache-key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Publish (${{ matrix.package }})
id: publish
run: cargo publish --locked --package ${{ matrix.package }}
- name: Set output(s)
id: results
run: echo "url=https://crates.io/crates/${{ matrix.package }}" >> "$GITHUB_OUTPUT"
5 changes: 2 additions & 3 deletions .github/workflows/cleanup.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
name: Cleanup
name: cleanup

on:
pull_request:
types: [closed]

jobs:
pr_cache_cleanup:
name: Cleanup PR Cache(s)
cache_cleanup:
runs-on: ubuntu-latest
permissions:
actions: write
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/nix.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: "Nix"
name: nix

concurrency:
cancel-in-progress: false
Expand All @@ -7,12 +7,10 @@ concurrency:
on:
pull_request:
branches: [main, master]
types: [opened, ready_for_review, reopened]
types: [auto_merge_enabled, ready_for_review]
push:
branches: [main, master]
tags: [v*.*.*, "*-nightly"]
release:
types: [created, edited]
tags: [latest, v*.*.*, "*-nightly"]
repository_dispatch:
types: [nix, nix-build]
workflow_dispatch:
Expand All @@ -25,8 +23,7 @@ jobs:
continue-on-error: true
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- uses: actions/checkout@v6
- name: Setup Nix
uses: cachix/install-nix-action@v31
with:
Expand Down
28 changes: 11 additions & 17 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Release
name: release

on:
release:
Expand All @@ -22,40 +22,34 @@ permissions:
contents: write
discussions: write

env:
IS_DRAFT: ${{ github.event.inputs.draft || github.event.release.draft || false }}
IS_PRERELEASE: ${{ github.event.inputs.prerelease || github.event.release.prerelease || false }}

jobs:
publish:
environment:
name: crates-io
url: https://crates.io/crates/concision
release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- uses: actions/checkout@v6
with:
fetch-depth: 0
ref: ${{ github.ref }}
repository: ${{ github.repository }}
- name: Publish to crates.io
token: ${{ github.token }}
- name: Dispatch & Publish to crates.io
uses: peter-evans/repository-dispatch@v4
with:
event-type: cargo-publish
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
token: ${{ github.token }}
- name: Create release
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
continue-on-error: true
with:
append_body: false
draft: ${{ env.IS_DRAFT }}
prerelease: ${{ env.IS_PRERELEASE }}
draft: ${{ inputs.prerelease || github.event.release.prerelease || false }}
prerelease: ${{ inputs.draft || github.event.release.draft || false }}
tag_name: ${{ github.event.release.tag_name }}
body: |
${{ github.event.release.body }}

## Links

- [crates.io](https://crates.io/crates/${{ github.event.repository.name }})
- [docs.rs](https://docs.rs/${{ github.event.repository.name }})
- [Crates.io](https://crates.io/crates/${{ github.event.repository.name }})
- [Documentation](https://docs.rs/${{ github.event.repository.name }})
Loading