Giter Club home page Giter Club logo

ice-demos's People

Contributors

bentoi avatar bernardnormier avatar dependabot[bot] avatar dgboone avatar externl avatar insertcreativityhere avatar mgeorge88 avatar newhook avatar pepone avatar reecehumphreys avatar spruiell avatar zerocbot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ice-demos's Issues

Cocoa and iOS library direct login fields

When logging in "direct", you still have to supply a username and password even though they are never used.

It would be nice to remove or hide these fields when logging in direct.

ICE-8752

Improve iOS/macOS Xcode demos to use storyboards

The demos still use XIB files for the interface, we should move to storyboards. This would for instance fix the +[CATransaction synchronize] called within transaction error that shows up on startup (caused by missing launch screen).

Building the qt client in Chat demo can't pass

qt version 5.6.1

ice version 3.6.3
demos link
problems:

  1. make for this project directory can't work before i manually run /usr/bin/slice2cpp -I. -I/usr/share/slice Chat.ice ,ChatSession.ice:10: error: Can't open include file "Ice/BuiltinSequences.ice" and /usr/bin/slice2cpp -I. -I/usr/share/slice PollingChat.ice
  2. and thenqmake goes well
  3. then make comes out some errors like "ChatSession.cpp:394:对‘IceInternal::Cpp11FnCallbackNC::Cpp11FnCallbackNC(std::function<void (IceUtil::Exception const&)> const&, std::function<void (bool)> const&)’未定义的引用(Undefined reference)"

did I miss some packages?

btw, I pass the cmdLineClient building and goes well. Thanks

Add basic Glacier2 demo

Benoit wrote in ICE-5608:

We should eventually consider to have simple Glacier2 demos as well to show the boilerplate code for creating a session without the help of any helper.

Java Chat demo fails to build

It occurs with multiple platforms:

* What went wrong:
Execution failed for task ':demoChat:proguard'.
> java.io.IOException: Can't write [C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x86-default\java\Chat\Chat.jar] (Can't read [C:\Users\vagrant\.gradle\caches\modules-2\files-2.1\com.zeroc\ice\3.7.2\4ef984914a5e50c4b19e7b56d1b51815b5aefaea\ice-3.7.2.jar(;;;;;;;!META-INF/**)] (Duplicate jar entry [module-info.class]))
* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 33s

Chat demo proguard failure

Execution failed for task ':demoChat:proguard'.
> java.io.IOException: Can't write [/home/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice/builds/ice-demos-g++-x86_64-default/java/Chat/Chat.jar] (Can't read [/home/vagrant/.gradle/caches/modules-2/files-2.1/com.zeroc/ice/3.7.2/c5261b9a1be0b06927f9bb87a3edf0a33307c29d/ice-3.7.2.jar(;;;;;;;!META-INF/**)] (Duplicate jar entry [module-info.class]))

Do not use Glacier2::Application in demos

There is a few demos that use Glacier2::Application class, that should not be used as it is now deprecated like Ice::Application

For command line demos we should use CommunicatorHolder and create the Glacier2 session directly using Glacier2 API.

IceBox/hello DLL on Windows

With the 3.6 branch, the HelloService.dll is not created in the correct directory when building the IceBox/hello demo with VS2010 on Windows.

It's currently created in msbuild\server instead of the main directory.

JavaScript demo build failure

[05:38:58] 'demo_Ice_throughput-browser:babel' errored after 37 s
[05:38:58] ?[31mSyntaxError?[39m in plugin "?[36mgulp-babel?[39m"
Message:
    C:/Users/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice-3.7/builds/ice-demos-VC140-x64-default/js/Ice/throughput/browser/Client.min.js: Unterminated string constant (1:270321)
[05:38:59] Finished 'demo_Ice_hello:min' after 39 s

Seems like a problem with the minimified version of the script

Stack trace when running hello/android demo

on the 3.7.2-rc branch, I am getting:

2/12 16:21:25: Launching hello
$ adb shell am start -n "com.zeroc.hello/com.zeroc.hello.HelloWorld" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Client not ready yet..Waiting for process to come online
Connected to process 2837 on device google-iot_rpi3-Android.local:5555
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
I/InstantRun: starting instant run server: is main process
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$OnUnhandledKeyEventListenerWrapper>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener;
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
        at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
        at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
        at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
I/zygote:     at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
        at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
        at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.View$OnUnhandledKeyEventListener" on path: DexPathList[[zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/base.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_dependencies_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_resources_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_0_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_1_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_2_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_3_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_4_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_5_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_6_apk.apk", zip file "
        at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:125)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
I/zygote:     at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
I/zygote:     at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
I/zygote:     at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
I/zygote:     at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
        at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
        at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$OnUnhandledKeyEventListenerWrapper>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener;
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
I/zygote:     at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
        at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
        at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
        at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
        at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
        at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
        at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.View$OnUnhandledKeyEventListener" on path: DexPathList[[zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/base.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_dependencies_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_resources_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_0_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_1_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_2_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_3_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_4_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_5_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_6_apk.apk", zip file "
        at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:125)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
        at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
        at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
        at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
        at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
        at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
        at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$OnUnhandledKeyEventListenerWrapper>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener;
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
        at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
I/zygote:     at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
        at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
        at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
I/zygote:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
I/zygote:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
I/zygote:     at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.View$OnUnhandledKeyEventListener" on path: DexPathList[[zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/base.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_dependencies_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_resources_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_0_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_1_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_2_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_3_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_4_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_5_apk.apk", zip file "/data/app/com.zeroc.hello-c7Utc5Z4KgXjSO6TtswQTg==/split_lib_slice_6_apk.apk", zip file "
        at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:125)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
        at void androidx.core.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
        at void androidx.appcompat.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
        at java.lang.Object java.lang.reflect.Constructor.newInstance0(java.lang.Object[]) (Constructor.java:-2)
        at java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[]) (Constructor.java:334)
        at android.view.View android.view.LayoutInflater.createView(java.lang.String, java.lang.String, android.util.AttributeSet) (LayoutInflater.java:647)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:790)
        at android.view.View android.view.LayoutInflater.createViewFromTag(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet) (LayoutInflater.java:730)
        at void android.view.LayoutInflater.rInflate(org.xmlpull.v1.XmlPullParser, android.view.View, android.content.Context, android.util.AttributeSet, boolean) (LayoutInflater.java:863)
        at void android.view.LayoutInflater.rInflateChildren(org.xmlpull.v1.XmlPullParser, android.view.View, android.util.AttributeSet, boolean) (LayoutInflater.java:824)
        at android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean) (LayoutInflater.java:515)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup, boolean) (LayoutInflater.java:423)
        at android.view.View android.view.LayoutInflater.inflate(int, android.view.ViewGroup) (LayoutInflater.java:374)
        at android.view.ViewGroup androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor() (AppCompatDelegateImpl.java:607)
        at void androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor() (AppCompatDelegateImpl.java:518)
        at void androidx.appcompat.app.AppCompatDelegateImpl.setContentView(int) (AppCompatDelegateImpl.java:466)
        at void androidx.appcompat.app.AppCompatActivity.setContentView(int) (AppCompatActivity.java:140)
        at void com.zeroc.hello.HelloWorld.onCreate(android.os.Bundle) (HelloWorld.java:103)
        at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7010)
        at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7001)
        at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1214)
        at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2731)
        at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:2856)
        at void android.app.ActivityThread.-wrap11(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent, java.lang.String) (ActivityThread.java:-1)
        at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1589)
        at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
        at void android.os.Looper.loop() (Looper.java:164)
        at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6494)
        at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
        at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:438)
        at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:807)
I/zygote: Background concurrent copying GC freed 21046(3MB) AllocSpace objects, 1(20KB) LOS objects, 49% free, 1930KB/3MB, paused 9.524ms total 86.657ms
I/zygote: Do partial code cache collection, code=30KB, data=28KB
I/zygote: After code cache collection, code=30KB, data=28KB
    Increasing code cache capacity to 128KB
I/zygote: Do partial code cache collection, code=39KB, data=56KB
I/zygote: After code cache collection, code=39KB, data=56KB
    Increasing code cache capacity to 256KB
I/zygote: Compiler allocated 4MB to compile void android.widget.TextView.<init>(android.content.Context, android.util.AttributeSet, int, int)
W/System.err: -- 12/12/18 16:21:28:152 Network: attempting to bind to udp socket
       multicast address = 239.255.0.1:4061
W/System.err: -- 12/12/18 16:21:28:213 Network: starting to receive udp messages
       multicast address = 239.255.0.1:4061
       local interfaces = 192.168.90.41, 192.168.101.148, 127.0.0.1
W/System.err: -- 12/12/18 16:21:28:217 Network: published endpoints for object adapter `IceDiscovery.Multicast':
       udp -h 239.255.0.1 -p 4061
W/System.err: -- 12/12/18 16:21:28:230 Network: attempting to bind to udp socket
       local address = :::0
W/System.err: -- 12/12/18 16:21:28:244 Network: starting to receive udp messages
       local address = :::42357
       local interfaces = 192.168.90.41, 192.168.101.148, ::1, 127.0.0.1
W/System.err: -- 12/12/18 16:21:28:253 Network: published endpoints for object adapter `IceDiscovery.Reply':
       udp -h 192.168.90.41 -p 42357:udp -h 192.168.101.148 -p 42357
W/System.err: -- 12/12/18 16:21:28:257 Network: created adapter `IceDiscovery.Locator' without endpoints
D/vndksupport: Loading /vendor/lib/hw/[email protected] from current namespace instead of sphal namespace.
D/OpenGLRenderer: HWUI GL Pipeline
I/zygote: Do full code cache collection, code=126KB, data=95KB
I/zygote: After code cache collection, code=115KB, data=71KB

Maybe related: facebook/flipper#146

Warnings building typescript demos with macOS mojave

*** [11/15] building typescript demos (clang/x64/default)... ../../nan/nan_implementation_12_inl.h:356:37: error: too few arguments to function call, expected 2, have 1
../../nan/nan_implementation_12_inl.h:356:58: error: expected '(' for function-style cast or type construction
../../nan/nan_implementation_12_inl.h:356:60: error: expected expression
../../nan/nan_object_wrap.h:24:25: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
../../nan/nan_object_wrap.h:127:26: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
../fsevents.cc:43:32: error: no template named 'Handle' in namespace 'v8'
../fsevents.cc:76:16: error: variable has incomplete type 'void'
../fsevents.cc:76:31: error: no member named 'Handle' in namespace 'v8'

Ice DLLs and PDBs not removed during clean

When you clean the "C# NET Core demos" solution in VisualStuio, the various Ice DLLs and PDBs copied next to each demos don't get cleaned. This is true for 3.7 and 3.6

Seems related to changing the project structure and have the output directory in the parent directory of the project directory. Created a test case and reported the issue to MSBuild project see dotnet/msbuild#3189

uwp bidir client crash in "Stop Client"

If you press "Stop Client" on a UWP bidir client in the process of connecting, the application crashes.

It's possible the issue is "Stop Client" should not be clickable at that time.

Incorrect instructions for running UWP client

A UWP client started from the Start menu can no longer connect to a local C++/Java/C#/Python server. This still works when the client is started from Visual Studio.

We need to update the bidir and hello READMEs to make this clear.

Xcode 10 and Additional SDKs

With Xcode 9's default build system - known as the Legacy Build system in Xcode 10 - the usr/include and usr/lib of a SDK listed in Additional SDKs is automatically added to the header search path resp. library search path during a build. This no longer works with Xcode's new build system, which is now the default in Xcode 10.

All ice-demos Xcode projects rely on this behavior and:

  • build fine with Xcode 9 and Xcode 10's legacy build system
  • fail to build with Xcode 10 with the new build system

We need to update the demo projects to not rely on this behavior, namely:

  • set Header Search Paths, Library Search Paths and Preprocessor Macros directly in the project file
  • remove the Additional SDKs entry for ice

Android hello demo crash

Let the demo open on my phone and saw that crash, demo wasn't doing anything.

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.zeroc.hello, PID: 15328
    java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
        at android.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1877)
        at android.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1900)
        at android.app.BackStackRecord.commitInternal(BackStackRecord.java:688)
        at android.app.BackStackRecord.commit(BackStackRecord.java:646)
        at android.app.DialogFragment.show(DialogFragment.java:235)
        at com.zeroc.hello.HelloWorld$8.handleMessage(HelloWorld.java:282)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6692)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

Move Java client and server classes to separate packages

The Java demos currently show Client and Server classes in the same directory, in the default package. Because of that, we create client.jar and server.jar that contain the same classes: they are identical except for the MANIFEST file.

We should:

  • move Client and client-related classes to its own package
  • move Server and server-related classes to its own package
  • for demos with other components such as plugins and services, move each component to its own package
  • create a separate jar file for each component (client.jar, server.jar, service.jar, plugin.jar...)

Missing Header Files in VisualStudio projects

The VisualStudio projects have a "Header Files" filters that show the .h, but too often the .h of demo projects (primarily servers) are not listed.

They should be added to the Header Files filter with Add Existing Item.

Python Ice/metrics Admin port number

Affects 3.6 and 3.7

According to the Ice/metrics demo, various Ice clients and servers use port 1004 as their Admin port number for metrics. However, in practice, the config files have often a different port number. For Ice 3.6:

csharp\Ice\hello\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
csharp\Ice\hello\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
ruby\Ice\hello\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
java\Ice\hello\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
java\Ice\hello\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002

csharp\Ice\latency\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
ruby\Ice\latency\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
java\Ice\latency\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002

csharp\Ice\throughput\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
ruby\Ice\throughput\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
java\Ice\throughput\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002

# referenced as "Glacier2/chat" in the Ice/metrics README.md
csharp\Glacier2\simpleChat\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
cpp\Glacier2\simpleChat\config.server:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
java\Glacier2\simpleChat\config.client:#Ice.Admin.Endpoints=tcp -h localhost -p 10003

csharp\IceStorm\clock\config.pub:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
csharp\IceStorm\clock\config.sub:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
cpp\IceStorm\clock\config.pub:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
cpp\IceStorm\clock\config.sub:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
java\IceStorm\clock\config.pub:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
java\IceStorm\clock\config.sub:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
python\IceStorm\clock\config.pub:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
python\IceStorm\clock\config.sub:#Ice.Admin.Endpoints=tcp -h localhost -p 10002
visualBasic\IceStorm\clock\config.pub:#Ice.Admin.Endpoints=tcp -h localhost -p 10003
visualBasic\IceStorm\clock\config.sub:#Ice.Admin.Endpoints=tcp -h localhost -p 10002

Library demo connection lost

The library demo is losing connection on both Android demo and Objective-c command line demo.

Here is error from Objective-C demo:

2019-08-07 15:58:26.048 client[39212:387686] warning: SessionRefreshThread: Outgoing.cpp:493: Ice::OperationNotExistException:
operation does not exist:
identity: `99697b81-9f93-488b-9402-f97015762549'
facet:
operation: refresh

Building PHP demos on Windows should not require Ice Builder extension

Affects: Ice demos as of 3.7.2

The build system for the PHP demos on Windows currently requires the Ice Builder VS extension, even though the build instructions show only MSBuild.

We should remove this dependency. Note that C++ demos no longer need the Ice Builder VS extension. The "build" for PHP is compiling the Slice files with slice2php.

Xamarin hello demo build failure

Severity    Code    Description    Project    File    Line    Suppression State
Warning    NU1603    Microsoft.NETCore.UniversalWindowsPlatform 6.2.0-preview1-26926-04 depends on Microsoft.Net.Native.Compiler (>= 2.2.0-rel-26924-00) but Microsoft.Net.Native.Compiler 2.2.0-rel-26924-00 was not found. An approximate best match of Microsoft.Net.Native.Compiler 2.2.0-rel-26924-01 was resolved.    hello.UWP    C:\Users\bernard\builds\ice-demos\xamarin\Ice\hello\hello.UWP\hello.UWP.csproj    1   

I think the failure is related to the use of a preview package, and those not being enabled by default, we should go back to the stable version.

Gradle cannot find 'iceBuilderClassPath' for Ice 3.6.5

Tried to build the Android demos on 3.6.5 and am getting a build error.
Attempted with fresh install of Android Studio on Windows 10.

Could not get unknown property 'iceBuilderClassPath' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

JS / typescript build failures

On ice-dist-windows-windows_81_vs2015_x64-test-3.7 build #532

[07:30:25] 'demo_Ice_bidir:minimize' errored after 35 ms
[07:30:25] Error: File not found with singular glob: C:/Users/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice-3.7/builds/ice-demos-VC140-x64-default/js/lib/Ice.min.js (if this was purposeful, use `allowEmpty` option)
    at Glob.<anonymous> (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob-stream\readable.js:84:17)
    at Object.onceWrapper (events.js:273:13)
    at Glob.emit (events.js:182:13)
    at Glob.EventEmitter.emit (domain.js:442:20)
    at Glob._finish (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:197:8)
    at done (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:182:14)
    at Glob._processSimple2 (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:688:12)
    at C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:676:10
    at Glob._stat2 (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:772:12)
    at lstatcb_ (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:764:12)
[07:30:25] 'demo_Ice_bidir:build' errored after 697 ms
[07:30:25] 'build' errored after 3.19 s
[07:30:25] The following tasks did not complete: demo_Chat:build, demo_Glacier2_simpleChat:build, demo_Ice_hello:build, demo_Ice_latency:build, demo_Ice_minimal:build, demo_Ice_throughput:build, 

On ice-dist-ubuntu-bionic64-test-3.7 build #532

[06:13:27] Starting 'demo_Manual_simpleFilesystem:bundle'...
[06:13:27] 'demo_Manual_simpleFilesystem:bundle' errored after 2.42 ms
[06:13:27] Error: Could not resolve entry (Manual/simpleFilesystem/Client.js)
    at error (/home/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice-3.7/builds/ice-demos-g++-amd64-default/typescript/browser/node_modules/rollup/dist/rollup.js:3460:30)
    at /home/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice-3.7/builds/ice-demos-g++-amd64-default/typescript/browser/node_modules/rollup/dist/rollup.js:21475:17
    at process._tickCallback (internal/process/next_tick.js:68:7)
[06:13:27] 'demo_Manual_simpleFilesystem:build' errored after 30 ms
[06:13:27] 'build' errored after 18 s
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] build: `gulp build`
npm ERR! Exit status 1

On ice-dist-windows-windows_81_vs2015_x64-test-3.7 build #529

[20:50:32] 'demo_Manual_simpleFileSystem:minimize' errored after 29 ms
[20:50:32] Error: File not found with singular glob: C:/Users/vagrant/workspace/ice-dist/3.7/dist-utils/build/ice-3.7/builds/ice-demos-VC140-x64-default/js/lib/Ice.min.js (if this was purposeful, use `allowEmpty` option)
    at Glob.<anonymous> (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob-stream\readable.js:84:17)
    at Object.onceWrapper (events.js:273:13)
    at Glob.emit (events.js:182:13)
    at Glob.EventEmitter.emit (domain.js:442:20)
    at Glob._finish (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:197:8)
    at done (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:182:14)
    at Glob._processSimple2 (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:688:12)
    at C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:676:10
    at Glob._stat2 (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:772:12)
    at lstatcb_ (C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice-3.7\builds\ice-demos-VC140-x64-default\js\node_modules\glob\glob.js:764:12)
[20:50:32] 'demo_Manual_simpleFileSystem:build' errored after 559 ms
[20:50:32] 'build' errored after 2.45 s

Running C# demos from Visual Studio for Mac

As of 3.7.2-rc1, the working directory of the demo is not setup at all and as a result when you run a demo with a config file from Visual Studio it fails to start.

A possible solution is to set this working directory with:

--- a/csharp/Ice/bidir/msbuild/server/netstandard2.0/server.csproj
+++ b/csharp/Ice/bidir/msbuild/server/netstandard2.0/server.csproj
@@ -14,14 +14,16 @@
         <AssemblyVersion>1.0.0.0</AssemblyVersion>
         <FileVersion>1.0.0.0</FileVersion>
     </PropertyGroup>
+    <PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
+      <StartAction>Project</StartAction>
+      <StartWorkingDirectory>..\..\..</StartWorkingDirectory>
+      <ExternalConsole>true</ExternalConsole>
+    </PropertyGroup>

Better AMI demo

We could provide one (or several) more advanced AMI demo in language mappings with AMI support. For example:

  • client is sending lots of async-oneway requests to a server, such as "here is my latest temperature measurement". And prior to each new invocation, the client cancels unsent requests.

  • client is sending lots of async-twoway requests to a server, and wants to pause whenever 10 requests are unsent

ICE-7157

Crash when run on M OS (API 23)

## I tried to reduce minSdkVersion from 24 to 23 in \ice-demos\java\android\talk\build.gradle for running my M Os device, The crashing occurred after launching the application! Installing APK is OK
Here is the logcat

04-25 23:53:30.040 14547-14547/com.zeroc.talk E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.zeroc.talk, PID: 14547
java.lang.NoClassDefFoundError: com.zeroc.talk.service.TalkService$$Lambda$0
at com.zeroc.talk.service.TalkService.initialize(TalkService.java:197)
at com.zeroc.talk.TalkActivity.serviceConnected(TalkActivity.java:378)
at com.zeroc.talk.TalkActivity.access$200(TalkActivity.java:43)
at com.zeroc.talk.TalkActivity$1.onServiceConnected(TalkActivity.java:123)
at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1339)
at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1356)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

Ice/async occasional shutdown delay

The Ice/async WorkQueue needs to be check the _done flag when it wakes up from wait/timedWait, and there is a spot where it doesn't. For example in C++11:
https://github.com/zeroc-ice/ice-demos/blob/3.7/cpp11/Ice/async/WorkQueue.cpp#L45

So in the event we get a new work item and the shutdown at about the same time, we'll miss the shutdown (_done) and wait for the full delay (5s) before checking _done and returning an exception.

This bug affects all language mappings with an Ice/async demo.

android/mtalk demo crash running on simulator

The demo crash trying to enable bluetooth adapter

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.zeroc.talk, PID: 12254
    java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.bluetooth.BluetoothAdapter.isEnabled()' on a null object reference
        at com.zeroc.talk.TalkActivity.onStart(TalkActivity.java:145)
        at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1391)
        at android.app.Activity.performStart(Activity.java:7157)
        at android.app.ActivityThread.handleStartActivity(ActivityThread.java:2937)
        at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
        at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

JS failure to build slice2js on windows 10 / vs2019 with ice-demos/js

npm install --registry=https://builds.testing.zeroc.com/nexus/repository/npm.group-ice-3.7/ --python="C:\Python27\python" --msvs_version=2019 ice slice2js
> [email protected] install C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js\node_modules\slice2js
> node-gyp rebuild
C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js\node_modules\slice2js>if not defined npm_config_node_gyp (node "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Users\vagrant\AppData\Roaming\npm" rebuild )
internal/modules/cjs/loader.js:628
throw err;
^
Error: Cannot find module 'C:\Users\vagrant\AppData\Roaming\npm'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:625:15)
at Function.Module._load (internal/modules/cjs/loader.js:527:27)
at Function.Module.runMain (internal/modules/cjs/loader.js:839:10)
at internal/main/run_main_module.js:17:11 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\vagrant\AppData\Roaming\npm-cache\_logs\2019-07-12T03_49_36_479Z-debug.log

Update chat demo articles

We should update the chat demo article to include the "Server Implementation" section see also CHA-57

cnpm i error in js demo

`$ cnpm i

E:\test\ice-demos\js\node_modules_slice2js@3.7.1@slice2js>node "C:\Users\liyimin\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\node-gyp-bin\node-gyp.js" rebuild
▒ڴ˽▒▒▒▒▒▒▒▒һ▒▒▒▒▒▒һ▒▒▒▒Ŀ▒▒▒▒Ҫ▒▒▒ò▒▒▒▒▒▒ɣ▒▒▒▒▒ӡ▒/m▒▒▒▒▒ء▒
MSBUILD : error MSB3428: δ▒ܼ▒▒▒ Visual C++ ▒▒▒▒▒VCBuild.exe▒▒▒▒Ҫ▒▒▒▒▒▒▒▒⣬1) ▒▒װ .NET Framework 2.0 SDK▒▒2) ▒▒װ Microsoft Visual Studio 2005▒▒▒▒ 3) ▒▒▒▒▒▒▒▒▒▒▒▒װ▒▒▒▒▒▒▒▒λ▒ã▒▒뽫▒▒λ▒▒▒▒ӵ▒ϵͳ·▒▒▒С▒ [E:\test\ice-demos\js\node_modules_slice2js@3.7.1@slice2js\build\binding.sln]
MSBUILD : error MSB3428: δ▒ܼ▒▒▒ Visual C++ ▒▒▒▒▒VCBuild.exe▒▒▒▒Ҫ▒▒▒▒▒▒▒▒⣬1) ▒▒װ .NET Framework 2.0 SDK▒▒2) ▒▒װ Microsoft Visual Studio 2005▒▒▒▒ 3) ▒▒▒▒▒▒▒▒▒▒▒▒װ▒▒▒▒▒▒▒▒λ▒ã▒▒뽫▒▒λ▒▒▒▒ӵ▒ϵͳ·▒▒▒С▒ [E:\test\ice-demos\js\node_modules_slice2js@3.7.1@slice2js\build\binding.sln]
MSBUILD : error MSB3428: δ▒ܼ▒▒▒ Visual C++ ▒▒▒▒▒VCBuild.exe▒▒▒▒Ҫ▒▒▒▒▒▒▒▒⣬1) ▒▒װ .NET Framework 2.0 SDK▒▒2) ▒▒װ Microsoft Visual Studio 2005▒▒▒▒ 3) ▒▒▒▒▒▒▒▒▒▒▒▒װ▒▒▒▒▒▒▒▒λ▒ã▒▒뽫▒▒λ▒▒▒▒ӵ▒ϵͳ·▒▒▒С▒ [E:\test\ice-demos\js\node_modules_slice2js@3.7.1@slice2js\build\binding.sln]
gyp ERR! build error
gyp ERR! stack Error: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\liyimin\AppData\Roaming\npm\node_modules\cnpm\node_modules\node-gyp\lib\build.js:258:23)
gyp ERR! stack at emitTwo (events.js:125:13)
gyp ERR! stack at ChildProcess.emit (events.js:213:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\liyimin\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\node-gyp-bin\node-gyp.js" "rebuild"
gyp ERR! cwd E:\test\ice-demos\js\node_modules_slice2js@3.7.1@slice2js
gyp ERR! node -v v8.4.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
× Install fail! Error: Run "C:\Windows\system32\cmd.exe /d /s /c node-gyp rebuild" error, exit code 1
Error: Run "C:\Windows\system32\cmd.exe /d /s /c node-gyp rebuild" error, exit code 1
at ChildProcess.proc.on.code (C:\Users\liyimin\AppData\Roaming\npm\node_modules\cnpm\node_modules\runscript\index.js:74:21)
at emitTwo (events.js:125:13)
at ChildProcess.emit (events.js:213:7)
at maybeClose (internal/child_process.js:927:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
npminstall version: 3.2.1
npminstall args: C:\Program Files\nodejs\node.exe C:\Users\liyimin\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\bin\install.js --china --userconfig=C:\Users\liyimin.cnpmrc --disturl=https://npm.taobao.org/mirrors/node --registry=http://registry.npm.taobao.org
`

JS demos build failure with VS2019

*** [6/9] building js demos (v142/x64/default)
*** building in C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js
PATH = C:\Program Files\nodejs;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64;C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\srcsrv;C:\tools\selenium;C:\Python37;C:\Program Files\iis express\PHP\v7.2;C:\Python37\Scripts\;C:\Python37\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\\;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\ProgramData\chocolatey\bin;C:\Program Files (x86)\vim\vim80;C:\Program Files\Java\jdk1.8.0_211\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\nodejs\;C:\Android\android-sdk\tools;C:\Android\android-sdk\platform-tools;C:\Android\android-sdk\tools\bin;;C:\Users\vagrant\AppData\Local\Microsoft\WindowsApps;C:\Users\vagrant\AppData\Roaming\npm;C:\Program Files\ZeroC\Ice-3.7.2\bin;C:\Users\vagrant\AppData\Local\Microsoft\WindowsApps;C:\Users\vagrant\AppData\Roaming\npm;C:\Users\vagrant\.dotnet\tools
CPP_COMPILER = v142
PLATFORM = x64
ICE_HOME = C:\Program Files\ZeroC\Ice-3.7.2
_NT_SYMBOL_PATH = C:\Users\vagrant\AppData\Local\Temp\SymbolCache
SymbolServer = SRV*%TEMP%\SymbolCache*https://builds.testing.zeroc.com/public/staging/ice/3.7/nuget/zeroc.ice.v142.store;https://symbols.zeroc.com
npm install --registry=https://builds.testing.zeroc.com/nexus/repository/npm.group-ice-3.7/ --python="C:\Python27\python" --msvs_version=2019 ice slice2js
> [email protected] install C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js\node_modules\slice2js
> node-gyp rebuild
C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js\node_modules\slice2js>if not defined npm_config_node_gyp (node "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
Traceback (most recent call last):
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\gyp_main.py", line 16, in <module>
sys.exit(gyp.script_main())
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 545, in script_main
return main(sys.argv[1:])
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 538, in main
return gyp_main(args)
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 514, in gyp_main
options.duplicate_basename_check)
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 98, in Load
generator.CalculateVariables(default_variables, params)
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\generator\msvs.py", line 1916, in CalculateVariables
generator_flags.get('msvs_version', 'auto'))
File "C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\gyp\pylib\gyp\MSVSVersion.py", line 434, in SelectVisualStudioVersion
versions = _DetectVisualStudioVersions(version_map[version], 'e' in version)
KeyError: '2019'
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (C:\Users\vagrant\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\configure.js:345:16)
gyp ERR! stack at ChildProcess.emit (events.js:200:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\vagrant\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-demos-v142-x64-default\js\node_modules\slice2js
gyp ERR! node -v v12.5.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

iceGrid/simple

::Ice::NoEndpointException:
no suitable endpoint available for proxy `hello -t -e 1.1'
Error running demo. What's the problem? It took a long time to try, but it didn't work out.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.