13 hours ago
ClickHouse
1 days ago
nacos

3.2.0 (Mar 27th, 2026)

Nacos 3.2.0 is a major release focused on plugin architecture enhancement, AI Registry expansion, API modernization, and code quality improvements. Key highlights include:

  • AI Registry Completes the "AI Triad": Skill Registry and Prompt Registry join existing MCP/Agent Registry, with Nacos Copilot integration for AI-assisted management
  • Plugin Architecture Modernization: Comprehensive SPI-based plugin management with console UI, cluster-wide synchronization, and PostgreSQL enhancements
  • API Cleanup: Legacy UDP PUSH support removed, /v1 and /v2 HTTP APIs extracted to submodules for future removal
  • Security & Code Quality: OIDC/OAuth2 authentication plugin, multiple FindBugs fixes, dead code removal, and JDK 17+ compatibility enhancements
  • Console Modernization: Dual UI support for new/legacy console switching with improved user experience

Feature

  • [#13699] Support outputSchema for MCP tools
  • [#14041] Merge nacos-plugin PostgreSQL & Base Implementation into main repository
  • [#14056] Refactor datasource plugins structure and enhance PostgreSQL capabilities
  • [#14077] Implement SPI-based plugin discovery and management API
  • [#14078] Implement cluster-wide state synchronization for plugins
  • [#14079] Add plugin management console UI and API
  • [#14084] Support MCP Tool _meta and annotations fields
  • [#14085] Enhance MCP tool metadata with annotations support
  • [#14101] Implement cluster-wide state synchronization
  • [#14109] Introduce Prompt Registry as core component of Nacos AI Registry
  • [#14110] Introduce Skills Registry to complement Nacos AI Registry vision
  • [#14117] Add plugin management console UI and API
  • [#14120] Add version parameter support to Maintainer SDK Get Agent Card method
  • [#14527] Add OIDC/OAuth2 Authentication Plugin (Server)
  • [#14534] Add find-skill-from-nacos capability for intelligent skill discovery
  • [#14623] Add skill-scanner integration for AI Skill security scanning
  • [#14641] Update Nacos console UI with modern design
  • [#14653] Support dual UI switching between new and legacy console with contextPath adaptation
  • [#14672] Skill support for data level access and visibility Phase 2
  • [#14677] Skill support for data level access and visibility Phase 3

Enhancement/Refactor

  • [#14048] Refactor datasource plugins structure and enhance PostgreSQL capabilities
  • [#14050] Extract /v1 and /v2 HTTP APIs to submodules for future removal
  • [#14052] Remove UDP PUSH support for naming module
  • [#14057] Refactor CreateTool and support output scheme
  • [#14074] Remove legacy UDP PUSH support from naming module
  • [#14122] Add JVM --add-opens options for JDK 17+ compatibility in startup scripts
  • [#14125] Activate dev profile by default for plugin dependencies
  • [#14441] Refactor version comparison and JSON field handling with constants
  • [#14461] Remove obsolete p3c-pmd plugin and cleanup annotations
  • [#14463] Unify component scanning with custom package exclusion
  • [#14468] Unify component scanning with custom package exclusion
  • [#14546] Remove unused common.cache package (dead code from Guava removal attempt)
  • [#14585] Refactor admin API input from JSON body to form params
  • [#14640] Refactor database plugins and update CI report paths

BugFix

  • [#13770] Fix missing context path in importToolsFromMcp and other AI-related APIs
  • [#14009] Fix UUID passing issue in configuration fuzzy listening causing initialization events to be filtered
  • [#14016] Fix Console automatic server member synchronization in distributed deployment
  • [#14020] Fix missing '?' placeholder in database query
  • [#14024] Fix MCP cache index inconsistency when recreating MCP server with same name
  • [#14028] Fix remote server selection to use healthy nodes during import/export operations
  • [#14063] Fix control plugin bug
  • [#14104] Fix AI API context path errors in console
  • [#14114] Fix incorrect grayRule detection in ConfigMigrateService
  • [#14121] Fix console-ui pagination reset to 0 instead of 1 on API error
  • [#14210] Fix MainLayout to handle language changes and fetch notices on update
  • [#14307] Add JVM --add-opens options for JDK 17+ compatibility in startup scripts
  • [#14401] Fix incorrect created field returned by ConfigRowMapperInjector
  • [#14402] Fix MySQL LIKE query escaping to prevent underscore and hyphen confusion
  • [#14442] Fix Derby and MySQL LIKE query with proper escape handling
  • [#14450] Fix console remote server context-path for maintainer-client
  • [#14454] Throw proper exception when form parameters exceed size limit
  • [#14471] Replace Long.valueOf() with Long.parseLong() to avoid unnecessary boxing
  • [#14479] Fix typo, incorrect Javadoc and improve resource management in health check processors
  • [#14484] Add 'type' and 'md5' fields to findConfigInfoLike4PageFetchRows for plugin development
  • [#14486] Remove unnecessary equals() override in enum classes
  • [#14491] Fix DumpChangeGrayConfigWorker NPE
  • [#14509] Fix non-short-circuit operator in for-loop condition
  • [#14510] Fix clone() not calling super.clone() in ConfigForm
  • [#14515] Fix unnecessary equals() override in enum classes
  • [#14527] Add OIDC/OAuth2 Authentication Plugin (Server)
  • [#14533] Fix DM_DEFAULT_ENCODING: add explicit charset to avoid platform-dependent encoding
  • [#14538] Fix DMI_RANDOM_USED_ONLY_ONCE: replace new Random() with ThreadLocalRandom
  • [#14545] Remove unused common.cache package
  • [#14547] Fix HE_EQUALS_USE_HASHCODE: add missing hashCode() to Config model classes
  • [#14548] Fix NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE: add null check in GrpcConnection callback
  • [#14567] Fix console-ui TypeError in MainLayout and improve copilot module loading
  • [#14616] Fix naming module pagination parameter validation
  • [#14622] Exclude json-schema-validator 3.0.0 from agentscope-core to resolve NoClassDefFoundError
  • [#14625] Fix NoClassDefFoundError by excluding conflicting json-schema-validator dependency
  • [#14635] Fix health status update method to correctly handle persistent instances
  • [#14712] Fix Skill ZIP upload losing SKILL.md content

Dependencies

  • [#11180] Upgrade jraft-core version to 1.4.0
  • [#14006] Upgrade Spring Boot to 3.4.10 to address CVE-2025-55752
  • [#14055] Bump org.apache.logging.log4j:log4j-core from 2.24.3 to 2.25.3
  • [#14625] Exclude json-schema-validator 3.0.0 from agentscope-core
  • [#14714] Upgrade gRPC version to 1.78.0

⚠️ Breaking Changes & Migration Notes

Database Schema Changes (Important)

Action Required: This release introduces significant database schema changes with multiple new tables added for plugin management, AI Registry (Skill/Prompt), and enhanced audit capabilities.

Before upgrading, you must apply the new schema:

  1. Backup your existing database
  2. Apply the schema upgrade script: conf/schema.sql (for MySQL) or corresponding script for your database type
  3. Restart Nacos server after schema migration

Failure to apply the schema changes may result in plugin management, AI Registry, and other new features not functioning correctly.

API Legacy Adapter Plugin (Important)

Action Required: The plugins directory includes the api-legacy-adapter plugin by default to maintain compatibility with extracted /v1 and /v2 HTTP APIs. This plugin will be removed in future versions.

If you have confirmed that your deployment no longer uses the legacy /v1 or /v2 APIs, you can safely remove the api-legacy-adapter plugin from the plugins directory immediately to reduce footprint.

Naming Module: UDP PUSH Support Removed

The naming module has removed legacy UDP PUSH support, moving to a cleaner HTTP API architecture. Clients relying on UDP-based service discovery updates must migrate to HTTP-based mechanisms.

Java Version Requirements

Module Java Required
Nacos-Server / Nacos-Console Java 17
Nacos-Client Java 8
Nacos-Maintainer-Client Java 8

📚 What's New in AI Registry

Skill Registry

  • Centralized Management: Create, update, and version skills via UI or API with changelogs
  • Skill Composition: Chain multiple MCP tools into business-meaningful capabilities (e.g., "user_onboarding" = verify_email + create_profile + send_welcome_email)
  • MCP Integration: Skills explicitly declare dependencies on registered MCP tools with integrity validation
  • Folder-based Organization: Skills displayed in multi-level folder structure for better organization
  • Agent-Friendly APIs: REST/gRPC APIs for agent frameworks (LangChain, CrewAI, etc.) to discover and subscribe to skills
  • Upload Support: Upload skill packages (zip format, max 10MB) with authentication
  • Security Scanning: Integrated skill-scanner for AI Skill security validation
  • Data Level Access: Fine-grained visibility and access control (Phase 2 & 3)

Prompt Registry

  • First-Class Configuration: Store prompts with metadata (agentId, modelId, version, tags) as versioned config artifacts
  • Multi-Version Management: Support parallel multi-version management with template and commit message tracking
  • Tag-Based Subscription: Subscribe to prompts by tags for dynamic updates
  • Interactive Debugging: Test and compare prompt outputs across versions directly in console
  • AI Client Proxy: Unified HTTP/gRPC client interface for prompt operations

Nacos Copilot

  • AI-Powered Assistant: Integrated AI assistant to help optimize and create Prompts and Skills
  • Intelligent Discovery: Automatically find relevant existing skills from the registry
  • Console Integration: Accessible directly from Nacos console for seamless workflow

New Contributors

Full Changelog: https://github.com/alibaba/nacos/compare/3.1.1...3.2.0

2 days ago
zuul

v3.5.3

What's Changed

Full Changelog: https://github.com/Netflix/zuul/compare/v3.5.2...v3.5.3

2 days ago
questdb

9.3.4

QuestDB 9.3.4

QuestDB 9.3.4 delivers dynamic windows in WINDOW JOIN, Parquet row group pruning with bloom filters, new array functions, and significant performance improvements across ORDER BY, joins, and Parquet I/O.

For any questions or feedback, please join us on Slack or on Discourse.

See also our prettier release notes page.

Breaking changes 💥

  • Parquet Varchar encoding default changed: Parquet export now uses RLE Dictionary encoding for Varchar columns instead of Delta Length Byte Array. Parquet files written by 9.3.4 use the new encoding by default. If downstream tools or pipelines depend on the previous encoding, use the new per-column encoding config to override.
  • Constant expression folding: The SQL engine now folds constant expressions at compile time, which aligned compile-time behaviour of NaN/Infinity values with their runtime behaviour. Infinity and -Infinity in constant float/double expressions are now collapsed to NULL at compile time, consistent with QuestDB's existing NULL convention. CASE/SWITCH expressions can no longer branch on Infinity or -Infinity as distinct values.

Highlights

Dynamic window support in WINDOW JOIN

WINDOW JOIN now supports dynamic window ranges computed from column values or expressions:

SELECT t.*,
       avg(p.mid) AS avg_mid
FROM trades t
WINDOW JOIN prices p
  ON p.sym = t.sym
  RANGE BETWEEN t.lookback PRECEDING
        AND CURRENT ROW
  INCLUDE PREVAILING;

Parquet row group pruning with bloom filters

Queries over Parquet files now leverage min/max statistics and bloom filters to skip entire row groups that cannot match the query predicate, dramatically reducing I/O for selective queries.

Array functions

New DOUBLE[] functions: array_sort(), array_reverse(), array_elem_min(), array_elem_max(), array_elem_avg(), and array_elem_sum().

Other

  • arg_min() and arg_max() now support CHAR arguments.
  • Per-column Parquet encoding/compression configuration.
  • minTimestamp and maxTimestamp columns added to sys.telemetry_wal.

Performance

  • ASOF and WINDOW JOIN: Faster execution for large right-hand-side tables.
  • ORDER BY: Pre-computed sort keys for fixed-width types; dedicated fast path for SYMBOL columns.
  • HORIZON JOIN: Better parallelization across various data distributions.
  • Vectorized GROUP BY: More non-keyed queries now use SIMD computation.
  • Parquet decoding: Faster row group decompression and column materialization.
  • Parquet writing: Reduced write amplification and improved write speed.
  • WAL writer: New cairo.wal.writer.madvise.mode config option for tuning memory access patterns.

Bug fixes

  • Fixed data corruption in DECIMAL128 and DECIMAL256 columns.
  • Fixed crash on LATEST BY ALL queries over large tables.
  • Fixed crash when Parquet partition statistics are missing.
  • Fixed crash in SAMPLE BY FILL with array column aggregates.
  • Fixed read_parquet() crash on SYMBOL columns from native Parquet files.
  • Fixed WINDOW JOIN INCLUDE PREVAILING dropping the prevailing row when the window had matches.
  • Fixed WINDOW JOIN dropping the prevailing row on cross-partition boundaries.
  • Fixed AssertionError triggered by certain JOIN queries.
  • Fixed read_parquet() on Parquet files with stale QuestDB metadata.
  • Fixed support for quoted column names in ALTER COLUMN.
  • Fixed resource leaks and NPEs in the SQL engine.
  • Disabled materialized view parallel SQL on low-core machines.

Changelist

  • fix(core): fix crash on LATEST BY ALL queries over large tables by @ideoma in #6832
  • feat(core): add minTimestamp and maxTimestamp columns to sys.telemetry_wal by @ideoma in #6779
  • fix(parquet): fix crash when parquet partition statistics are missing by @kafka1991 in #6827
  • feat(sql): add array_sort and array_reverse functions for double arrays by @javier in #6820
  • perf(wal): add cairo.wal.writer.madvise.mode configuration option by @jerrinot in #6841
  • perf(sql): speed up ASOF and WINDOW JOINs for large right-hand-side tables by @puzpuzpuz in #6822
  • fix(sql): fix SAMPLE BY FILL crash with array column aggregates by @javier in #6811
  • perf(parquet): improve decoding performance for parquet by @RaphDal in #6759
  • feat(sql): array_elem_{min,max,avg,sum} functions by @amunra in #6829
  • perf(sql): breaking change 💥 - Improve query execution time by folding constant expressions by @RaphDal in #6828
  • fix(sql): fix AssertionError that could be triggered by JOIN SQL by @DHRUV6029 in #6824
  • fix(sql): support quoted column names in ALTER COLUMN by @nwoolmer in #6842
  • feat(core): parquet row group pruning with min/max statistics and bloom filters by @kafka1991 in #6739
  • feat(sql): use vectorized computation in more non-keyed GROUP BY queries by @puzpuzpuz in #6805
  • fix(sql): fix WINDOW JOIN INCLUDE PREVAILING dropping prevailing row when window has matches by @RaphDal in #6868
  • fix(core): fix read_parquet() crash on SYMBOL columns from native parquet files by @ideoma in #6865
  • perf(parquet): breaking change 💥 - improve strings decoding performance for parquet files by @RaphDal in #6809
  • perf(sql): improve ORDER BY performance for fixed-width column types by @kafka1991 in #6862
  • feat(sql): arg_min and arg_max CHAR functions by @nwoolmer in #6730
  • perf(sql): speed up ORDER BY on SYMBOL columns by @kafka1991 in #6870
  • fix(sql): WINDOW JOIN dropping prevailing row on cross-partition by @RaphDal in #6871
  • perf(sql): optimize parallel HORIZON JOIN for various data distributions by @puzpuzpuz in #6867
  • fix(sql): fix bugs, resource leaks and NPE in SQL engine by @bluestreak01 in #6874
  • feat(sql): add dynamic window support in WINDOW JOIN by @puzpuzpuz in #6859
  • fix(core): fix data corruption in DECIMAL128 and DECIMAL256 columns by @jerrinot in #6873
  • feat(core): control parquet writing file size growth, reduce write amplification, improve write speed by @ideoma in #6819
  • feat(sql): add per-column parquet encoding/compression config by @RaphDal in #6843
  • fix(core): disable materialized view parallel SQL on low-core machines by @nwoolmer in #6891
  • fix(sql): fix read_parquet on Parquet files with stale QDB metadata by @nwoolmer in #6885

Full Changelog: 9.3.3...9.3.4

2 days ago
nacos

3.1.2

Nacos 3.1.2 is a patch release focused on stability improvements, security fixes, and AI module enhancements. Key highlights include:

  • Security: Upgraded Spring Boot to 3.4.10 to address CVE-2025-55752, plus log4j and gRPC dependency updates
  • AI/MCP: Fixed MCP cache inconsistency issues and added version parameter support for Agent Card queries
  • Console: Improved distributed deployment experience with automatic server member sync and fixed multiple context path issues
  • Client: Eliminated class unloading memory leak during config reload and fixed UUID passing issue in fuzzy listening
  • Config: Enhanced config metadata publishing with audit logging and notifications

Feature

  • [#13996] Add event publishing for agent and MCP endpoint operations
  • [#13999] Add audit logging and notifications for config metadata publishing
  • [#14120] Add version parameter support to Maintainer SDK Get Agent Card method

Enhancement/Refactor

  • [#14000] Eliminate class unloading memory leak during configuration reload using Configuration.initialize()
  • [#14062] Prevent potential data modification risk in client ServiceInfoHolder
  • [#14099] Add validation for serviceName and groupName in SubscribeServiceRequestHandler
  • [#14449] Remove ineffective ThreadLocal in MD5Utils
  • [#14454] Throw proper exception when form parameters exceed size limit

BugFix

  • [#13770] Fix missing context path in importToolsFromMcp and other AI-related APIs
  • [#14009] Fix UUID passing issue in configuration fuzzy listening causing initialization events to be filtered
  • [#14016] Fix Console automatic server member synchronization in distributed deployment
  • [#14020] Fix missing '?' placeholder in database query
  • [#14024] Fix MCP cache index inconsistency when recreating MCP server with same name
  • [#14028] Fix remote server selection to use healthy nodes during import/export operations
  • [#14063] Fix control plugin bug
  • [#14104] Fix AI API context path errors in console
  • [#14114] Fix incorrect grayRule detection in ConfigMigrateService
  • [#14121] Fix console-ui pagination reset to 0 instead of 1 on API error
  • [#14210] Fix MainLayout to handle language changes and fetch notices on update
  • [#14401] Fix incorrect created field returned by ConfigRowMapperInjector
  • [#14402] Fix MySQL LIKE query escaping to prevent underscore and hyphen confusion
  • [#14442] Fix Derby and MySQL LIKE query with proper escape handling
  • [#14450] Fix console remote server context-path for maintainer-client
  • [#14635] Fix health status update method to correctly handle persistent instances

Dependencies

  • [#14006] Upgrade Spring Boot to 3.4.10 to address CVE-2025-55752
  • [#14055] Bump org.apache.logging.log4j:log4j-core from 2.24.3 to 2.25.3
  • [#14714] Upgrade gRPC version to 1.78.0

Deployment Required

Module Java Required
Nacos-Server/Nacos-Console Java 17
Nacos-Client Java 8
Nacos-Maintainer-Client Java 8

Contributors

Thanks to all contributors: @KomachiSion, @chunhai1127, @INotWant, @chlch, and the Nacos community.

Full Changelog: https://github.com/alibaba/nacos/compare/3.1.1...3.1.2

2 days ago
cas

v7.2.7.1

Please see this post.