eclipse-zenoh / zenoh-java Goto Github PK
View Code? Open in Web Editor NEWJava APIs for zenoh
Home Page: http://zenoh.io
License: Other
Java APIs for zenoh
Home Page: http://zenoh.io
License: Other
Allow users to specify command line arguments for the examples.
So far the experimental versions of the Kotlin/Java bindings have missed the pull subscriber feature. For the sake of API alignment, the pull subscriber for these bindings need to be implemented.
zenoh-java uses zenoh-c as a native library, which now supports various platforms thanks to eclipse-zenoh/zenohc#3.
zenoh-java must benefit this and embed in its jars the zenoh-c native libraries for those platforms:
A Github workflow should be added for automated build and packaging of the jars.
Zenoh now supports user attachments since eclipse-zenoh/zenoh#613. All Zenoh bindings now need to provide support for this new feature.
Describe the bug
A dropdown menu should allow us to select older versions of the documentation. The Dokka framework allows to do so.
To reproduce
See https://eclipse-zenoh.github.io/zenoh-java/index.html and check that you cant select 0.10.0-rc version documentation.
System info
N/A
N/A
N/A
We need a build on https://ci.eclipse.org/zenoh/ for zenoh-java releases that will publish artifacts to Maven Central.
Considering the discussion in https://bugs.eclipse.org/bugs/show_bug.cgi?id=562623, the building of the signed jars and their publications to OSSRH must be made on one of the Eclipse JIPP host.
However, those hosts are not able to run the Docker images that are required to cross-build the native zenoh-c libraries. Only our dedicated Jenkins host can do this.
Therefore, the only solution for this Jenkins build is to:
For convenience the put operation should allow use directly some python primitive types commonly used, such as string, int, float and bytes and automatically create the right Value type.
This would allow for a put operation to look like:
w.put('/sensor/temp', 25.3)
As opposed to having to do:
w.put('/some/path', Value("my value", Encoding.STRING));
...
In light of the forthcoming Zenoh 1.0.0 release, the project should make sure the naming convention is properly followed for packages.
Currently zenoh-java fails to sync with eclipse-zenoh/zenoh.
Similarly to eclipse-zenoh/zenoh-python#8 :
All examples should use consistently the Picocli library to provide a consistent help as well as to parse command line arguments.
Changes done on the codebase for both Kotlin and Java bindings are not published until the next release is performed. This causes that fixes or new features that are already in the codebase and ready to be used are not available for users, unless they install the repository and do the whole setup consisting on publishing locally the library.
Modifying the github workflows to automatically publish snapshot packages from the main branch, providing the users packages with the last version changes on the codebase.
Github packages provides support for such kind of packages, overriding old snapshot versions.
The README.md needs to be updated for:
Following this PR: eclipse-zenoh/zenoh#736
the Publisher::write(SampleKind, Value) API has been removed, but it is exposed in zenoh-java/kotlin here: https://eclipse-zenoh.github.io/zenoh-kotlin/zenoh-java/io.zenoh.publication/-publisher/write.html?query=fun%20write(kind:%20SampleKind,%20value:%20Value):%20Resolvable
It should also be removed there because it's not part of the core API
I been trying to build
make -v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i386-pc-mingw32
mvn -h
Apache Maven 3.8.7 (b89d5959fcde851dcb1c8946a785a163f14e1e29)
Maven home: C:\Users\RinelBhownath\apache-maven-3.8.7\apache-maven-3.8.7-bin\apache-maven-3.8.7
Java version: 17.0.7, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-17
Default locale: en_ZA, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
D:\work\zenoh\java\zenoh\zenoh-java>mvn clean install
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Zenoh parent-pom [pom]
[INFO] Zenoh [jar]
[INFO] Zenoh examples [jar]
[INFO] Zenoh-net examples [jar]
[INFO] Zenoh main pom [pom]
[INFO] Zenoh examples pom [pom]
[INFO]
[INFO] --------------------< org.eclipse.zenoh:parent-pom >--------------------
[INFO] Building Zenoh parent-pom 0.4.2-M1 [1/6]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ parent-pom ---
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ parent-pom ---
[INFO] Installing D:\work\zenoh\java\zenoh\zenoh-java\parent-pom\pom.xml to C:\Users\RinelBhownath\.m2\repository\org\eclipse\zenoh\parent-pom\0.4.2-M1\parent-pom-0.4.2-M1.pom
[INFO]
[INFO] ----------------------< org.eclipse.zenoh:zenoh >-----------------------
[INFO] Building Zenoh 0.4.2-M1 [2/6]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ zenoh ---
[INFO]
[INFO] --- exec-maven-plugin:1.6.0:exec (make-natives) @ zenoh ---
process_begin: CreateProcess(NULL, uname -s, ...) failed.
process_begin: CreateProcess(NULL, uname -m, ...) failed.
process_begin: CreateProcess(NULL, rm -fr target/zenoh-c, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [target/zenoh-c/Makefile] Error 2
[ERROR] Command execution failed.
org.apache.commons.exec.ExecuteException: Process exited with an error: 2 (Exit value: 2)
at org.apache.commons.exec.DefaultExecutor.executeInternal (DefaultExecutor.java:404)
at org.apache.commons.exec.DefaultExecutor.execute (DefaultExecutor.java:166)
at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:804)
at org.codehaus.mojo.exec.ExecMojo.executeCommandLine (ExecMojo.java:751)
at org.codehaus.mojo.exec.ExecMojo.execute (ExecMojo.java:313)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:298)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for Zenoh main pom 0.4.2-M1:
[INFO]
[INFO] Zenoh parent-pom ................................... SUCCESS [ 0.207 s]
[INFO] Zenoh .............................................. FAILURE [ 0.539 s]
[INFO] Zenoh examples ..................................... SKIPPED
[INFO] Zenoh-net examples ................................. SKIPPED
[INFO] Zenoh main pom ..................................... SKIPPED
[INFO] Zenoh examples pom ................................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.858 s
[INFO] Finished at: 2023-10-10T10:21:58+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.6.0:exec (make-natives) on project zenoh: Command execution failed.: Process exited with an error: 2 (Exit value: 2) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <args> -rf :zenoh
D:\work\zenoh\java\zenoh\zenoh-java>mvn -Prelease clean install
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for org.eclipse.zenoh:zenoh:jar:0.4.2-M1
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-source-plugin is missing. @ line 205, column 19
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO] Inspecting build with total of 6 modules...
[INFO] Installing Nexus Staging features:
[INFO] ... total of 4 executions of maven-deploy-plugin replaced with nexus-staging-maven-plugin
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Zenoh parent-pom [pom]
[INFO] Zenoh [jar]
[INFO] Zenoh examples [jar]
[INFO] Zenoh-net examples [jar]
[INFO] Zenoh main pom [pom]
[INFO] Zenoh examples pom [pom]
[INFO]
[INFO] --------------------< org.eclipse.zenoh:parent-pom >--------------------
[INFO] Building Zenoh parent-pom 0.4.2-M1 [1/6]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ parent-pom ---
[INFO]
[INFO] --- maven-gpg-plugin:1.6:sign (sign-artifacts) @ parent-pom ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for Zenoh main pom 0.4.2-M1:
[INFO]
[INFO] Zenoh parent-pom ................................... FAILURE [ 0.180 s]
[INFO] Zenoh .............................................. SKIPPED
[INFO] Zenoh examples ..................................... SKIPPED
[INFO] Zenoh-net examples ................................. SKIPPED
[INFO] Zenoh main pom ..................................... SKIPPED
[INFO] Zenoh examples pom ................................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.849 s
[INFO] Finished at: 2023-10-10T14:38:41+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign (sign-artifacts) on project parent-pom: Unable to execute gpg command: Error while executing process. Cannot run program "gpg.exe": CreateProcess error=2, The system cannot find the file specified -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.