Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
143 changes: 49 additions & 94 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,109 +1,64 @@
# Build directories
build/
build-*/
build_*/
cmake-build-*/
out/
bin/
lib/
# Exception: Allow Ruby SDK lib directory
!sdk/ruby/lib/

# CMake generated files
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
CTestTestfile.cmake
Testing/
_deps/
# Note: We have a hand-written Makefile at root, so only ignore generated ones in subdirs
*/Makefile

# Compiled object files
*.o
*.obj
*.lo
*.slo
# Ruby specific
*.gem
*.rbc
/.config
/coverage/
/InstalledFiles
/pkg/
/spec/reports/
/spec/examples.txt
/test/tmp/
/test/version_tmp/
/tmp/

# Precompiled Headers
*.gch
*.pch
# Documentation cache and generated files
/.yardoc/
/_yardoc/
/doc/
/rdoc/

# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Environment normalization
/.bundle/
/lib/bundler/man/

# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Bundler config
/.bundle
/Gemfile.lock

# Executables
*.exe
*.out
*.app
test_variant
test_variant_advanced
test_variant_extensive
test_optional
test_optional_advanced
test_optional_extensive
test_type_helpers
test_mcp_types
test_mcp_types_extended
test_mcp_type_helpers
test_compat
test_buffer
test_json
test_event_loop
test_io_socket_handle
test_address
test_socket
test_socket_interface
test_socket_option
# YARD artifacts
/.yard/

# IDE specific files
.vscode/
# IDE - RubyMine
.idea/
*.swp
*.swo
*~
.DS_Store
*.iws
*.iml
*.ipr

# Debug files
*.dSYM/
*.su
*.idb
*.pdb
# IDE - VS Code
.vscode/

# Dependency directories
node_modules/
vendor/
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Coverage files
*.gcov
*.gcda
*.gcno
coverage/
*.info
# Native library build
native/
cmake-build-*/

# Documentation
docs/html/
docs/latex/
doxygen/
# Logs
*.log

# Temporary files
*.tmp
*.temp
*.log

# Python cache (if using Python scripts)
__pycache__/
*.py[cod]
*$py.class
*.swp
*.swo
*~

# OS generated files
Thumbs.db
Desktop.ini
# Node.js (for example MCP servers)
node_modules/
7 changes: 3 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
[submodule "third_party/gopher-mcp"]
path = third_party/gopher-mcp
url = https://github.com/GopherSecurity/gopher-mcp.git
branch = main
[submodule "third_party/gopher-orch"]
path = third_party/gopher-orch
url = https://github.com/GopherSecurity/gopher-orch.git
3 changes: 3 additions & 0 deletions .rspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
--format documentation
--color
--require spec_helper
71 changes: 71 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# RuboCop configuration for gopher-orch Ruby SDK

require:
- rubocop-rspec

AllCops:
TargetRubyVersion: 2.7
NewCops: enable
SuggestExtensions: false
Exclude:
- 'vendor/**/*'
- 'examples/server*/**/*'
- 'third_party/**/*'
- 'native/**/*'

# Layout
Layout/LineLength:
Max: 120

Layout/MultilineMethodCallIndentation:
EnforcedStyle: indented

# Metrics
Metrics/BlockLength:
Exclude:
- 'spec/**/*'
- '*.gemspec'

Metrics/MethodLength:
Max: 20

Metrics/ClassLength:
Max: 150

Metrics/AbcSize:
Max: 25

# Style
Style/Documentation:
Enabled: false

Style/FrozenStringLiteralComment:
Enabled: true

Style/StringLiterals:
EnforcedStyle: single_quotes

Style/StringLiteralsInInterpolation:
EnforcedStyle: single_quotes

Style/TrailingCommaInArrayLiteral:
EnforcedStyleForMultiline: consistent_comma

Style/TrailingCommaInHashLiteral:
EnforcedStyleForMultiline: consistent_comma

# Naming
Naming/FileName:
Exclude:
- 'Gemfile'
- 'Rakefile'

# RSpec
RSpec/ExampleLength:
Max: 15

RSpec/MultipleExpectations:
Max: 5

RSpec/NestedGroups:
Max: 4
12 changes: 12 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# frozen_string_literal: true

source 'https://rubygems.org'

gemspec

group :development, :test do
gem 'rake', '~> 13.0'
gem 'rspec', '~> 3.12'
gem 'rubocop', '~> 1.50', require: false
gem 'rubocop-rspec', '~> 2.20', require: false
end
Loading