This new release of the aleph.im Core Channel Node application significantly enhances security and functionality while ensuring the codebase remains up-to-date.
✨ Features
- Historical Pricing: Implemented a new system for historical pricing to allow for the recalculation of message costs.
- Version Display: The Git version is now displayed on the status HTML page for easier tracking.
🐛 Fixes
- API Fix: Resolved an issue that was causing the
/api/v0/balances
endpoint to fail. - Security Fix: Addressed an important bugfix by implementing proper permission validation to prevent unauthorized message processing.
🔧 Maintenance & Dependencies
- Documentation: The
metrics.rst
documentation file has been updated. - Dependency Updates: Several dependencies were update
What's Changed
- Fix: /api/v0/balances broken by @aliel in #843
- Chore(deps): Bump pytz from 2025.1 to 2025.2 by @dependabot[bot] in #764
- Chore(deps): Bump requests from 2.32.3 to 2.32.4 by @dependabot[bot] in #804
- Chore(deps): Bump urllib3 from 2.3 to 2.5.0 by @dependabot[bot] in #811
- Chore(deps): Bump aiohttp from 3.11.14 to 3.12.15 by @dependabot[bot] in #828
- Chore(deps): Bump sentry-sdk from 2.23.1 to 2.35.1 by @dependabot[bot] in #842
- Update metrics.rst by @aliel in #839
- Chore(deps): Bump requests from 2.32.3 to 2.32.5 by @dependabot[bot] in #840
- Chore(deps): Bump types-aiofiles from 24.1.0.20241221 to 24.1.0.20250822 by @dependabot[bot] in #841
- feat: Implement historical pricing for message cost recalculation by @amalcaraz in #813
- Added git version in status html page by @amalcaraz in #844
- Fix: Prevent unauthorized message processing due to missing permission validation by @amalcaraz in #845
Full Changelog: 0.8.0...0.8.1
Upgrade guide
Make sure that your node is running v0.5.1 or later. If that is not the case already, follow the upgrade guide here.
From v0.5.1, simply bump the version of these services:
- On the
docker-compose.yml
file, in thepyaleph
andpyaleph-api
services must usealephim/pyaleph-node:0.8.1
. - On the
docker-compose.yml
file, in thep2p-service
service must usealephim/p2p-service:0.1.4
. - On the same folder than
docker-compose.yml
file, should be a properkubo.json
configuration file, can be downloaded withwget https://raw.githubusercontent.com/aleph-im/pyaleph/0.8.1/deployment/samples/docker-compose/kubo.json
. - On the
docker-compose.yml
file, in theipfs
service must use theipfs/kubo:v0.35.0
and the command section should be["daemon", "--enable-pubsub-experiment", "--migrate", "--enable-gc", "--config-file", "/etc/kubo.json"]
. - On the
docker-compose.yml
file, in theipfs
service must include a volume pointing to localkubo.json
configuration file, like- "./kubo.json:/etc/kubo.json:ro"
. - On the
docker-compose.yml
file, ONLY FOR CCNs WITH HIGH CPU LOADS, in theipfs
service, must have some CPU and memory limitations. On CPU side should be the half of total CPU cores, and on memory side around 20% of the total memory. To configure it, the service should look like (new lines added with comments):
ipfs:
restart: always
image: ipfs/kubo:v0.35.0
ports:
- "4001:4001"
- "4001:4001/udp"
- "127.0.0.1:5001:5001"
volumes:
- "pyaleph-ipfs:/data/ipfs"
- "./kubo.json:/etc/kubo.json:ro"
environment:
- IPFS_PROFILE=server
- GOMAXPROCS=4 # 50% of total CPU cores amount
- GOMEMLIMIT=23500MiB # 25% of total RAM memory minus 500MB
networks:
- pyaleph
command: ["daemon", "--enable-pubsub-experiment", "--migrate", "--enable-gc", "--config-file", "/etc/kubo.json"]
cpus: 4.0 # 50% of total CPU cores amount
mem_limit: 24g # 25% of total RAM memory
memswap_limit: 24g # Same amount than up
⚠️ Warning: After updating pyaleph, the service may take up to 10 minutes to start due to a one-time migration. Do not restart the VM; the service will start automatically once the migration completes.
Then, restart your node: docker-compose pull && docker-compose down && docker-compose up -d
.