telenav / kivakit Goto Github PK
View Code? Open in Web Editor NEWKivaKit is a set of integrated Java mini-frameworks for everyday development.
License: Apache License 2.0
KivaKit is a set of integrated Java mini-frameworks for everyday development.
License: Apache License 2.0
What needs to be done?
Not everyone knows how to pronounce KivaKit. Propose adding:
KivaKit (KEE-vuh-KIT)
What would you like?
add a validator to arguments
SwitchParser<String> bazSwitch = SwitchParser.builder(String.class)
.name("baz")
.defaultValue("wookie")
// .description("A thing that is a thing")
.optional()
// .converter(new BaseStringConverter<String>(this, str -> str)
// {
// })
.build();
Failure should probably throw an exception if nothing handles or is listening to the failure. Or return a FailureResult that lets the application decide to do that.
Description
We don't have tests for these filesystems and the code might not work anymore. We should figure out how we plan to test these and address any problems that come up.
What would you like?
JettyServer should support HTTPS by default. Not sure how certificate should be stored/accessed.
Why would you like it?
Secure connection.
What would you like?
[3:14 AM] Chen, Zhengyun
I want to ask a question and wonder whether you could help. Do you know any monitor & alarming platform in Telenav? The platform is to show the statistics of apis (something like api call duration, successful rate, error rate, error category), and it can send alarming message to the api owner if some condition is reached (like the api error times exceeds 10 times/min). And some other graph charts. The api owner just need to send each api call details to the platform. This is very commonly seen in some big internet companies for services' SLA.
What would you like?
It would be nice to have a "java" project under kivakit-extensions/kivakit-filesystems that gives access to the Java filesystem abstraction (java.nio.file.Filesystem.java). The kivakit-s3fs project should give you a good template to start with. Let me know if you have any difficulties understanding what to do.
Why would you like it?
This will give use fast zip file access with KivaKit's File object and will introduce you to how the kivakit-filesystems module works.
Is there another way?
No
What would you like?
Why would you like it?
To help people understand program flow
This feature must not break backwards compatibility with 1.1.0
What would you like?
It would be nice if a log like EmailLog could have a different log level than ConsoleLog
Why would you like it?
Increases flexibility.
Is there another way?
Right now, this is accomplished programmatically by installing a filter.
Description
When I call gRPC in safety service, it throws exception: java.lang.NoClassDefFoundError: kivakit/merged/grpc/io/perfmark/PerfMark.
Reproduce Case
When call gRPC service via BlockingStub, exception will be thrown.
MapMatchingServiceGrpc.MapMatchingServiceBlockingStub graphStub = MapMatchingServiceGrpc.newBlockingStub(channel);
……
MatchingResponse response = graphStub.match(matchingRequest.build());
Stack Trace
[main] INFO kivakit.merged.grpc.io.netty.util.internal.PlatformDependent - Your platform does not provide complete low-level API for accessing direct buffers reliably. Unless explicitly requested, heap buffer will always be preferred to avoid potential system instability.
May 05, 2022 11:15:54 PM io.grpc.stub.ClientCalls$ThreadlessExecutor waitAndDrain
WARNING: Runnable threw exception
java.lang.NoClassDefFoundError: kivakit/merged/grpc/io/perfmark/PerfMark
at [email protected]/io.grpc.internal.ClientCallImpl.(ClientCallImpl.java:105)
at [email protected]/io.grpc.internal.ManagedChannelImpl$RealChannel$1.newCall(ManagedChannelImpl.java:955)
at [email protected]/io.grpc.internal.ManagedChannelImpl$RealChannel.newClientCall(ManagedChannelImpl.java:1144)
at [email protected]/io.grpc.internal.ManagedChannelImpl$RealChannel.access$4500(ManagedChannelImpl.java:936)
at [email protected]/io.grpc.internal.ManagedChannelImpl$RealChannel$PendingCall$1.run(ManagedChannelImpl.java:1106)
at [email protected]/io.grpc.stub.ClientCalls$ThreadlessExecutor.waitAndDrain(ClientCalls.java:740)
at [email protected]/io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:149)
at safety.service.microservice/com.telenav.cloud.mapgraph.grpc.v2.mapmatching.MapMatchingServiceGrpc$MapMatchingServiceBlockingStub.match(MapMatchingServiceGrpc.java:135)
at safety.service.microservice/com.telenav.scout.safety.service.api.driving.safety.MatchingProxy.main(MatchingProxy.java:36)
Caused by: java.lang.ClassNotFoundException: kivakit.merged.grpc.io.perfmark.PerfMark
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:636)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
... 9 more
May 06, 2022 9:49:36 AM io.grpc.internal.ManagedChannelImpl$NameResolverListener handleErrorInSyncContext
WARNING: [Channel<1>: (graph-service-tn-osm-na.stg.k8s.mypna.com:9081)] Failed to resolve name. status=Status{code=UNAVAILABLE, description=Unable to resolve host graph-service-tn-osm-na.stg.k8s.mypna.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: graph-service-tn-osm-na.stg.k8s.mypna.com: nodename nor servname provided, or not known
at [email protected]/io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
at [email protected]/io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
at [email protected]/io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: java.net.UnknownHostException: graph-service-tn-osm-na.stg.k8s.mypna.com: nodename nor servname provided, or not known
at java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.base/java.net.InetAddress$PlatformNameService.lookupAllHostAddr(InetAddress.java:932)
at java.base/java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1517)
at java.base/java.net.InetAddress$NameServiceAddresses.get(InetAddress.java:851)
at java.base/java.net.InetAddress.getAllByName0(InetAddress.java:1507)
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1366)
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1300)
at [email protected]/io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
at [email protected]/io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
... 5 more
}
May 06, 2022 9:49:37 AM io.grpc.internal.ManagedChannelImpl$NameResolverListener handleErrorInSyncContext
WARNING: [Channel<1>: (graph-service-tn-osm-na.stg.k8s.mypna.com:9081)] Failed to resolve name. status=Status{code=UNAVAILABLE, description=Unable to resolve host graph-service-tn-osm-na.stg.k8s.mypna.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: graph-service-tn-osm-na.stg.k8s.mypna.com
at [email protected]/io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
at [email protected]/io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
at [email protected]/io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: java.net.UnknownHostException: graph-service-tn-osm-na.stg.k8s.mypna.com
at java.base/java.net.InetAddress$CachedAddresses.get(InetAddress.java:800)
at java.base/java.net.InetAddress.getAllByName0(InetAddress.java:1507)
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1366)
at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1300)
at [email protected]/io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
at [email protected]/io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
... 5 more
}
Description
When the response object is null the response is invalid:
{
,
"error": []
}
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "com.telenav.kivakit.commandline.CommandLineParser.exit(String, Object[])" because "this.parent" is null
at com.telenav.kivakit.commandline.SwitchParser.get(SwitchParser.java:320)
at com.telenav.kivakit.commandline.Switch.get(Switch.java:72)
at com.telenav.kivakit.commandline.parsing.SwitchList.get(SwitchList.java:88)
at com.telenav.kivakit.commandline.CommandLine.get(CommandLine.java:241)
at com.telenav.kivakit.application.Application.get(Application.java:436)
at com.telenav.kivakit.application.Application.startupInformation(Application.java:652)
at com.telenav.kivakit.application.Application.showStartupInformation(Application.java:611)
at com.telenav.kivakit.application.Application.run(Application.java:576)
at com.telenav.pomrefactoring.PomRefactoring.main(PomRefactoring.java:27)
Description
The ResourceTrait class should inherit from Repeater and not RepeaterMixin so that classes extending BaseComponent that use ResourceTrait don't have two repeater implementations at the same time.
Code was added to BaseRepeater to flag components that incorrectly use a RepeaterMixin as well. This turned up several other places in the code where invalid repeater mixins were removed.
What needs to be done?
The diagram on the home page of state-of-the-art (and elsewhere) needs to include the added frameworks in 1.2
Description
https://github.com/Telenav/kivakit/security/dependabot
The log4j issue is mistaken as < 2.0 does not have the log4j vulnerability.
Blah
What would you like?
Why would you like it?
To allow people outside telenav to run the HDFS filesystem test
What needs to be done?
We need new articles for the following new features:
What needs to be done?
What needs to be done?
Have a look at this markdown page and let me know if anything needs improvement. Thanks!
https://github.com/Telenav/kivakit/blob/develop/documentation/open-source/howto.md
Description
Use internal proxy to test kivakit-microservice AWS Lambda support
ssh ec2d-proxy-01
cd /usr/local/kiva/
Description
Sonatype lift flagged this library as a threat
What would you like?
A repository kivakit-examples should be created and populated with examples that
demonstrate uses of KivaKit. The examples should be linked into the KivaKit README.md
file.
Why would you like it?
It's not clear what KivaKit can do to the casual browser
Accept Rust style and MessageFormat style arguments
Description
Currently there is only one set of documentation under "docs" in the kivakit-assets project. Instead, there should be docs/[release-version] for each released version. This should be applied to the other *-assets repositories.
docs/0.9.8-alpha/javadoc
docs/0.9.8-alpha/lexakai
docs/0.9.8-alpha/images
docs/0.9.8-alpha/codeflowers
etc.
$ScanMessage and com.telenav.kivakit.core.messaging.messages.OperationMessage are in unnamed module of loader 'app')
Exception in thread "Kiva-Console-Log"java.lang.ClassCastException: class com.telenav.pomrefactoring.PomTree.ScanMessage cannot be cast to class
com.telenav.kivakit.core.messaging.messages.OperationMessage (com.telenav.pomrefactoring.PomTree.ScanMessage and
com.telenav.kivakit.core.messaging.messages.OperationMessage are in unnamed module of loader 'app')
com.telenav.kivakit.core.messaging.broadcasters.Multicaster.lambda.transmit.5(Multicaster.java:325)
com.telenav.kivakit.core.thread.locks.ReadWriteLock.read(ReadWriteLock.java:65)
com.telenav.kivakit.core.messaging.broadcasters.Multicaster.transmit(Multicaster.java:318)
com.telenav.kivakit.core.messaging.Broadcaster.transmit(Broadcaster.java:186)
com.telenav.pomrefactoring.PomTree.walk(PomTree.java:63)
com.telenav.pomrefactoring.PomRefactoring.onRun(PomRefactoring.java:151)
Description
┋ Building hadoop-doubly-shaded-protobuf
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.4.0:javadoc (default-cli) on project hadoop-doubly-shaded-protobuf: Execution default-cli of goal org.apache.maven.plugins:maven-javadoc-plugin:3.4.0:javadoc failed: Unable to derive module descriptor for /tmp/maven-repository/org/apache/hadoop/thirdparty/hadoop-shaded-protobuf_3_7/1.1.1/hadoop-shaded-protobuf_3_7-1.1.1.jar: hadoop.shaded.protobuf.3.7: Invalid module name: '3' is not a Java identifier -> [Help 1]
Reproduce Case
Run the release script
What would you like?
We need simple examples for these areas:
Why would you like it?
To help people
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.