Commit Graph
2145 Commits
Author SHA1 Message Date
Dominik Jain ee992690f2 Add sleep time to fix flaky test in Windows CI 2026-02-14 17:43:35 +01:00
Dominik Jain f704abefbf Merge pull request #1041 from oraios/skip-flaky-tests
Skip flaky tests in CI
2026-02-14 16:54:41 +01:00
Dominik Jain 3ab0720ff4 Disable TestSerenaAgent::test_find_symbol for FSHARP in CI #1039 2026-02-14 14:20:26 +01:00
Dominik Jain 2e2384020a Disable TestNixLanguageServer::test_hover_information in CI #1039 2026-02-14 14:20:26 +01:00
Dominik Jain 9e95663cd7 Disable TestFSharpLanguageServer::test_find_referencing_symbols_across_files in CI #1039 2026-02-14 14:20:25 +01:00
Dominik Jain 558caa0ad5 Disable Phpactor tests in Windows CI #1039 2026-02-14 14:20:25 +01:00
Dominik Jain a72ca90358 Merge pull request #996 from takeokunn/feature/add-ignore_path-system-global
SerenaConfig: Add system-global ignored_paths for cross-project path exclusion
2026-02-14 13:13:43 +01:00
Dominik Jain d0ec712c13 Merge pull request #1038 from takeokunn/fix/phpactor-test-auto-skip
Skip PHP_PHPACTOR tests when PHP is not installed
2026-02-14 13:01:16 +01:00
takeokunn 614b035621 fix(tests): auto-skip Phpactor tests if PHP is unavailable
- Add check in conftest.py to disable PHP_PHPACTOR tests when php binary
  is not found
- Refactor test_php_basic.py to use dynamic PHP server list based on
  availability
- Ensure tests for PHP_PHPACTOR are only parametrized if PHP is present
2026-02-14 17:30:59 +09:00
Dominik Jain d69f53cd5a Hotfix for serena-jetbrains-plugin/issues/13 2026-02-13 23:05:27 +01:00
Dominik Jain 66a12eee3c Fix type annotation 2026-02-13 16:38:40 +01:00
Dominik Jain 036a065848 Dashboard: Improve accessibility of logs view
'Overview' and 'Logs' are now tabs instead of menu items
2026-02-13 15:15:26 +01:00
Dominik Jain 88327d6192 Merge pull request #1035 from oraios/limited-log-buffer
Limit the size of the log buffer
2026-02-13 15:02:16 +01:00
Dominik Jain 1ab009ccf5 Limit the size of the log buffer
Fixes #1034
2026-02-13 14:51:10 +01:00
Dominik Jain 21bc996f10 Merge pull request #1028 from oraios/fix-ls-open-file-stale-buffers
LSPFileBuffer: Ensure that file contents are never stale
2026-02-13 12:52:08 +01:00
Dominik Jain 37965666be LSPFileBuffer: Ensure that file contents are never stale by monitoring file modification date
For every read access on .contents, check for external file modification
and re-read if necessary, invalidating the content hash as well.

Fixes #1013
2026-02-13 12:48:12 +01:00
takeokunn 0025402f37 RegisteredProject: pass SerenaConfig through get_project_instance
Remove serena_config storage from RegisteredProject; instead accept it
as an explicit parameter in get_project_instance() for cleaner separation
of concerns.
2026-02-13 15:39:52 +09:00
takeokunn 43902782fa Project.load: accept SerenaConfig instead of global_ignored_paths
Use `serena_config: SerenaConfig | None` without a default value,
requiring callers to explicitly pass the configuration.
2026-02-13 15:37:59 +09:00
takeokunn f2beb3bb16 Project: accept SerenaConfig instead of global_ignored_paths
Replace `global_ignored_paths: Sequence[str]` with `serena_config: SerenaConfig | None`
in Project.__init__ and propagate through RegisteredProject for more general and
future-proof interfaces.
2026-02-13 15:37:29 +09:00
Dominik Jain 1064afceed Merge pull request #1030 from oraios/fix-symbol-body-end
Handle end_col when extracting symbol body
2026-02-13 03:58:23 +01:00
Dominik Jain 256cb61416 DependencyProviders: Allow only lists for commands to ensure robustness 2026-02-13 03:20:13 +01:00
Dominik Jain cd2f6f6717 Update list of LS supporting ls_path 2026-02-13 03:12:28 +01:00
Dominik Jain 8c54806abe Marksman: Use DependencyProvider, fixing run command not working with spaces in path 2026-02-13 03:12:28 +01:00
Dominik Jain 1ab7e0aa97 YamlLanguageServer: Use DependencyProvider, fixing run command not working with spaces in path 2026-02-13 03:02:59 +01:00
Dominik Jain 754806af3e BashLanguageServer: Use DependencyProvider 2026-02-13 02:59:35 +01:00
Dominik Jain c195b2961a Handle end_col when extracting symbol body
Fixes #1029
2026-02-13 02:56:48 +01:00
Dominik Jain 4809d5882b TaploLanguageServer: Use DependencyProvider, fixing run command not working with spaces in path 2026-02-13 02:56:48 +01:00
Dominik Jain 58f2727800 BashLanguageServer: Fix run command failing in case of spaces in path 2026-02-13 02:48:59 +01:00
Dominik Jain 05031e6afb Merge pull request #1000 from oraios/copilot/fix-news-display-logic
Filter news items by installation date
2026-02-13 00:12:13 +01:00
Dominik Jain be155a348e Improve JetBrains usage documentation
Relates to #1027
2026-02-12 21:26:22 +01:00
Dominik Jain 3e71411780 Improve language requirements/alternatives documentation 2026-02-11 21:17:27 +01:00
Dominik Jain d65a99034b Disable Phpactor tests that find references on Windows (takes forever/fails) 2026-02-11 21:02:30 +01:00
Dominik Jain af6ce686ad _postprocess_symbol_collection_response: Apply conversion recursively 2026-02-11 19:42:33 +01:00
Dominik Jain 83c4116257 Merge pull request #1002 from takeokunn/feature/support-phpactor
Add Phpactor as alternative PHP language server
2026-02-11 13:27:31 +01:00
Michael Panchenko d7125fabe1 Merge pull request #1010 from Proton23/fix/add-python-artifacts-to-dockerignore
fix: Add Python artifacts to .dockerignore
2026-02-09 22:16:46 +01:00
Antonio MelilloandCursor 23a860cdc0 fix: Add Python artifacts to .dockerignore
Docker build fails when local .venv directory exists because:
1. COPY . /workspaces/serena/ copies .venv into container
2. RUN uv venv fails with 'virtual environment already exists'

This change prevents the issue by excluding Python development artifacts:
- .venv (virtual environment)
- __pycache__ (Python bytecode cache)
- *.pyc (compiled Python files)
- .pytest_cache (test cache)

These files are not needed for Docker builds as the container creates
its own clean environment.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-09 21:44:03 +01:00
Michael Panchenko 257d0370ee Fix nix hover test - wrong position in test 2026-02-09 12:05:53 +01:00
Dominik Jain 3b707283f0 Fix log message parameters #1004 2026-02-09 02:04:57 +01:00
Dominik Jain c1c54e9936 Merge pull request #1003 from bahaaza/fix/switch-modes-bug
Fix: switch_modes tool silently failing to change modes
2026-02-09 01:56:03 +01:00
Bahaa Zahika 271e2006d2 Fix switch_modes tool silently failing to change modes
set_modes() applied requested modes directly to self._active_modes,
then called _update_active_modes_and_tools() which recreates
_active_modes from scratch (global config -> project config -> CLI
overrides), discarding the change.

Fix: store the requested modes into self._mode_overrides so they
survive the rebuild and take highest priority, matching the behavior
of CLI --mode flags.

Also adds test coverage for set_modes() which was previously untested.

Bug was introduced in commit 40a3075 on Jan 26, 2026.
2026-02-09 01:08:37 +02:00
Michael Panchenko 46d3f11427 Human > AI (for now) 2026-02-07 20:23:18 +01:00
takeokunn e0c2a4ff93 Merge branch 'feature/support-phpactor' of ssh://github.com/takeokunn/serena into feature/support-phpactor
# Conflicts:
#	test/conftest.py
2026-02-08 01:08:26 +09:00
takeokunn 46fabd69f4 fix(test): merge PHP test classes into TestPhpLanguageServers
Consolidate TestPhpLanguageServer and TestPhpPhpactorLanguageServer
into a single TestPhpLanguageServers class. Both Language.PHP and
Language.PHP_PHPACTOR are now parametrized together, with conditional
branching where the two language servers differ in behavior.

Addresses review comment on PR #1002.
2026-02-08 01:03:17 +09:00
takeokunn c972380d0a fix(test): remove php_phpactor symlink and add repo alias mapping
Remove the unnecessary php_phpactor -> php symlink. Instead, add a
_LANGUAGE_REPO_ALIASES mapping in conftest.py so that variant language
servers (PHP_PHPACTOR, PYTHON_JEDI, RUBY_SOLARGRAPH) resolve to their
base language's test repository without needing filesystem symlinks.

Addresses review comment on PR #1002.
2026-02-08 01:03:12 +09:00
takeokunn d39967dd67 fix(php): add PHP version validation for Phpactor
Check that the installed PHP version is >= 8.1 before proceeding with
Phpactor setup. Raises RuntimeError with a clear message if the version
is too old, and logs a warning if the version string cannot be parsed.

Addresses review comment on PR #1002.
2026-02-08 01:03:04 +09:00
Dominik Jain ee6b819633 Merge pull request #1001 from oraios/fix-trace-logger
Fix logging of language server process communication, renaming
2026-02-07 15:41:42 +01:00
Dominik Jain 4d0a4f6180 Merge remote-tracking branch 'origin/main' into feature/support-phpactor 2026-02-07 15:03:41 +01:00
takeokunn 65c24a0df8 feat(php): add Phpactor as alternative PHP language server
- Introduce PHP_PHPACTOR enum and integration in ls_config
- Implement PhpactorServer for PHP with dependency management
- Update docs and changelog for Phpactor support and usage
- Add project template entry for php_phpactor
- Provide tests for Phpactor LSP definition and reference features
2026-02-07 22:40:56 +09:00
copilot-swe-agent[bot]andMischaPanch eff7cc605a Remove test file as requested
Co-authored-by: MischaPanch <35432522+MischaPanch@users.noreply.github.com>
2026-02-07 12:52:30 +00:00
Dominik Jain 8f7ef3b4bf Fix: Use regular logger instead of LSP trace logger in LanguageServerProcess
Previously, even important error cases were not logged at all, because
the trace logger is rarely enabled.

Fixes #999
2026-02-07 13:17:53 +01:00