Skip to content

Commit

Permalink
Merge pull request #32 from metisvela/feat/add-rust-support
Browse files Browse the repository at this point in the history
Add Rust support
  • Loading branch information
matteocarnelos authored May 13, 2024
2 parents cd2f8f0 + f6faedd commit e2d9359
Show file tree
Hide file tree
Showing 14 changed files with 325 additions and 184 deletions.
50 changes: 0 additions & 50 deletions .build/sailtrack-build

This file was deleted.

21 changes: 0 additions & 21 deletions .github/workflows/build.yml

This file was deleted.

19 changes: 19 additions & 0 deletions .github/workflows/make.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Make

on:
push:
pull_request:
types: [opened, reopened]

env:
CLICOLOR_FORCE: 1
CARGO_TERM_COLOR: always

jobs:
make:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo install cross --git https://github.com/cross-rs/cross
- run: cargo install cargo-make
- run: cargo make
22 changes: 22 additions & 0 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Package

on:
workflow_dispatch:

env:
CLICOLOR_FORCE: 1
CARGO_TERM_COLOR: always

jobs:
package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo install cross --git https://github.com/cross-rs/cross
- run: cargo install cargo-make
- run: sudo cargo make package
- uses: actions/upload-artifact@v4
with:
name: SailTrack-Core_RPi-ARMv8-Bookworm.7z
path: SailTrack-Core_RPi-ARMv8-Bookworm.7z
compression-level: 0
22 changes: 0 additions & 22 deletions .github/workflows/publish.yml

This file was deleted.

23 changes: 23 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Release

on:
push:
tags:
- 'v*.*.*'

env:
CLICOLOR_FORCE: 1
CARGO_TERM_COLOR: always

jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo install cross --git https://github.com/cross-rs/cross
- run: cargo install cargo-make
- run: sudo cargo make package
- uses: softprops/action-gh-release@v2
with:
files: SailTrack-Core_RPi-ARMv8-Bookworm.7z
generate_release_notes: true
173 changes: 111 additions & 62 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,52 +1,7 @@
# Created by https://www.toptal.com/developers/gitignore/api/linux,macos,python,windows,visualstudiocode,intellij+all,rust
# Edit at https://www.toptal.com/developers/gitignore?templates=linux,macos,python,windows,visualstudiocode,intellij+all,rust

# Created by https://www.toptal.com/developers/gitignore/api/macos,windows,linux,python,pycharm+all,visualstudiocode
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,windows,linux,python,pycharm+all,visualstudiocode

### Linux ###
*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### PyCharm+all ###
### Intellij+all ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

Expand Down Expand Up @@ -110,6 +65,9 @@ atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml

# SonarLint plugin
.idea/sonarlint/

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
Expand All @@ -122,21 +80,62 @@ fabric.properties
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser

### PyCharm+all Patch ###
# Ignores the whole .idea folder and all .iml files
# See https://github.com/joeblau/gitignore.io/issues/186 and https://github.com/joeblau/gitignore.io/issues/360
### Intellij+all Patch ###
# Ignore everything but code style settings and run configurations
# that are supposed to be shared within teams.

.idea/*

!.idea/codeStyles
!.idea/runConfigurations

### Linux ###
*~

.idea/
# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023
# KDE directory preferences
.directory

*.iml
modules.xml
.idea/misc.xml
*.ipr
# Linux trash folder which might appear on any partition or disk
.Trash-*

# Sonarlint plugin
.idea/sonarlint
# .nfs files are created when an open file is removed but is still being accessed
.nfs*

### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon


# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

### macOS Patch ###
# iCloud generated files
*.icloud

### Python ###
# Byte-compiled / optimized / DLL files
Expand Down Expand Up @@ -235,7 +234,22 @@ ipython_config.py
# install all needed dependencies.
#Pipfile.lock

# PEP 582; used by e.g. github.com/David-OConnor/pyflow
# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
Expand Down Expand Up @@ -278,17 +292,52 @@ dmypy.json
# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

### Python Patch ###
# Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
poetry.toml

# ruff
.ruff_cache/

# LSP config files
pyrightconfig.json

### Rust ###
# Generated by Cargo
# will have compiled files and executables
debug/

# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock

# These are backup files generated by rustfmt
**/*.rs.bk

# MSVC Windows builds of rustc generate these, which store debugging information
*.pdb

### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
*.code-workspace
!.vscode/*.code-snippets

# Local History for Visual Studio Code
.history/

# Built Visual Studio Code Extensions
*.vsix

### VisualStudioCode Patch ###
# Ignore all local history of files
.history
Expand Down Expand Up @@ -320,7 +369,7 @@ $RECYCLE.BIN/
# Windows shortcuts
*.lnk

# End of https://www.toptal.com/developers/gitignore/api/macos,windows,linux,python,pycharm+all,visualstudiocode
# End of https://www.toptal.com/developers/gitignore/api/linux,macos,python,windows,visualstudiocode,intellij+all,rust

### VisualStudioCode Patch ###
# Ignore .vscode folder
Expand Down
Loading

0 comments on commit e2d9359

Please sign in to comment.