summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--packages/meshbay-common/pyproject.toml2
-rw-r--r--packages/meshbay-common/src/meshbay_common/__init__.py2
-rw-r--r--packages/meshbay-hub/pyproject.toml4
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/__init__.py2
-rw-r--r--packages/meshbay-node/pyproject.toml4
-rw-r--r--packages/meshbay-node/src/meshbay_node/__init__.py2
-rw-r--r--packaging/rpm/meshbay-hub.spec9
-rw-r--r--packaging/rpm/meshbay-node.spec5
-rw-r--r--packaging/rpm/python3-meshbay-common.spec5
9 files changed, 24 insertions, 11 deletions
diff --git a/packages/meshbay-common/pyproject.toml b/packages/meshbay-common/pyproject.toml
index dede42f..f8d4673 100644
--- a/packages/meshbay-common/pyproject.toml
+++ b/packages/meshbay-common/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
[project]
name = "meshbay-common"
-version = "0.3.0"
+version = "0.4.0"
description = "MeshBay shared cryptographic primitives and protocol types"
requires-python = ">=3.12"
dependencies = [
diff --git a/packages/meshbay-common/src/meshbay_common/__init__.py b/packages/meshbay-common/src/meshbay_common/__init__.py
index 8f6abb7..ef0f1f6 100644
--- a/packages/meshbay-common/src/meshbay_common/__init__.py
+++ b/packages/meshbay-common/src/meshbay_common/__init__.py
@@ -1,5 +1,5 @@
"""MeshBay common — shared crypto primitives and protocol types."""
-__version__ = "0.3.0"
+__version__ = "0.4.0"
MNP_VERSION = "0.1"
MHP_VERSION = "0.1"
diff --git a/packages/meshbay-hub/pyproject.toml b/packages/meshbay-hub/pyproject.toml
index 8c6fe70..4c18b10 100644
--- a/packages/meshbay-hub/pyproject.toml
+++ b/packages/meshbay-hub/pyproject.toml
@@ -4,11 +4,11 @@ build-backend = "hatchling.build"
[project]
name = "meshbay-hub"
-version = "0.3.0"
+version = "0.4.0"
description = "MeshBay Hub — identity authority and group registry server"
requires-python = ">=3.12"
dependencies = [
- "meshbay-common>=0.3.0",
+ "meshbay-common>=0.4.0",
"fastapi>=0.115",
"uvicorn[standard]>=0.30",
"sqlalchemy>=2.0",
diff --git a/packages/meshbay-hub/src/meshbay_hub/__init__.py b/packages/meshbay-hub/src/meshbay_hub/__init__.py
index 99b22ea..9af9cba 100644
--- a/packages/meshbay-hub/src/meshbay_hub/__init__.py
+++ b/packages/meshbay-hub/src/meshbay_hub/__init__.py
@@ -1,3 +1,3 @@
"""MeshBay Hub — identity authority and group registry."""
-__version__ = "0.3.0"
+__version__ = "0.4.0"
diff --git a/packages/meshbay-node/pyproject.toml b/packages/meshbay-node/pyproject.toml
index 897b5e9..a150fb3 100644
--- a/packages/meshbay-node/pyproject.toml
+++ b/packages/meshbay-node/pyproject.toml
@@ -4,11 +4,11 @@ build-backend = "hatchling.build"
[project]
name = "meshbay-node"
-version = "0.3.0"
+version = "0.4.0"
description = "MeshBay Node — local file host, streaming server, and group daemon"
requires-python = ">=3.12"
dependencies = [
- "meshbay-common>=0.3.0",
+ "meshbay-common>=0.4.0",
"fastapi>=0.115", # local web UI on localhost:18000
"uvicorn[standard]>=0.30",
"httpx>=0.28", # hub client
diff --git a/packages/meshbay-node/src/meshbay_node/__init__.py b/packages/meshbay-node/src/meshbay_node/__init__.py
index e4989b2..25e544b 100644
--- a/packages/meshbay-node/src/meshbay_node/__init__.py
+++ b/packages/meshbay-node/src/meshbay_node/__init__.py
@@ -1,3 +1,3 @@
"""MeshBay Node — local file host, streaming server, and group daemon."""
-__version__ = "0.3.0"
+__version__ = "0.4.0"
diff --git a/packaging/rpm/meshbay-hub.spec b/packaging/rpm/meshbay-hub.spec
index 68a580c..cde6fc3 100644
--- a/packaging/rpm/meshbay-hub.spec
+++ b/packaging/rpm/meshbay-hub.spec
@@ -1,5 +1,5 @@
Name: meshbay-hub
-Version: 0.3.0
+Version: 0.4.0
Release: 1%{?dist}
Summary: MeshBay Hub — identity authority and group registry server
License: AGPLv3+
@@ -74,6 +74,13 @@ getent passwd meshbay >/dev/null || \
%dir %attr(750, meshbay, meshbay) %{_sharedstatedir}/meshbay/hub
%changelog
+* Sun Aug 16 2026 MeshBay Team <team@meshbay.org> - 0.4.0-1
+- Web client translated into fr, es, pt-BR, zh-CN, ja, de, it, nl and pl
+- Catalogues load on demand, one file per language, English as fallback
+- Plural forms selected through Intl.PluralRules (Polish needs four)
+- Locale matching keeps the region, so pt-BR and zh-CN resolve
+- Static assets are revalidated, so a half-updated SPA cannot load
+
* Sat Aug 15 2026 MeshBay Team <team@meshbay.org> - 0.3.0-1
- Transfers survive leaving a group; downloads stream to disk in every browser
- Download a folder as a zip, built in the browser (zip64, store-only)
diff --git a/packaging/rpm/meshbay-node.spec b/packaging/rpm/meshbay-node.spec
index 152cf3a..b2a4fce 100644
--- a/packaging/rpm/meshbay-node.spec
+++ b/packaging/rpm/meshbay-node.spec
@@ -1,5 +1,5 @@
Name: meshbay-node
-Version: 0.3.0
+Version: 0.4.0
Release: 1%{?dist}
Summary: MeshBay Node — local file host, streaming server, and group daemon
License: AGPLv3+
@@ -53,6 +53,9 @@ install -Dm644 packaging/systemd/meshbay-node.service \
%{_userunitdir}/meshbay-node.service
%changelog
+* Sun Aug 16 2026 MeshBay Team <team@meshbay.org> - 0.4.0-1
+- No functional change; released in step with the other packages
+
* Sat Aug 15 2026 MeshBay Team <team@meshbay.org> - 0.3.0-1
- Video streaming is paced by the client; stream_stop frees the transcode slot
- Operator can remove an empty directory and revoke a member over MNP
diff --git a/packaging/rpm/python3-meshbay-common.spec b/packaging/rpm/python3-meshbay-common.spec
index 0ecde29..cdfc984 100644
--- a/packaging/rpm/python3-meshbay-common.spec
+++ b/packaging/rpm/python3-meshbay-common.spec
@@ -1,5 +1,5 @@
Name: python3-meshbay-common
-Version: 0.3.0
+Version: 0.4.0
Release: 1%{?dist}
Summary: MeshBay shared cryptographic primitives and protocol types
License: AGPLv3+
@@ -38,6 +38,9 @@ encryption/signing, keystore AES-256-GCM, and MNP protocol types.
%{python3_sitelib}/meshbay_common-*.dist-info/
%changelog
+* Sun Aug 16 2026 MeshBay Team <team@meshbay.org> - 0.4.0-1
+- No functional change; released in step with the other packages
+
* Sat Aug 15 2026 MeshBay Team <team@meshbay.org> - 0.3.0-1
- MNP: dir_delete, member_revoke, stream_more/stream_stop; file_chunk names its file