Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
dffd2ae
**run_all_unit_tests.sh** : ~ updated to latest (from https://github.…
synesissoftware Aug 14, 2026
cbd7521
boilerplate: markdown files
synesissoftware Aug 14, 2026
d0f0b0f
boilerplate: .gitattributes
synesissoftware Aug 14, 2026
eb1a62f
boilerplate: LICENSE
synesissoftware Aug 14, 2026
c5841f0
boilerplate: .vscode/settings.json
synesissoftware Aug 14, 2026
97eea41
boilerplate: .vimrc
synesissoftware Aug 14, 2026
961b178
boilerplate: build_gem.cmd, build_gem.sh, generate_rdoc.cmd, generate…
synesissoftware Aug 14, 2026
55d0bbb
boilerplate: LICENSE
synesissoftware Aug 14, 2026
e27a26e
bolierplate: updating Gemfile
synesissoftware Aug 14, 2026
9989b7e
boilerplate: placeholder markdown files
synesissoftware Aug 14, 2026
773ed0f
boilerplate: .gitignore
synesissoftware Aug 14, 2026
6c92930
version dependencies
synesissoftware Aug 14, 2026
c3de67c
boilerplate: .ruby-version-exclusions
synesissoftware Aug 14, 2026
ba69754
Add canonical AUTHORS, FAQ, NEWS, and TODO markdown skeletons
synesissoftware Aug 14, 2026
d4662e0
Complete CHANGES.md through early 0.0.x releases
synesissoftware Aug 14, 2026
404bb80
Add ruby.yml CI badge and switch Gemfile to gemspec
synesissoftware Aug 14, 2026
ade380d
chore: dependencies
synesissoftware Aug 14, 2026
9563d00
gemspec updates
synesissoftware Aug 14, 2026
77f2730
chore: AUTHORS.md
synesissoftware Aug 14, 2026
d876521
fix: gemspec metadata
synesissoftware Aug 14, 2026
ebbe5fd
added/updated Rakefile
synesissoftware Aug 14, 2026
60f67c3
chore: CONTRIBUTING.md, INSTALL.md, SECURITY.md
synesissoftware Aug 14, 2026
53f01cf
chore: rake in Gemfile
synesissoftware Aug 14, 2026
5cf3e2e
fix: Add frozen lib/ strings and standardise Ruby gem boilerplate
synesissoftware Aug 14, 2026
5188e58
standard CI for all projects
synesissoftware Aug 14, 2026
340ca07
standard .editorconfig and dependabot for all projects
synesissoftware Aug 14, 2026
7d15285
TODO.md
synesissoftware Aug 14, 2026
7f7b588
examples
synesissoftware Aug 14, 2026
cbf4e2e
CHANGES.md
synesissoftware Aug 14, 2026
ef57b58
NEWS.md
synesissoftware Aug 14, 2026
7b35c74
README.md
synesissoftware Aug 14, 2026
7398692
spacing
synesissoftware Aug 15, 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 numberDiff line numberDiff 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 numberDiff line numberDiff 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 numberDiff line numberDiff 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 numberDiff line numberDiff 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 libpath.gemspec
gem install --local libpath-ruby-*.gem
ruby -e "require 'libpath/version'; abort('VERSION missing') unless defined?(LibPath::VERSION); puts LibPath::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
29 changes: 11 additions & 18 deletions .gitignore
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,50 @@

# directories (by name)

/.bundle/
/.bzr/
/.bundle/
/.config/
/.git/
/.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/


# directories (by pattern)

InstalledFiles
coverage
pkg
rdoc


# files (by name)

.DS_Store
.bundle
.config
.repl_history
.ruby-version
.rvmrc
.yardoc

_yardoc

Gemfile.lock

/spec/examples.txt

# files (by pattern)

*~
*.*~
.dat*
*.b64
*.bridgesupport
*.gem
*.rbc
*.scc
*.suo
*.swp
*.tmp
*.zip

9 changes: 1 addition & 8 deletions .ruby-version-exclusions
Original file line numberDiff line numberDiff line change
@@ -1,9 +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.1
#2.5.3
#2.6.1

1 change: 1 addition & 0 deletions .sis/project_name.txt
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
libpath.Ruby
Loading
Loading