Commit Graph
1443 Commits
Author SHA1 Message Date
Dominik Jain ef4c19c586 Merge pull request #674 from oraios/use-project-encoding 2025-10-17 00:50:03 +02:00
Dominik Jain 5d7aeb680f Intelephense: Account for spaces in launch command (use robust list syntax instead of string) 2025-10-16 22:35:50 +02:00
Dominik Jain 3cde03a8fb Introduce constant for Serena file encoding
* SERENA_FILE_ENCODING for Serena-specific files (config files, memories)
 * DEFAULT_SOURCE_FILE_ENCODING for source files (renamed from DEFAULT_ENCODING)
2025-10-16 22:10:35 +02:00
Nickolay Kondratyev b1d9ac5765 [README-only-change]: Add quotes around /home/nickolaykondratyev/git_repos/nickolay-kondratyev_serena per shell best practices (#679)
If someone uses spaces in file names /home/nickolaykondratyev/git_repos/nickolay-kondratyev_serena is likely to not work as expected due to argument splitting (hopefully people arent using spaces, but its best practice to quote everything in shell)
2025-10-16 20:10:38 +02:00
Nickolay Kondratyev fd8b0174f4 [README-only-change]: Add section for git worktree usage (#680) 2025-10-16 20:09:40 +02:00
Michael Panchenko 5dfb8ad912 Merge pull request #676 from oraios/minor_fix_in_ignored_path
Minor fix in ignored path
2025-10-16 18:34:44 +02:00
MischaPanch e1ba1befa9 Bugfix - special handling of edge case in ignore patterns
Was falsely matching project root against something like ".*" in gitignore
2025-10-16 18:05:51 +02:00
Dominik Jain 4e3db0bd09 Consistently use the project's encoding setting, also passing it on the LS 2025-10-16 15:04:06 +02:00
Dominik Jain 563e42efbd Add encoding entry to project.yml template (supported since 20th June) 2025-10-16 13:56:51 +02:00
Michael PanchenkoandDon Syme 25da7a505f Add rename_symbol method (#660)
Tested through a snapshot test on python. Calling the tool with language servers not supporting renaming will raise an error

Co-authored-by: Don Syme <dsyme@users.noreply.github.com>
2025-10-16 12:12:20 +02:00
Yen f2919f11c5 Add rego language support (#670)
Also added an ignore rule for ruff (about unused unpacked variables), we might reintroduce this rule later
2025-10-15 22:46:25 +02:00
Dominik Jain 39a11657a9 Project.validate_relative_path: Make handling of ignored files explicit #672 2025-10-15 18:16:55 +02:00
Michael Panchenko 5f114d9e05 Merge pull request #669 from Anivie/fix_rust_analyzer
Fix 'Failed to deserialize config field at /cargo/cfgs' error from rust analyzer
2025-10-15 11:16:05 +02:00
dc31e4e27e fix(nix): resolve build issues and add CI verification (#668)
* ci: add Nix build verification to pytest workflow

Add a verification step to the CI pipeline that validates the Nix package builds successfully on each run. The step uses 'nix build --no-link' to verify the flake builds without creating artifacts.

This provides early detection of Nix packaging issues with minimal overhead, reusing the existing Nix installation on Linux and macOS runners.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>

* fix(nix): add setuptools to ruamel-yaml-clib build dependencies

Add pyproject override to ensure ruamel-yaml-clib has setuptools available during build. This fixes Nix build failures where the package requires setuptools but doesn't declare it as a native build input.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Happy <yesreply@happy.engineering>
2025-10-15 11:14:32 +02:00
Anivie Michaelis a82d9a9fb9 Update rust_analyzer.py
Fix 'Failed to deserialize config field at /cargo/cfgs' error by rust analyzer
2025-10-15 11:21:02 +08:00
Drew Volz 8abfe58c67 feat(text_utils): add brace expansion for glob patterns (#652)
* adds expand_braces function to handle glob patterns
* updates search_files to use it for include/exclude patterns
* allows for flexible file filtering `**/*.{js,ts}` to match ts/js
2025-10-14 13:15:39 +02:00
Jordan Munch O'HareandJordan Munch O'Hare 675a421287 feat: Elm language support (#667)
Also added Node.js setup to GitHub Actions workflow

---------

Co-authored-by: Jordan Munch O'Hare <git@jordan.munchohare.com>
2025-10-14 10:15:53 +02:00
Michael Panchenko 21af8bf451 Removed LinesRead and mark_file_modified (#666) 2025-10-13 11:37:17 +02:00
Ryuhei Nakano 9b622bcfd5 added support for Perl via Perl::LanguageServer (#656) 2025-10-12 16:07:34 +02:00
intoffset dd239b9f98 Add Markdown language server support with marksman (#655) 2025-10-11 22:36:37 +02:00
Akira TSURUDA e523c42259 feat: add rbenv integration for Ruby LSP server (#628)
* feat: add rbenv integration for Ruby LSP server

Add support for rbenv Ruby version management in the Ruby LSP language server.
This allows Serena to respect project-specific .ruby-version files and use
the appropriate Ruby and bundler versions as specified by rbenv.
2025-10-11 10:36:35 +02:00
Dominik Jain 77213e18d0 Fix outdated heartbeat call and a potential access issue in exception handler 2025-10-07 13:40:02 +02:00
Dominik Jain a317017fe7 SolidLanguageServer.request_full_symbol_tree: Fix ValueError when obtaining relative path
Fixes #627
2025-10-01 22:24:54 +02:00
Dominik Jain 19b9e1cf31 ReplaceRegexTool: Improve tool description #326 2025-10-01 22:14:23 +02:00
Dominik Jain 7d4b8a58b8 Improve response in case of no active project #650 2025-09-30 16:23:09 +02:00
Dominik Jain b5f8bcedac Improve descriptions of ReplaceSymbolBodyTool and ExecuteShellCommandTool 2025-09-30 14:11:43 +02:00
Dominik Jain 69f16bd25b Improve description of ReplaceSymbolBodyTool #576 2025-09-23 16:27:00 +02:00
Dominik Jain 48d23470b1 Fix duplicate exclusion causing an exception; Fixes #636 2025-09-23 10:47:02 +02:00
Dominik Jain 2ad1b7b31f Merge branch 'main' of github.com:oraios/serena 2025-09-22 22:33:39 +02:00
Dominik Jain d606ef573b ListDirTool: Do not skip ignored paths by default 2025-09-22 22:33:35 +02:00
Dominik Jain 9a6ed14d13 Updated interprompt sync commit identifiers (pull) 2025-09-22 22:30:40 +02:00
Michael Panchenko 271e7ad31f Merge pull request #622 from stgmt/fix/linux-arm64-dotnet-runtime
feat: Add configurable runtime dependencies for C# Language Server (ARM64 support)
2025-09-22 11:23:17 +02:00
MischaPanch 55b5772505 Bugfix (dataclass.replace is not inplace) 2025-09-19 18:48:57 +02:00
MischaPanch 91bcc254b1 Removed C# specific explanation in config template 2025-09-19 18:01:15 +02:00
MischaPanch 96aec3f885 Moved logic of handling updates to csharp dependencies to RuntimeDependencyCollection
Removed the RuntimeDependencyLoader
2025-09-19 17:59:10 +02:00
MischaPanch a80fa38d3a Removed built artifacts in kotlin test resources, added .gradle to gitignore 2025-09-19 13:56:32 +02:00
MischaPanch efb99bea25 Merge branch 'main' into fix/linux-arm64-dotnet-runtime 2025-09-19 13:54:28 +02:00
Jakob Steiner a088618240 chore: add support for streamable-http transport for mcp (#632) 2025-09-19 10:47:15 +02:00
maksim.randClaude 8693b89f34 fix: apply Black formatting to sourcekit_lsp.py
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 16:51:05 +03:00
maksim.randClaude c8827191c1 fix(swift-lsp): improve CI stability with enhanced delays and retry logic
- Increased CI delay from 10s to 15s for project indexing
- Added retry mechanism when no references found in CI
- Enhanced logging for better CI debugging
- All 3 Swift reference tests now pass locally

The CI environment needs extra time for sourcekit-lsp to fully
index Swift projects and establish cross-file symbol references.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 16:36:18 +03:00
maksim.randClaude 3df6ae9f77 feat(csharp-ls): allow runtime dependency overrides via ls_specific_settings
Add configurable runtime dependency system for language servers:
- New RuntimeDependencyLoader for loading platform-specific dependencies
- Extended SerenaConfig with language_server_dependencies field
- Updated configuration template with ARM64 examples
- Modified CSharpLanguageServer to use dependency loader

This enables adding platform support (like ARM64) via YAML configuration
without requiring code changes and PRs.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 15:54:43 +03:00
Michael Panchenko 892ef9cf19 Fix typo in readme [ci skip] 2025-09-14 13:22:15 +02:00
MischaPanch 9af410a13e Readme, changelog, minor docstring fix. Added section on sponsoring and VSC/GitHub log [ci skip] 2025-09-13 16:21:03 +02:00
MischaPanch 53ee7f47c0 Missing ruby enty in Language.get_ls_class 2025-09-13 01:11:30 +02:00
Michael Panchenko 5d33a301f3 Allow passing LS implementation specific options. (#524)
* Allow passing LS implementation specific options. Made use of it in csharp and intelephense LS
* Bidirectional mapping from Language to the corresponding LS implementation Use this as key for ls_specifics.

Fix to swift installation in CI authored-by: maksim.r <avalab>
2025-09-13 00:36:21 +02:00
Torben Leth 75bdee7d54 AL: Improved performance and made code a bit easier to read (#618)
* feat: refine document symbol request handling for AL Language Server with improved logging and fallback mechanism

* refactor: update logging levels for AL Language Server to improve clarity and consistency
refactor: Removed a bunch of sleeps as I was way to cautious.

* Refactor AL language server: remove unused symbol methods and fix project load check
2025-09-11 22:40:33 +02:00
Dominik Jain a9ce7a3ccb Disable the config tool in IDE assistant mode with active project 2025-09-11 11:24:33 +02:00
Dominik Jain b4355df386 ExecuteShellCommandTool: Allow cwd to be relative to project root 2025-09-10 14:23:24 +02:00
Dominik Jain ba722bcad6 Re-enable GetCurrentConfigTool by default as it is essential for all contexts
where changing the active project is part of the workflow
2025-09-10 14:23:24 +02:00
Dominik Jain da9da7936c Enable use of shell also for Windows in execute_shell_command
This is really required, as many commands must be interpreted by the shell
(e.g. execution of batch files/other executables without specifying the extension, etc.)

For example, npm typically cannot just be run as npm otherwise
2025-09-10 14:23:24 +02:00