Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
173 changes: 173 additions & 0 deletions RELEASE_NOTES_DRAFT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
# VCell Release Notes: 7.7.0.15 → 7.8.0

**Release Date:** December 2025
**Previous Release:** 7.7.0.15 (February 5, 2025)
**Commits:** 466 | **PRs Merged:** 55+

---

## Highlights

This release represents approximately 10 months of development with major infrastructure improvements, a rewritten export system, enhanced SpringSaLaD/Langevin solver capabilities, and significant progress migrating the VCell API to modern Quarkus REST endpoints.

---

## New Features

### Export System Overhaul
- **Complete rewrite of the export system** using Quarkus REST API
- Replaced ApacheMQ with ArtemisMQ for export job queuing
- Created separate Docker image for export service for better scalability
- Exports now use exclusively N5 format for improved reliability
- Added asynchronous export processing with proper error handling and user notifications
- New endpoints for tracking export job status

### SpringSaLaD/Langevin Solver Enhancements
- **Upgraded Langevin solver** through multiple versions (1.4.0 → 1.4.2 → 1.4.4)
- **SLURM array job support** for running multiple trial simulations in parallel with dynamic job allocation
- **Post-processing statistics** for multiple runs including:
- Averages, standard deviation, min/max calculations
- Cluster analysis for advanced statistics
- Physical limit validation for site sizes, diffusion rates, and partition sizes
- Improved sanity checks for reaction-limited restrictions and reaction radius calculations
- Particle displacement calculations for given diffusion rates and time intervals
- New UI for Steady State options in Simulation Options dialog (CVODE only)

### Field Data System Improvements
- **Moved field data processing to the server** (previously client-side), reducing network overhead
- New REST endpoints for field data operations:
- Create field data from files
- Create field data from simulation results
- Copy field data between BioModels
- Improved memory management for large field data operations
- Algorithm optimization with reduced memory usage (up to 68% reduction)
- Removed complex FieldDataOpSpec system in favor of simpler, atomic operations

### Quarkus REST API Expansion
New endpoints added for modern API access:
- **BioModel endpoints**: save, delete, get, and info retrieval
- **MathModel endpoints**: full CRUD operations
- **Geometry endpoints**: creation and retrieval
- **VCImage resource**: image handling through REST API
- Improved error handling architecture with proper HTTP status codes
- OpenAPI specification testing in CI to prevent breaking API changes
- Generated clients for Java and Python updated automatically

### User Access Control
- **VCell Support role** added - support staff can now view models shared with VCell Support
- Improved user role management in database and API

---

## Bug Fixes

### Critical Fixes
- **Fixed VCell reconnection/token refresh failure** - clients no longer lose connection after extended periods (#1471)
- **Fixed Google login issues** - proper handling of Google account selection and logout (#1520)
- **Fixed OutputFunctions being ignored** in spatial CLI data processing (#1595)
- **Fixed Math Model export error** - type casting issue resolved (#1594)
- **Fixed field data creation from simulations** - previously broken functionality restored (#1457)

### Model & Simulation Fixes
- Fixed PubMed links in Annotations tab (#1576)
- Fixed NPE when inserting compartment (#1541)
- Fixed concurrent modification exception in simulation results display (TreeMap replaced with ConcurrentSkipListMap) (#1465)
- Fixed geometry viewer cropping bug (#1437)
- Fixed parameter estimation requiring constant re-authentication (#1498)
- Typo fix: "Constructed" → "Constructive" solid geometry (#1561)

### Infrastructure & Security
- **XML security hardening** - prevention of XXE (XML External Entity) attacks in XML parsing (#1531)
- Fixed SSH command configuration for SLURM cluster migration (#1467)
- Fixed duplicate SSH login issues (#1562)
- Database connection improvements for Oracle and PostgreSQL

---

## Infrastructure Improvements

### Server & Deployment
- Configurable SSH options for SLURM via Kubernetes config
- New HAProxy pod for SSH request proxying to SLURM submit nodes
- Improved Terraform documentation for Kubernetes deployment
- Apple code signing certificate renewal for macOS installers
- Oracle database account restructuring:
- New `vcell_service` account for production
- New `vcell_dev` account for developers
- Deprecated shared `vcell` account for improved security

### Native Library Compilation (libvcell)
- **New GraalVM native compilation** of VCell Java code for use with pyvcell
- Published libvcell package to PyPI with multi-platform support
- Custom manylinux Docker image with bundled GraalVM, Maven, and Poetry
- Endpoints for generating Finite Volume solver input from VCML and SBML

### Build & CI/CD
- OpenAPI specification CI testing to prevent breaking changes
- Improved GitHub Actions workflows for native library builds
- JSBML fork with custom resource bundle handling for native compilation
- Updated JAI Core repository configuration

---

## External Integrations

### Pathway Commons
- Upgraded to BioPAX Level 3 support (#1574, #1586)
- Improved pathway import using new pathwaycommons.org URLs
- Better handling of pathway entities and reactions

### BioSimulations Compatibility
- Plots now reported as Reports for BioSimulations compatibility (#1444)
- Updated CLI data handling for improved interoperability
- Small mesh option for faster spatial simulations

### BioModels Database
- Updated list of supported/failed models for BMDB importing
- Fixed import issues with models having variable compartment sizes (#1496)

---

## Developer Notes

### API Migration Status
The migration from legacy Jersey/RPC API to Quarkus REST continues. The following resources now use the new API:
- BioModel (info, save, delete, get)
- MathModel (full CRUD)
- Geometry
- VCImage
- Field Data
- Export (with new queue system)
- User/Authentication

### Breaking Changes
- Export format now exclusively N5 (legacy formats deprecated)
- KeyValue objects now serialize as strings in API responses
- Some legacy RPC calls removed from client

### Deprecated Features
- Legacy ApacheMQ export queue (replaced by ArtemisMQ)
- FieldDataOpSpec system (replaced by simpler endpoint model)
- Direct Oracle 'vcell' account access (use vcell_dev or vcell_service)

---

## Known Issues

- SpringSaLaD is disabled by default (enable via property `enableSpringSaLaD=true`)
- Windows native library builds for pyvcell still in progress

---

## Contributors

- **Ezequiel Valencia** - REST API development, Field Data system, Export system overhaul
- **Dan Vasilescu** - SpringSaLaD/Langevin solver improvements, SLURM integration, post-processing statistics
- **Logan Drescher** - CLI improvements, BioSimulations compatibility, Smoldyn performance optimizations
- **Jim Schaff** - Infrastructure, pyvcell/libvcell, native compilation, system architecture

---

## Acknowledgments

Special thanks to the VCell user community for bug reports and feedback. For questions or issues, contact vcell_support@uchc.edu.
69 changes: 69 additions & 0 deletions RELEASE_NOTES_USER.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# VCell 7.8.0 Release Notes

**Release Date:** December 2025

---

## What's New

### Faster, More Reliable Exports
We've completely rebuilt the export system from the ground up. Exports are now more reliable, faster, and you can track their progress in real-time. All exports now use the N5 format, which provides better performance and compatibility with modern visualization tools.

### Improved SpringSaLaD Simulations
- **Run multiple trials in parallel** - SpringSaLaD simulations can now run many trials simultaneously on our computing cluster, dramatically reducing wait times for statistical analysis
- **Built-in statistics** - Automatically calculate averages, standard deviations, and min/max values across multiple simulation runs
- **Better validation** - The system now checks your model parameters before running to catch common issues early

### Enhanced Field Data Management
- Create field data directly from simulation results without downloading files first
- Copy field data between your BioModels more easily
- Significantly faster processing for large datasets

### Better Connection Stability
- Fixed issues where VCell would lose connection after extended periods
- Improved Google login - switching between accounts now works correctly
- More reliable reconnection when network issues occur

### VCell Support Access
Support staff can now view models you've shared with "VCell Support" to help troubleshoot issues more effectively.

---

## Bug Fixes

- Fixed PubMed links in the Annotations tab
- Fixed geometry viewer cropping issues
- Fixed errors when inserting compartments in some models
- Fixed Math Model export errors
- Fixed parameter estimation requiring repeated logins
- Fixed "Constructed Solid Geometry" typo (now correctly shows "Constructive Solid Geometry")
- Fixed issues with spatial simulation output functions being ignored

---

## Pathway Commons Integration

Importing pathways from Pathway Commons has been upgraded to support the latest BioPAX Level 3 format, providing access to more comprehensive pathway data.

---

## System Requirements

No changes to system requirements from the previous version. VCell 7.8.0 is available for:
- Windows 10/11
- macOS 11 (Big Sur) and later
- Linux (Ubuntu 20.04+ recommended)

---

## Getting Help

- **Email:** vcell_support@uchc.edu
- **Discussion Forum:** https://groups.google.com/group/vcell-discuss
- **Documentation:** https://vcell.org

---

## Thank You

Thank you to all users who reported bugs and provided feedback. Your input helps make VCell better for the entire computational biology community.
Loading