CodeLite v18.x - 19.0.0
Release Notes ââŻv19.0.0 CodeLite â LSP, AI/LLM, UI & platform upgrades
đ Major Improvements
đ˘ Read more about the new AI feature here
1. AI / LLM ââŻcore platform upgrades
- Support for multiple LLM providers CodeLite supports multiple LLM providers, such as "Ollama" & "Anthropic".
- Unified LLM manager â new
LLMManagercomponent with modelâlisting, enable/disable helpers, interrupt support, and history handling. - Endpoint wizard & multiâmodel UI â a wizard for selecting the active provider, a dropâdown that persists the chosen model, and a âClear history / Restart clientâ action.
- Extended AIâpowered features â codeâreview, releaseânote generation, docâstring creation, function documentation, and automatic commitâmessage suggestions.
- Serverâside improvements â timeout configuration (connect/read/write), automatic configuration reload on fileâsave, and support for Ollama, Anthropic (Claude), DeepSeek and other providers.
- RAII helpers â
FunctionsDisabler,EnableAllFunctions(),EnableFunctionByName()to safely toggle LLM features.
2. Language Server Protocol (LSP) enhancements
- Unified manager â
LSP::Managerreplaces the oldLSPManager; all languageâserver capabilities (completion, hover, goâtoâdefinition/declaration, workspace symbols, semantic tokens, callâtips, etc.) now go through a single entry point. - Accelerated command handling â Find Symbol, Rename Symbol, Find References are grouped in a global accelerator group; perâeditor bindings removed.
- Selectionâaware navigation â âGo to Definitionâ now prefers the start of the current selection.
- Header lookup & workspace symbols â
LSP::Manager::FindHeaderFileandWorkspaceSymbolsprovide direct server queries, replacing the legacy eventâbased mechanisms. - Semanticâtoken driven theming â editor colours now update automatically from LSP semantic tokens.
3. Editor & UI modernisation
- Unified Outline View â Quick Outline replaced by a single Outline View with its own LSP documentâsymbol event (
wxEVT_LSP_DOCUMENT_SYMBOLS_OUTLINE_VIEW). - Navigation bar enrichment â now shows classes, structs, enums, and interfaces as well as functions.
- Improved toolbars â all toolbars migrated to
wxAuiToolBar; icons, accelerators and sash widths (250âŻpx) refreshed. - IndicatorPanel â reusable backgroundâtask status widget used by both Git and ChatAI panels.
- Prompt editor & preview â
PromptEditorDlgandTextGenerationPreviewFramereplace modal dialogs; markdownâstyled prompts, JSON parsing, and scrollâresilience added. - Platformânative notebooks â Git âChangesâ view now uses the native notebook widget on each OS (wxAuiNotebook, wxNativeBook, clGenericNotebook).
4. Git console and fileâtool upgrades
- AIâdriven Git tools â codeâreview integration, releaseânote generation button in the Git toolbar, and batch processing of commit logs.
- Enhanced log handling â
FetchLogBetweenCommitssplits logs into chunks, filters noise and returns a typed error object.
5. Configuration, build & platform support
- Centralised config APIs â
CreateOrOpenConfig(), full validation, version checks and automatic backups for LLM settings. - CMake modernisation â switched to
add_compile_definitions, removed obsolete flags, and added hidden buildâdirectory layout (.buildâdebug,.buildârelease). - Crossâplatform fixes â added OpenBSD support, updated thirdâparty submodules (assistant, ctagsd, dtl, libssh, yamlâcpp), migrated many utilities to
std::unique_ptr/std::optional, and replaced old typedefs withusing. - Documentation overhaul â README, download pages and ChatAI docs reorganised; badges, quickâlink tables and animated GIFs added.
6. Refactors & cleanâups
- Consolidated XML utilities under
XmlUtils. - Moved string utilities to
StringUtils. - Replaced dead event bindings (
wxEVT_CC_*,wxEVT_WXC_PROPETY_CHANGED, etc.). - Applied modern C++ keywords (
override,explicit,nullptr,[[maybe_unused]]).
đ Bug Fixes (consolidated)
- Typo & spelling corrections â hundreds of identifiers, comments and UI strings fixed (e.g., âbehaviour â behaviorâ, âParentesis â Parenthesisâ).
- Commentâdetection logic â
IsPositionInCommentadded; prevents completions and callâtips inside comments. - Statusâmessage timeout â reduced from 3âŻs to 1âŻs for docâstring generation and LSP symbol requests.
- Duplicate/obsolete event removal â cleaned up
wxEVT_CC_*,wxEVT_WXC_PROPETY_CHANGED, dead Outlineâview events, and dead LSP bindings. - Crash & stability fixes â guard against null pointers in Git dialogs, Text Generation windows, LSP request handling, and remote workspace searches; fixed Linuxâspecific crashes with wx3.2.
- Headerâlookup and workspaceâsymbol bugs â resolved missing symbols, corrected fileâpath handling (UTFâ8 conversions, proper quoting of paths with spaces).
- Buildâsystem issues â fixed missing includes (
<memory>,<mutex>,<atomic>), correctedstd::numeric_limits<size_t>::max()usage, and resolved GCCâŻ15 and MSVC C++20 compilation errors. - Gitârelated fixes â improved log chunking, corrected toolbar bitmap handling, fixed rebase tool crashes, and restored missing âAdd unstaged fileâ action.
- AI UI glitches â toolbar sizer flags, backgroundâtask icon glitches, modelâselection dropdown resizing, and proper handling of empty model lists.
- Remote & SSH improvements â macro
WorkspaceRealPathalways resolved, safe deletion of custom SSH keys, and correct handling of special regex characters in remote searches. - Miscellaneous â updated README badges, refreshed French localisation, removed unused headers, and applied consistent codeâformatting throughout the code base.
đ Acknowledgements
A huge thankâyou to EranâŻIfrah, JorisâŻDauphin, UffeâŻJakobsen, JarodâŻ42, and all other contributors listed above. Your relentless effort makes each release stronger and more featureârich.
For a full diff, see the repository history.
đ Summary of Contributions
| Contributor | Commits |
|---|---|
| EranâŻIfrah | 232 |
| JorisâŻDauphin | 56 |
| UffeâŻJakobsen | 10 |
| JarodâŻ42 | 9 |
| dghart | 5 |
| AndersâŻJenbo | 1 |
| GuillermoâŻBernaldoâŻdeâŻQuirosâŻMaraver | 1 |
| bztd | 1 |
| tuwulin365 | 1 |
All contributions are listed in descending order of commit count.