jush
09/27/2021, 12:52 PMpackages.json
generated has neither dependencies
nor bundledDependencies
entries. Do we need to explicitly set those from now on?Big Chungus
09/27/2021, 12:52 PMBig Chungus
09/27/2021, 12:53 PMBig Chungus
09/27/2021, 12:53 PMjush
09/27/2021, 12:53 PMjush
09/27/2021, 12:54 PMBig Chungus
09/27/2021, 12:55 PMjush
09/27/2021, 12:55 PMBig Chungus
09/27/2021, 12:56 PMjush
09/27/2021, 12:56 PMjush
09/27/2021, 12:56 PMBig Chungus
09/27/2021, 12:57 PMBig Chungus
09/27/2021, 1:03 PMjush
09/27/2021, 1:38 PMkotlin {
...
js(LEGACY) {
browser()
}
...
}
npmPublishing {
repositories {
repository("npmjs") {
registry = uri("<https://registry.npmjs.org>")
authToken = "asdhkjsdfjvhnsdrishdl"
}
}
}
and it turns out that with above there is no assembleJsNpmPublication
at all.
Then, if I add binaries.executable()
to the js lambda:
js(LEGACY) {
browser()
binaries.executable()
}
I get the assembleJsNpmPublication
gradle task but there are no dependencies in the generated packages.json
Not sure if this information is useful... Meanwhile I'll look into use the IR backendjush
10/05/2021, 11:38 AMpackage.json
inside <root_folder>/build/js/package.json
contains a single entry in workspaces
with value packages/<project_name-module_name>
• Then in the <root_folder>/build/js/packages/<project_name-module_name>/package.json
there's indeed all the required npm dependencies
using the file:/...
format.
In Kotlin 1.5.30+ the behaviour is:
• The package.json
inside <root_folder>/build/js/package.json
contains multiple entries each pointing to the dependencies
"workspaces": [
"packages/<project_name-module_name>",
"packages_imported/kotlinx-serialization-kotlinx-serialization-json-js-legacy/1.3.0",
"packages_imported/kotlinx-serialization-kotlinx-serialization-core-js-legacy/1.3.0",
"packages_imported/kotlin/1.5.31",
"packages_imported/Kotlin-DateTime-library-kotlinx-datetime-js-legacy/0.2.1",
"packages_imported/kotlin-test-js-runner/1.5.31",
"packages_imported/kotlin-test/1.5.31"
],
• Then in the <root_folder>/build/js/packages/<project_name-module_name>/package.json
there's no dependencies at all.
So I guess that the plugin code https://github.com/mpetuska/npm-publish/blob/master/src/main/kotlin/task/NpmPackageAssembleTask.kt#L107 needs to be adapted to this new 1.5.30+ behaviour.Big Chungus
10/05/2021, 11:40 AMjush
10/05/2021, 11:42 AMBig Chungus
10/05/2021, 11:44 AMBig Chungus
10/05/2021, 11:45 AMjush
10/05/2021, 11:45 AMVersions
section of the last release https://github.com/mpetuska/npm-publish/releases/tag/v2.1.1)Big Chungus
10/05/2021, 11:46 AMBig Chungus
10/05/2021, 11:47 AMjush
10/05/2021, 11:48 AMjush
10/05/2021, 11:48 AMjush
10/05/2021, 11:48 AMjush
10/05/2021, 11:53 AMBig Chungus
10/05/2021, 11:55 AMjush
10/05/2021, 11:57 AMBig Chungus
10/05/2021, 11:58 AMjush
10/05/2021, 12:59 PMbuild/js/package.json
now contains all the workspaces
for all the modules. Even though not all dependencies are used in all the modules 😕Big Chungus
10/05/2021, 1:01 PMjush
10/05/2021, 1:03 PMFile.copyKotlinDependencies()
I don't see how to get the dependencies declared by the current module to be able to discern which one of the workspaces
I should copy to the node_modules
folder...Big Chungus
10/05/2021, 1:05 PMjush
10/05/2021, 1:10 PM{
"name": "sim_shared",
"version": "unspecified",
"private": true,
"workspaces": [
"packages/sim_shared-sim_formatting",
"packages/sim_shared-sim_shared",
"packages_imported/kotlin/1.5.31",
"packages_imported/kotlin-test-js-runner/1.5.31",
"packages_imported/kotlin-test/1.5.31",
"packages_imported/kotlinx-serialization-kotlinx-serialization-json-js-legacy/1.3.0",
"packages_imported/kotlinx-serialization-kotlinx-serialization-core-js-legacy/1.3.0",
"packages_imported/Kotlin-DateTime-library-kotlinx-datetime-js-legacy/0.2.1"
],
"resolutions": {},
"devDependencies": {},
"dependencies": {},
"peerDependencies": {},
"optionalDependencies": {},
"bundledDependencies": []
}
and then I have the first kotlin js module `build/js/packages/sim_shared-sim_formatting/package.json`:
{
"name": "sim_shared-sim_formatting",
"version": "0.7.0-SNAPSHOT",
"main": "kotlin/sim_shared-sim_formatting.js",
"devDependencies": {},
"dependencies": {},
"peerDependencies": {},
"optionalDependencies": {},
"bundledDependencies": []
}
and finally a second kotlin js module `build/js/packages/sim_shared-sim_shared/package.json`:
{
"name": "sim_shared-sim_shared",
"version": "0.7.0-SNAPSHOT",
"main": "kotlin/sim_shared-sim_shared.js",
"devDependencies": {},
"dependencies": {},
"peerDependencies": {},
"optionalDependencies": {},
"bundledDependencies": []
}
when I call ./gradlew clean assembleJsNpmPublication
I don't see how to know which workspace belongs to which module. The top-level package.json already has all of the workspaces:
./gradlew clean assembleJsNpmPublication
> Task :sim_formatting:assembleJsNpmPublication
copyKotlinDependencies: workspaces: [packages/sim_shared-sim_formatting, packages/sim_shared-sim_shared, packages_imported/kotlin/1.5.31, packages_imported/kotlin-test-js-runner/1.5.31, packages_imported/kotlin-test/1.5.31, packages_imported/kotlinx-serialization-kotlinx-serialization-json-js-legacy/1.3.0, packages_imported/kotlinx-serialization-kotlinx-serialization-core-js-legacy/1.3.0, packages_imported/Kotlin-DateTime-library-kotlinx-datetime-js-legacy/0.2.1]
> Task :sim_shared:assembleJsNpmPublication
copyKotlinDependencies: workspaces: [packages/sim_shared-sim_formatting, packages/sim_shared-sim_shared, packages_imported/kotlin/1.5.31, packages_imported/kotlin-test-js-runner/1.5.31, packages_imported/kotlin-test/1.5.31, packages_imported/kotlinx-serialization-kotlinx-serialization-json-js-legacy/1.3.0, packages_imported/kotlinx-serialization-kotlinx-serialization-core-js-legacy/1.3.0, packages_imported/Kotlin-DateTime-library-kotlinx-datetime-js-legacy/0.2.1]
jush
10/05/2021, 1:11 PMsim_formatting
should only have dependency to Kotlin 1.5.31 (no dependency to kotlinx serialization)Big Chungus
10/05/2021, 1:12 PMBig Chungus
10/05/2021, 1:12 PMjush
10/05/2021, 1:13 PMjush
10/06/2021, 10:20 AMjush
10/07/2021, 12:01 PMBig Chungus
10/07/2021, 12:07 PMjush
10/14/2021, 8:58 AMBig Chungus
10/14/2021, 8:59 AMjush
10/14/2021, 9:01 AMBig Chungus
10/14/2021, 9:03 AMjush
10/14/2021, 9:34 AMBig Chungus
10/14/2021, 9:39 AMjush
10/15/2021, 7:16 AMBig Chungus
10/15/2021, 7:47 AMBig Chungus
10/15/2021, 7:47 AM