Dominik Jain
9e1ce384fa
Handle legacy tool names in ToolSet for backward compatbility
2025-11-19 17:42:13 +01:00
Dominik Jain
2d2854d38c
Simplify excessively long prompt on regex-based editing,
...
fixing some incorrect statements
2025-11-19 15:12:21 +01:00
Dominik Jain
b330a03a15
Use new replace content functionality in EditMemoryTool
...
Resolves #747
2025-11-19 15:04:25 +01:00
Dominik Jain
b6f88b9517
Modify ReplaceRegexTool to become ReplaceContentTool, which is more fail-safe and more flexible
...
* It is more fail-safe because it requires no escaping in replacement strings
(I have opted to use a different character sequence for backreferences,
such that escaping backslashes is no longer required.
* It is more flexible, because it adds the "literal" mode, which is simpler
to use for models that are not good at generating regexes correctly
2025-11-19 14:56:32 +01:00
Dominik Jain
9a8be970f2
Merge pull request #772 from oraios/context-single-project-setting
...
Generalise concept of a single-project SerenaAgentContext
2025-11-19 12:43:50 +01:00
Adam Lichtl
81a0fd875c
Added YAML language server ( #763 )
...
Also minor fixes in Elixir LS and a more customizable logging (inferring log level from the log message) for LS implementations
2025-11-19 03:53:22 +01:00
Dominik Jain
e26c8b5195
Merge pull request #736 from oraios/name-path-overloads
...
Add support for overloads, extending name paths with overload indices
2025-11-18 17:39:03 +01:00
Dominik Jain
70c1e4c3bc
Improve type annotations, fixing mypy issues
2025-11-18 17:19:22 +01:00
Dominik Jain
19be1c41c0
Generalise concept of a single-project SerenaAgentContext
2025-11-18 17:17:14 +01:00
Dominik Jain
25513e9179
Connect comment for clarity
2025-11-18 17:15:55 +01:00
Dominik Jain
d6839656ac
Merge remote-tracking branch 'origin/main' into name-path-overloads
...
Conflicts:
src/serena/cli.py
2025-11-17 16:24:13 +01:00
Dominik Jain
600080c68f
Merge pull request #769 from oraios/global-indexing-loop
...
Use a single loop over source files to index project
2025-11-17 16:22:31 +01:00
Dominik Jain
98e6189ac8
Show counts per language after indexing
2025-11-17 16:20:53 +01:00
Dominik Jain
70e64de890
Save migrated cache and delete legacy cache after migration
2025-11-17 16:08:39 +01:00
Dominik Jain
89b6bfce96
Merge pull request #741 from oraios/name-path-description
...
Improve/simplify name path and name path matching pattern descriptions
2025-11-17 16:00:53 +01:00
Dominik Jain
fc7a0938e2
Merge remote-tracking branch 'origin/name-path-overloads' into name-path-description
...
Conflicts:
src/serena/tools/symbol_tools.py
2025-11-17 16:00:18 +01:00
Dominik Jain
4688a48770
Use a single loop over source files to index project
...
Resolves #765
2025-11-17 15:46:54 +01:00
Dominik Jain
261a157db8
Merge pull request #749 from oraios/two-tier-cache
...
Two-tier document symbol cache
2025-11-17 15:39:00 +01:00
Anatolii Prylutskyi and Claude
568ee77e42
Fix: Expose only serena scripts in Nix package, exclude Python interpreter ( #753 )
...
* Fix: Expose only serena scripts in Nix package, exclude Python interpreter
Modified flake.nix to use a wrapper derivation that filters the virtual
environment to expose only serena-specific executables (serena, serena-mcp-server,
index-project) while excluding the Python interpreter and other venv binaries.
The full virtual environment is still accessible via 'nix build .#serena-env'
for development purposes.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
* Remove deprecated commands from Nix package exports
This change removes serena-mcp-server and index-project from the default
Nix package outputs, exposing only the serena command. These commands are
deprecated and will be removed soon, so they should not be part of the
public package interface.
Addresses PR review feedback requesting to expose only the serena command.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
---------
Co-authored-by: Claude <noreply@anthropic.com >
2025-11-15 23:54:58 +07:00
Michael Panchenko
b5fda5674b
Docs: fixed cutoff sentence
2025-11-14 11:50:28 +07:00
Michael Panchenko
91421ce985
Docs: fix link (jupyterbook doesn't use standard markdown references)
2025-11-14 11:46:03 +07:00
Adra
2b4fd66674
feat: Added project create command with --name, --index, and auto-creation ( #755 )
...
Previous command `generate_yml` has been removed
2025-11-13 15:22:37 +01:00
Dominik Jain
058803a601
Remove obsolete parameter include_body
2025-11-13 13:25:52 +01:00
Dominik Jain
c6e43c3cf3
Improve docstring
2025-11-13 11:46:53 +01:00
Michael Panchenko
5c7ad8edf7
Minor [ci skip]
2025-11-13 11:04:05 +01:00
David Bernazal
2d7527bcde
fix: Adding window support for ElixirTools on init ( #752 )
...
* Adding window support for ElixirTools init
* Update type to map
2025-11-13 09:23:15 +01:00
Dominik Jain
0699a87264
request_document_symbols: Avoid splitting document into lines more than once (optimisation)
2025-11-12 12:08:16 +01:00
Dominik Jain
44c1b69dde
Open every file exactly once during request_full_symbol_tree
2025-11-12 12:08:16 +01:00
Dominik Jain
faa0708595
Improve/optimise logging
2025-11-12 03:46:18 +01:00
Dominik Jain
cb26c8c169
Do not augment existing symbol dictionaries from the LS, instead create new ones
...
because the raw cache would otherwise store the exact same objects
2025-11-12 03:46:18 +01:00
Dominik Jain
10c9cc33f0
Remove obsolete list of all symbols
2025-11-12 03:46:18 +01:00
Dominik Jain
c6a5c1aa57
Reinstate access to cache location (used by cli)
2025-11-12 03:46:18 +01:00
Dominik Jain
44d1a404cd
Remove include_body from interface of SolidLS.request_document_symbols
...
(body is always in data structure, callers can decide whether to use it)
2025-11-12 03:46:18 +01:00
Dominik Jain
7450fd73f6
Fix performance issue: Retrieving symbols with include_body=True
...
would re-read the respective file for every single symbol
2025-11-12 03:46:18 +01:00
Dominik Jain
7af490d0a2
Reintroduce (high-level) document symbols cache, now storing instance of DocumentSymbols
2025-11-12 03:46:18 +01:00
Dominik Jain
d8cac3aedb
Introduce abstraction DocumentSymbols, which is now returned by request_document_symbols
2025-11-12 03:46:18 +01:00
Dominik Jain
24ea449abf
Introduce "raw" document symbol cache, removing the high-level cache for the time being
...
(i.e. cache the raw LS result)
Reuse the legacy cache v23-06-25 as the raw symbol cache (the stored root symbols are
just augmented versions of the originally returned LS response)
2025-11-12 03:46:18 +01:00
Dominik Jain
83f4da5ff0
Add profiling script, add pyinstrument to dev dependencies
2025-11-12 03:46:18 +01:00
Dominik Jain
c0fc9d3756
Merge pull request #743 from oraios/intelephense-ignore-vendor-setting
...
Intelephense: Add configurable setting `ignore_vendor`
2025-11-11 21:33:56 +01:00
Dominik Jain
375bc18e38
Simplify name path and name path matching pattern descriptions,
...
properly separating the two concepts
2025-11-10 21:17:17 +01:00
Dominik Jain
cb038418eb
Intelephense: Add customizable setting ignore_vendor
...
Resolves #731
2025-11-10 20:32:30 +01:00
Dominik Jain
064224d6ae
Refactor retrieval of LS-specific settings, adding abstraction
...
and ensuring that all relevant retrievals are logged
2025-11-10 20:08:58 +01:00
Dominik Jain
0a40f580dd
Improve handling of custom LS-specific settings
2025-11-10 18:50:10 +01:00
Dominik Jain
ab92a27554
Merge pull request #740 from oraios/edit-memory-tool
...
Add EditMemoryTool
2025-11-10 18:38:32 +01:00
Dominik Jain
e2775684c4
Add EditMemoryTool
...
Implements #738
2025-11-10 17:09:58 +01:00
Dominik Jain
47cdb297ed
Improve symbolic tool class docstrings to make the symbolic backend clear
2025-11-10 17:01:33 +01:00
Dominik Jain
43457db31d
Do not ignore /.serena, only .serena in test folders
2025-11-10 16:00:15 +01:00
Dominik Jain
3eda628eb6
SolidLanguageServer.request_document_symbols: Ensure file is opened while issuing documentSymbols request
2025-11-10 00:05:18 +01:00
Dominik Jain
d31cfab25d
Add overload_idx to name path matching, reifying NamePathMatcher for efficency
...
Implements #515
2025-11-09 23:00:57 +01:00
Dominik Jain
55b4a665fd
UnifiedSymbolInformation: Set overload_idx only if there are overloads #515
2025-11-09 22:19:28 +01:00