Commit graph

21 commits

Author SHA1 Message Date
Peter Steinberger
a9fd66c291 refactor: major project restructuring - move macOS app to mac/ directory
- Move all macOS-specific code from root to mac/ directory
- Move app icons and assets to dedicated assets/ directory
- Update GitHub workflows for new structure
- Consolidate documentation files
- Clean up root directory for better multi-platform organization
2025-06-20 13:20:01 +02:00
Helmut Januschka
766147073b
fix: update Go CI workflow and fix formatting issues (#35)
* fix: update Go CI workflow and fix formatting issues

- Update Go version from 1.21.x to 1.24.x to match go.mod requirements
- Fix Go module cache path to use linux/go.sum instead of **/go.sum
- Run gofmt on all Go files to fix formatting issues
- Fix benchmark files formatting
- Fix linux/pkg/api/server.go formatting

This resolves the GitHub Actions CI failures related to:
- Missing go.sum file (wrong cache path)
- Go version mismatch
- Code formatting violations

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: add platform-specific syscall.Select wrappers for Linux/Darwin compatibility

- Create select_linux.go: handles syscall.Select returning (n int, err error)
- Create select_darwin.go: handles syscall.Select returning (err error)
- Update select.go to use platform-agnostic selectCall function
- Resolves typecheck errors while maintaining compatibility on both platforms

Tested on both macOS and Linux targets successfully.

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-06-20 12:53:31 +02:00
Peter Steinberger
31d9e3e839 comment iOS + CI 2025-06-20 12:32:59 +02:00
Peter Steinberger
d993efb8c7 CI fixes 2025-06-20 11:55:19 +02:00
Peter Steinberger
8bb22f291f format+lint 2025-06-20 11:40:18 +02:00
Peter Steinberger
72d4bfda5c Add iOS CI, fix Swift CI 2025-06-20 11:33:03 +02:00
Peter Steinberger
9c2c50dd4f Add support for go in Mac app, implement missing features 2025-06-19 23:44:28 +02:00
Peter Steinberger
7386f2a01e stop requesting password on CI 2025-06-19 02:18:38 +02:00
Peter Steinberger
83a4bf0f75
fix: apply formatters to pass CI checks (#19) 2025-06-19 01:39:27 +02:00
blacksmith-sh[bot]
4fa31c1717
Migrate workflows to Blacksmith (#17)
Co-authored-by: blacksmith-sh[bot] <157653362+blacksmith-sh[bot]@users.noreply.github.com>
2025-06-18 19:35:22 +02:00
Peter Steinberger
6a8f472832 feat: adopt Blacksmith CI runners and comprehensive updates
- Migrate GitHub Actions to Blacksmith runners for faster CI
  - Update ubuntu-latest to blacksmith-4vcpu-ubuntu-2404
  - Update actions/setup-node@v4 to useblacksmith/setup-node@v5
  - Update Swatinem/rust-cache@v2 to useblacksmith/rust-cache@v3

- Fix all linting warnings across all platforms
  - TypeScript: Fix any type warnings with proper type annotations
  - Rust: All clippy warnings resolved
  - Swift: Fix SwiftLint violations and format code

- Update all dependencies to latest versions
  - npm: Major updates including Express 5 compatibility fixes
  - Rust: Update 7 crates to latest compatible versions
  - Swift: Dependencies already up-to-date

- Add comprehensive test suite using Vitest
  - API endpoint tests for session CRUD operations
  - WebSocket connection and streaming tests
  - Session management lifecycle tests
  - Frontend component tests (terminal, session-list)
  - Critical functionality tests covering core features
  - Test infrastructure with proper mocking and utilities

- All tests passing, ready for production use
2025-06-18 19:10:03 +02:00
Peter Steinberger
ea517dbf49 ci: update Swift workflow to use Xcode 16.4
- Update DEVELOPER_DIR environment variable to Xcode 16.4
- Update xcode-select commands to use Xcode 16.4
- Keep using macos-15 runner which should have Xcode 16.4 available
2025-06-18 19:02:12 +02:00
Peter Steinberger
25d5bc5232 Fix CI: Convert reusable workflows to use workflow_call trigger
- Changed swift.yml, rust.yml, and node.yml from direct triggers to workflow_call
- This fixes the workflow configuration error causing immediate CI failures
- Reusable workflows must use workflow_call when invoked by other workflows
2025-06-18 13:00:17 +02:00
Peter Steinberger
a4b936817f Fix Swift CI hanging issues
- Use explicit Xcode 16.3 instead of generic Xcode.app
- Add timeouts to build steps (30 min for builds, 20 min for tests)
- Update both DEVELOPER_DIR env var and xcode-select paths

The hanging was likely due to using the default Xcode 16.0 on macOS-15
which may have compatibility issues with the project.
2025-06-17 10:54:22 +02:00
Peter Steinberger
fc27f84756 Fix platform-specific CI issues
- Include CreditLink component directly in AboutView.swift
- Fix Swift 6 concurrency issue with NSRunningApplication
- Remove Windows build from Rust workflow (tty-fwd is Unix-only)
- tty-fwd uses Unix-specific PTY features not available on Windows
2025-06-17 01:45:07 +02:00
Peter Steinberger
d7a49b0de0 Upgrade CI per platform 2025-06-17 01:29:06 +02:00
Peter Steinberger
0a067ca7a7 Update CI to build Rust binaries and clarify Node.js builds
- Rename Node.js job to clarify it builds both frontend and backend
- Add comment explaining what npm run build does (CSS, client, server)
- Include public/bundle/ in Node.js artifacts for frontend assets
- Add Rust binary build job with matrix strategy for multiple platforms:
  - Linux (x86_64)
  - macOS (x86_64 and arm64)
  - Windows (x86_64)
- Cache Rust dependencies for faster builds
- Run tests only on native platforms (not cross-compilation targets)
2025-06-16 16:47:42 +02:00
Peter Steinberger
445187d754 Add Node.js server build to CI workflow
- Add dedicated job for building Node.js server
- Use Node 20 on Ubuntu for the server build
- Run npm ci, build, and tests for the web directory
- Upload dist/ folder as build artifacts
2025-06-16 16:44:25 +02:00
Peter Steinberger
ef112c82b5 Fix serverPort UserDefaults type mismatch
The serverPort was being stored as a String in SettingsView but read as an
integer in VibeTunnelApp, causing it to default to 0 and then 800. Fixed by
reading it as a String and converting to Int with proper fallback to 4020.
2025-06-16 02:43:10 +02:00
Peter Steinberger
fe6f6a1299 Fix remaining build errors
- Remove HTTPTypesFoundation import from TunnelClient2.swift
- Replace APIKeyManager usage with hardcoded demo key in TunnelServerDemo
- Add WSMessage and WSMessageType definitions to TunnelClient.swift
- Remove TunnelClient2.swift to avoid duplicate TunnelClientError definitions
2025-06-16 01:29:24 +02:00
Peter Steinberger
b80c710c08 Add SwiftLint and SwiftFormat configuration for Swift 6
- Configure SwiftLint with Swift 6 compatible rules
- Disable conflicting self-related rules (implicit_self, redundant_self)
- Set up SwiftFormat to avoid self-rewrite conflicts
- Add custom rules for print statements and async/await patterns
- Create lint script and GitHub Actions workflow
- Add Package.swift for SPM dependencies
- Ensure proper exclusions for build directories and tests
2025-06-15 23:48:30 +02:00