release: configure particle Maven repository
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
真实基础为 MapLibre Native Android `13.4.1`,共同 core commit 为 `18545ca10d296704b2cba675b182ff2c8da24588`,本发行只准备 Android OpenGL。正式规则为 `<上游版本>-particle.<修订号>`;首发为 `13.4.1-particle.1`。正式 npm 包为 `@navsea/maplibre-particle-rn@13.4.1-particle.1`,正式 Maven 坐标为 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1`。
|
||||
|
||||
`step061` 是已经完成验证的开发阶段制品编号,不是正式发行版本。release manifest 是 `release/maplibre-particle/release-manifest.json`;registry URL 暂不决定,manifest 中 npm/Maven server 字段均为 null。
|
||||
`step061` 是已经完成验证的开发阶段制品编号,不是正式发行版本。release manifest 是 `release/maplibre-particle/release-manifest.json`。Android Maven 正式仓库已确定为 `https://pbf.jpcn.ccwu.cc/maven`;npm registry 仍暂不决定。
|
||||
|
||||
## Consumer 依赖关系
|
||||
|
||||
@@ -24,4 +24,4 @@ WeatherColorLayer 与 RasterParticleLayer 是 Core-only style layer,不是 Rea
|
||||
|
||||
## 发布与升级边界
|
||||
|
||||
Consumer 不编译 MapLibre Native 源码,也不使用 workspace、relative source path、CMake path 或软链接。registry 未决定时,`.tgz` 与 Maven Local/临时 staging 只用于预发布验证,不是最终部署决定。未来升级到新的上游版本时,按 `13.5.0-particle.1` 等新发行线重新完成 Native、tarball Consumer 和 APK 验证;通过后才单独创建 release tag。
|
||||
Consumer 不编译 MapLibre Native 源码,也不使用 workspace、relative source path、CMake path 或软链接。Android Native 统一从 `https://pbf.jpcn.ccwu.cc/maven` 解析;npm registry 未决定时,`.tgz` 只用于正式 npm 包的预发布 Consumer 验证。未来升级到新的上游版本时,按 `13.5.0-particle.1` 等新发行线重新完成 Native、tarball Consumer 和 APK 验证;通过后才单独创建 release tag。
|
||||
|
||||
@@ -11,4 +11,4 @@ npx expo prebuild --platform android --clean
|
||||
npx expo run:android
|
||||
```
|
||||
|
||||
该 `.tgz` 是发布物而非源码路径。用户还需将 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1` 手工发布至 Maven Local 或临时 staging;package plugin 会将 MLRN 的唯一 OpenGL SDK 请求替换为该正式 artifact。Codex 不执行上述 Android 命令。
|
||||
该 `.tgz` 是发布物而非源码路径。Android 正式 artifact 已发布到 `https://pbf.jpcn.ccwu.cc/maven`;package plugin 会自动加入该仓库,并将 MLRN 的唯一 OpenGL SDK 请求替换为 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1`。
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
`13.4.1-particle.1` 是 NavSea 维护的 MapLibre Particle React Native 入口。Consumer 只直接安装本包;它以唯一 `@maplibre/maplibre-react-native` native module 提供 `Map`、`Camera` 等 MapLibre RN API,并以 `WeatherRuntime` 提供既有 HostField/Timeline 低频控制。
|
||||
|
||||
Android 使用 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1`。Expo Consumer 应在 app config 加入 `@navsea/maplibre-particle-rn/app.plugin`;plugin 将 MLRN 对 OpenGL SDK 的请求替换为该唯一 NavSea artifact,避免官方与 Particle AAR 同时进入 APK。最终 registry 未决定时,可先安装本包的 `.tgz`,并由用户将正式 AAR 放入 Maven Local 或临时 staging。
|
||||
Android 使用 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1`。Expo Consumer 应在 app config 加入 `@navsea/maplibre-particle-rn/app.plugin`;plugin 将 MLRN 对 OpenGL SDK 的请求替换为该唯一 NavSea artifact,避免官方与 Particle AAR 同时进入 APK。正式 Android Maven 仓库为 `https://pbf.jpcn.ccwu.cc/maven`;plugin 会自动加入该仓库。npm registry 尚未决定时,可先安装本包的 `.tgz` 做发布包验证。
|
||||
|
||||
WeatherColor 和 RasterParticle 是 Core-only style layer,不是 React 组件;请用 `createParticleWeatherStyle()` 或等价 style JSON 声明。binary submit 始终为 `metadataJson + local file:// payload`,通过 `WeatherRuntime.submitWindField()` 进入既有 Native/Core 链路;本包不创建第二套 Timeline 或 field ingress。
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ const marker = "// @navsea/maplibre-particle-rn Android OpenGL release";
|
||||
module.exports = function withNavSeaMapLibreParticle(config) {
|
||||
return withProjectBuildGradle(config, (project) => {
|
||||
if (project.modResults.contents.includes(marker)) return project;
|
||||
project.modResults.contents += `\n${marker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.mavenLocal()\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
||||
project.modResults.contents += `\n${marker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.maven { repository -> repository.url = p.uri("https://pbf.jpcn.ccwu.cc/maven") }\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.1")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
||||
return project;
|
||||
});
|
||||
};
|
||||
|
||||
@@ -5,7 +5,11 @@
|
||||
"upstreamCoreCommit": "18545ca10d296704b2cba675b182ff2c8da24588",
|
||||
"extensionLine": "particle",
|
||||
"extensionRevision": 1,
|
||||
"platform": { "android": { "renderer": "opengl" } },
|
||||
"platform": {
|
||||
"android": {
|
||||
"renderer": "opengl"
|
||||
}
|
||||
},
|
||||
"reactNativePackage": {
|
||||
"name": "@navsea/maplibre-particle-rn",
|
||||
"version": "13.4.1-particle.1",
|
||||
@@ -22,6 +26,9 @@
|
||||
"encoding": "float32-le",
|
||||
"layout": "interleaved-uv"
|
||||
},
|
||||
"publication": { "npmRegistry": null, "mavenRepository": null },
|
||||
"publication": {
|
||||
"npmRegistry": null,
|
||||
"mavenRepository": "https://pbf.jpcn.ccwu.cc/maven"
|
||||
},
|
||||
"releaseTag": null
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user