Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
09cdcee
**run_all_unit_tests.sh** : ~ updated to latest (from https://github.…
synesissoftware Aug 14, 2026
5ccdd45
boilerplate: markdown files
synesissoftware Aug 14, 2026
4a23d2f
boilerplate: .gitattributes
synesissoftware Aug 14, 2026
e2697bf
boilerplate: .vscode/settings.json
synesissoftware Aug 14, 2026
638fd52
boilerplate: .vimrc
synesissoftware Aug 14, 2026
abedb73
boilerplate: build_gem.cmd, build_gem.sh, generate_rdoc.cmd, generate…
synesissoftware Aug 14, 2026
9fd69e3
bolierplate: updating Gemfile
synesissoftware Aug 14, 2026
83f92df
boilerplate: placeholder markdown files
synesissoftware Aug 14, 2026
f96857c
boilerplate: .gitignore
synesissoftware Aug 14, 2026
d08255a
version dependencies
synesissoftware Aug 14, 2026
3bfbf6e
boilerplate: .ruby-version-exclusions
synesissoftware Aug 14, 2026
deb7f69
Add canonical AUTHORS, FAQ, and NEWS markdown skeletons
synesissoftware Aug 14, 2026
12b5da5
Normalise CHANGES.md title, bullets, and drop T.B.C. stub
synesissoftware Aug 14, 2026
054a610
Add ruby.yml CI badge and switch Gemfile to gemspec
synesissoftware Aug 14, 2026
8daee18
chore: dependencies
synesissoftware Aug 14, 2026
1692630
gemspec updates
synesissoftware Aug 14, 2026
d02046e
chore: AUTHORS.md
synesissoftware Aug 14, 2026
98f1534
fix: gemspec metadata
synesissoftware Aug 14, 2026
6ba6c14
added/updated Rakefile
synesissoftware Aug 14, 2026
3965036
chore: CONTRIBUTING.md, INSTALL.md, SECURITY.md
synesissoftware Aug 14, 2026
3b40fb7
chore: rake in Gemfile
synesissoftware Aug 14, 2026
bec3966
fix: Add frozen lib/ strings and standardise Ruby gem boilerplate
synesissoftware Aug 14, 2026
a6cf039
standard CI for all projects
synesissoftware Aug 14, 2026
3ab517f
standard .editorconfig and dependabot for all projects
synesissoftware Aug 14, 2026
304b04a
TODO.md
synesissoftware Aug 14, 2026
4d8c092
CHANGES.md
synesissoftware Aug 14, 2026
d84cada
NEWS.md
synesissoftware Aug 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
64 changes: 64 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
root = true

# Language indent/EOL/charset overlap with .vscode/settings.json.
# Rulers, renderWhitespace, detectIndentation, mergeEditor, and
# cmake.configureOnOpen cannot be expressed here — they stay in settings.json.

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true

# [bat]
[*.{bat,cmd}]
end_of_line = crlf
indent_size = 4
indent_style = space

# [c]
[*.{c,h}]
indent_size = 4
indent_style = space

# [cmake]
[{CMakeLists.txt,*.cmake}]
indent_size = 4
indent_style = tab

# [cpp]
[*.{cpp,cxx,hpp,hxx}]
indent_size = 4
indent_style = space

# [json]
[*.json]
indent_size = 2
indent_style = space

# [markdown]
[*.md]
indent_size = 2
indent_style = space
trim_trailing_whitespace = false

# [ruby]
[*.{gemspec,rb}]
indent_size = 2
indent_style = space

[{Gemfile,Rakefile}]
indent_size = 2
indent_style = space

# [shellscript]
[*.{bash,sh,zsh}]
indent_size = 2
indent_style = space

# [yaml]
[*.{yaml,yml}]
indent_size = 2
indent_style = space
75 changes: 75 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# .gitattributes — Ruby (GitHub-hosted)
#
# Sources: GitHub Docs (line endings), git-scm gitattributes (diff=ruby),
# gitattributes/gitattributes Common.gitattributes + Web (*.rb),
# github-linguist overrides.

# Default: detect text, normalize to LF in the repository
* text=auto

# --- Source ---
*.gemspec text eol=lf diff=ruby
*.rake text eol=lf diff=ruby
*.rb text eol=lf diff=ruby
*.ru text eol=lf diff=ruby
Gemfile text eol=lf diff=ruby
Rakefile text eol=lf diff=ruby
Capfile text eol=lf diff=ruby
Guardfile text eol=lf diff=ruby
*.erb text
*.haml text
*.slim text

# --- Lock / config ---
Gemfile.lock text
*.gemspec.lock text -diff
*.yml text
*.yaml text
*.toml text
*.json text

# --- Scripts ---
*.bash text eol=lf
*.bat text eol=crlf
*.cmd text eol=crlf
*.ps1 text eol=crlf
*.sh text eol=lf
*.zsh text eol=lf

# --- Docs / meta ---
*.adoc text
*.markdown text diff=markdown
*.md text diff=markdown
*.txt text
AUTHORS text
CHANGELOG text
CHANGES text
CONTRIBUTING text
COPYING text
LICENSE text
NEWS text
README text
TODO text
.gitattributes text
.gitignore text

# --- Binary ---
*.gem binary
*.so binary

# --- Archives / images (common) ---
*.gif binary
*.gz binary
*.ico binary
*.jpeg binary
*.jpg binary
*.png binary
*.tar binary
*.zip binary

# --- GitHub Linguist ---
**/vendor/bundle/** linguist-vendored
**/vendor/cache/** linguist-vendored
**/coverage/** linguist-generated
**/doc/** linguist-documentation
**/pkg/** linguist-generated
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: 2
updates:
- directory: /
package-ecosystem: bundler
schedule:
interval: weekly
- directory: /
package-ecosystem: github-actions
schedule:
interval: weekly
117 changes: 117 additions & 0 deletions .github/workflows/ruby.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby

#
# Created: 15th August 2026
# Updated: 15th August 2026
#

name: Ruby

on:
push:
branches:
- master
- dev
- boilerplate
- idiomatic
- rc1
- rc2
- rc3
pull_request:

permissions:
contents: read

defaults:
run:
shell: bash

jobs:
test:

strategy:
fail-fast: false

matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest

ruby-version:
# - head
- '3.4'
- '3.3'
- '3.2'
- '3.1'
- '3.0'
- '2.7'
- '2.6'

include:
- os: ubuntu-latest
ruby-version: '2.5'
- os: ubuntu-latest
ruby-version: '2.4'
- os: ubuntu-latest
ruby-version: '2.0'
- os: windows-latest
ruby-version: mingw

runs-on: ${{ matrix.os }}

steps:
- name: Checking out code
uses: actions/checkout@v4

- name: Remove Gemfile.lock
run: rm -f Gemfile.lock

- name: Set up Ruby v${{ matrix.ruby-version }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

- name: Show Ruby version
run: ruby -v

- name: Run tests
run: bundle exec rake test

- name: Gem build and install smoke
shell: bash
run: |
gem build libCLImate.gemspec
gem install --local libclimate-ruby-*.gem
ruby -e "require 'libclimate/version'; abort('VERSION missing') unless defined?(LibCLImate::VERSION); puts LibCLImate::VERSION"

warnings:

name: Warnings

runs-on: ubuntu-latest

steps:
- name: Checking out code
uses: actions/checkout@v4

- name: Remove Gemfile.lock
run: rm -f Gemfile.lock

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
bundler-cache: true

- name: Show Ruby version
run: ruby -v

- name: Run unit tests with warnings
run: ./run_all_unit_tests.sh --lib --warnings
25 changes: 14 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,38 +1,39 @@

# directories (by name)

build/

/.bzr/
/.bundle/
/.config/
/.svn/
/.yardoc/

/_yardoc/

/InstalledFiles/

/build/
/coverage/
/doc/
/lib/bundler/man/
/old-gems/
/pkg/
/rdoc/
/scratch/
/spec/reports/
/test/tmp/
/test/version_tmp/
/tmp/
/vendor/bundle
/vendor/bundle/

# directories (by pattern)

# files (by name)

/.config
/.repl_history
/.ruby-version
/spec/examples.txt

.DS_Store
.repl_history
.ruby-version
.rvmrc

/spec/examples.txt

# files (by pattern)

*~
Expand All @@ -42,6 +43,8 @@ build/
*.bridgesupport
*.gem
*.rbc
*.scc
*.suo
*.swp
*.tmp
*.zip

9 changes: 0 additions & 9 deletions .ruby-version-exclusions
Original file line number Diff line number Diff line change
@@ -1,11 +1,2 @@
1.8.7-p375
1.9.3-p551
#2.0.0-p648
#2.1.10
#2.2.10
#2.3.8
#2.4.5
#2.5.3
#2.6.1
4.0.6

1 change: 1 addition & 0 deletions .sis/project_name.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
libCLImate.Ruby
10 changes: 5 additions & 5 deletions .vimrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
" Synesis C/C++ project .vimrc — aligned with .sis/.vscode/c_cxx/settings.json
" Synesis Ruby project .vimrc — aligned with .vscode/settings.json (2-space Ruby)

set nocompatible
filetype indent plugin on
Expand All @@ -17,12 +17,12 @@ set fixeol
set list
set listchars=tab:->,trail:-,extends:>,precedes:<,nbsp:+

" editor.detectIndentation: false — global defaults (editor.tabSize: 4, insertSpaces: true)
" editor.detectIndentation: false — global defaults (editor.tabSize: 2, insertSpaces: true)
set colorcolumn=76
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
set shiftwidth=2
set softtabstop=2
set tabstop=2

" colorcolumn draws a full-column tint in Vim (not a VS Code-style 1px line).
" Keep it subtle via the ColorColumn highlight group; reapply after colorscheme changes.
Expand Down
Loading
Loading