| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2025-08-31 | 12.3 kB | |
| v1.4.0 source code.tar.gz | 2025-08-31 | 44.7 MB | |
| v1.4.0 source code.zip | 2025-08-31 | 45.0 MB | |
| Totals: 3 Items | 89.6 MB | 0 | |
Highlights
- đ Improved Dev Server: faster, more reliable reloads without race conditions.
- đŚ Ecosystem split: IHP now modular (
ihp-ide,ihp-ssc,ihp-migrate,ihp-sitemap). - đ§ New helpers:
createRecordDiscardResult,copyRecord,queryUnionList,orderByAscJoinedTable. - đ ď¸ Production-ready: warp + systemd integration, healthcheck endpoint, better job runner handling.
- đ Compiler upgrade: GHC 9.8 (with support for 9.10 and 9.12).
Major Changes
- Added
createRecordDiscardResult(complementsupdateRecordDiscardResult) for cases where the result is not needed (e.g. scheduling jobs). - Added
copyRecordfor easier duplication of database records. - Improved Dev Server reliability and performance. Race conditions on rapid file updates are fixed by using proper bracketed resource management.
- Split IHP into multiple packages (
ihp-ide,ihp-ssc,ihp-migrate,ihp-sitemap) for cleaner dependency boundaries. - Production improvements: integrated
warp-systemd, added healthcheck endpoint, and improved socket activation. - Upgraded to GHC 9.8, with support for 9.10.x and 9.12.x.
Minor Changes
Nix / Deployment
- Added options:
rtsFlags,optimizationLevel,appName. - Support for aarch64 NixOS deployments.
- Faster
nix buildvia caching ofGenerated.Types. - Simplified migration service (
IHP_MIGRATION_DIR). - Dropped dependency on
ihpsource to reduce closure size. - Updated nixpkgs to 25.05 and devenv to 1.8.2.
- Use flake overlays instead of manual
mkGhcCompiler. - Donât set
system.stateVersionautomatically (configured in projectâsflake.nix).
Job Runner
- Jobs with timeouts are now restarted if workers crash.
- Improved async handling of jobrunner.
- Use
ResourceTfor job worker scheduling to avoid leaks. - Exceptions are now printed to logs for easier debugging.
- Donât log job worker SQL queries.
DataSync
- Fixes: arrays double-escaped, connections closed prematurely, crash with spaces in table names, non-snake_case column names.
- Features: added
useCount, customnewRecordBehaviour, support for event triggers, React 18useSyncExternalStore. - Avoid creating
large_pg_notificationstable when not needed.
HSX / View Layer
- Added
uncheckedHsxandcustomHsx. - Lucid2 port and core library split.
- Added missing HTML attributes.
- Fixed generator issues (brackets, variable references, migrations).
- Use Blaze helpers in HSX.
SQL / Query Layer
- Added
filterWhereInCaseInsensitive,queryUnionList,orderByAscJoinedTable/orderByDescJoinedTable. - Refactored pagination queries.
- Logging improvements: show final SQL, rounded runtimes, simplified log format with icons.
Storage
- Support custom storage directory via
IHP_STORAGE_DIR. - Support custom filenames in
storeFileFromPath. - S3
storagePrefixnow returns base URL. - Fix
createTemporaryDownloadUrlFromPath.
Miscellaneous
- Support custom base URL in
assetPath. - Add
withPGListener. - Always evaluate Blaze HTML.
- Added
mainInParentDirectory. - Enabled warp file cache in production.
- Set default gracefulShutdownTimeout.
- Improved schema compiler performance.
IHP OpenAI
- Removed deprecated
promptfield. - Added support for tools and tool calls,
response_format, Anthropiccache_control, Google Gemini. - Added
extraHeaders,finish_reason,usagein streaming responses. - Changed
maxTokens,temperature,presencePenalty,frequencyPenaltytoMaybe. - Improved error messages and quota exceeded feedback.
- Added
reasoningEffortandparallelToolCalls. system_fingerprintis now optional.
Documentation
- Improved deployment docs (workers, systemd integration, AWS Terraform).
- Updated guides for pagination, htmx, realtime SPAs.
- Clarified environment differences between dev/prod.
- Added docs for
validateFieldIOand scheduled job execution withrunAt. - Removed outdated NixOS installation instructions.
- Cleaned up Emacs docs.
- Added troubleshooting notes for EC2 deployments.
New Contributors
- @andreytroeglazov made their first contribution in https://github.com/digitallyinduced/ihp/pull/1986
- @leifmetcalf made their first contribution in https://github.com/digitallyinduced/ihp/pull/2002
- @kukimik made their first contribution in https://github.com/digitallyinduced/ihp/pull/2001
- @kursataktas made their first contribution in https://github.com/digitallyinduced/ihp/pull/2014
- @mmc102 made their first contribution in https://github.com/digitallyinduced/ihp/pull/2019
- @Nathan-8963 made their first contribution in https://github.com/digitallyinduced/ihp/pull/2025
- @iteratee made their first contribution in https://github.com/digitallyinduced/ihp/pull/2055
- @stephenbenedict made their first contribution in https://github.com/digitallyinduced/ihp/pull/2062
- @ANU-2524 made their first contribution in https://github.com/digitallyinduced/ihp/pull/2078
Full Changelog: https://github.com/digitallyinduced/ihp/compare/v1.3.0...v1.4.0