Issue with generating large reports

Anyone getting this error below when generating a large report? I have about 20 devices and when I try to do a monthly summary report I get this error below. Doing a monthly route report  of a single device also generates this error. I'm assuming its the size of the report since I can reduce the number of days and I don't get any error. Anyone run into this issue and is there a way around it?
FINEST|674/0|Service traccar|17-07-31 13:53:23|Jul 31, 2017 1:53:23 PM org.glassfish.jersey.server.ServerRuntime$Responder writeResponse
FINEST|674/0|Service traccar|17-07-31 13:53:23|SEVERE: An I/O error has occurred while writing a response message entity to the container output stream.
FINEST|674/0|Service traccar|17-07-31 13:53:23|org.glassfish.jersey.server.internal.process.MappableException: org.eclipse.jetty.io.EofException
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:92)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1130)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:711)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:444)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:434)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:329)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.Server.handle(Server.java:499)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:258)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at java.lang.Thread.run(Thread.java:748)
FINEST|674/0|Service traccar|17-07-31 13:53:23|Caused by: org.eclipse.jetty.io.EofException
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:192)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:408)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.WriteFlusher.completeWrite(WriteFlusher.java:364)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectChannelEndPoint.onSelected(SelectChannelEndPoint.java:111)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.processKey(SelectorManager.java:641)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.select(SelectorManager.java:612)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.run(SelectorManager.java:550)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.NonBlockingThread.run(NonBlockingThread.java:52)
FINEST|674/0|Service traccar|17-07-31 13:53:23| ... 3 more
FINEST|674/0|Service traccar|17-07-31 13:53:23|Caused by: java.io.IOException: Broken pipe
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.Server.handle(Server.java:499)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:258)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at java.lang.Thread.run(Thread.java:748)
FINEST|674/0|Service traccar|17-07-31 13:53:23|Caused by: org.eclipse.jetty.io.EofException
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:192)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:408)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.WriteFlusher.completeWrite(WriteFlusher.java:364)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectChannelEndPoint.onSelected(SelectChannelEndPoint.java:111)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.processKey(SelectorManager.java:641)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.select(SelectorManager.java:612)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.SelectorManager$ManagedSelector.run(SelectorManager.java:550)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.util.thread.NonBlockingThread.run(NonBlockingThread.java:52)
FINEST|674/0|Service traccar|17-07-31 13:53:23| ... 3 more
FINEST|674/0|Service traccar|17-07-31 13:53:23|Caused by: java.io.IOException: Broken pipe
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.IOUtil.write(IOUtil.java:65)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
FINEST|674/0|Service traccar|17-07-31 13:53:23| at org.eclipse.jetty.io.ChannelEndPoint.flush(ChannelEndPoint.java:170)
FINEST|674/0|Service traccar|17-07-31 13:53:23| ... 10 more
FINEST|674/0|Service traccar|17-07-31 13:53:23|

I believe it's caused by timeout in browser. Report takes too long to load, so your browser closes connection.

Any ideas on how this can be resolved?  A speed up on the server side so the reporting doesn't take as long? or anything that can be done to the traccar code to resolve the problem?

Options:

Faster server so that reports are generated in less time
Increase browser timeout (not all browsers support it and also requires user action)
Change the way we generate reports (requires significant code changes)

I read around the forums and GitHub that traccar has been tested with a much larger number of devices. Did you guys run into this problem generating large reports for them? If not then I'll need to look more into option 1 and get the correct system specs to handle it.

Traccar has been tested with thousands of devices, but generating reports for a big number of devices will always take a long time. I don't see any reason for generating reports for thousands of devices in one go. Maybe a few hundred devices, and even that only makes sense for summary report.

Hi Anton,
I'm only generating a monthly summary report for 20 devices. I'm running a VPS using 4 cores of Intel(R) Xeon(R) CPU E5-2670 @ 2.60GHz, 30GB SSD storage, and 6GB of ram.  Do you think this should work?

Hi Anton,
I'm only generating a monthly summary report for 20 devices. I'm running a VPS using 4 cores of Intel(R) Xeon(R) CPU E5-2670 @ 2.60GHz, 30GB SSD storage, and 6GB of ram.  Do you think this should work?

It depends on...

Have you configured server and database to utilise all resources?
What database are you using? Is it up-to-date and configured properly?
How often do devices report data. For example if it's every second, that's a massive amount of data even for 20 devices.
How many other devices and users are on your server? Obviously overall server load will affect your reports as well.

Hi Anton,
I am using mysql database. Can you shed some more light on 1) Have you configured server and database to utilise all resources? With traccar written in Java does it use the four cores available to it or does it run only on single core?
Regards,

Traccar will use all available cores, not for a single report though. I was talking about memory utilisation.

Thanks Anton...I did a some  optimization on mysql server and now I'm able to do up to 2 weeks summary report on my 20 devices.
It looks to me it'll take a lot of time to generate these large reports  (ie monthly or quarterly) with the way the reports are generated and sent over the web. Do you think it is worthwhile for the team to look into how these large reports are generated and sent across the web? Maybe generate and send them in piece-meal? I noticed the summary report is already separated by device.

The easiest option I can think of is to send an email with Excel report when it's complete.

I have done quite a bit of work with CSV data parsing/writing which can be a pain.
I looked at the class and seems you are writing it into memory, why not do the following.
Open a temp filehandle and push all the data straight out to that, this will get over memory issues from writing the file, if the issue is a single large DB query then it would need to be an unbuffered query (not sure if this can be done in H2 db) so as not to allocate all the space for the DB result in one go. If unbuffered can not be done then splitting the query down, ie do count first on query then LIMIT though the result set as its processed.
when job is complete use WS to indicate to browser that job is complete and they can download the report and/or email file/link to user account.
ps. Also why does traccar not use a dedicated CSV writing library? I have come across so many issues with people trying to handle escaping themselves.

@tsmgeek, there are no CSV files or memory issues.

Just checked the exporter code and was looking at the CSV library that was in the api by mistake.

The easiest option I can think of is to send an email with Excel report when it's complete.

Hi @tananaev is there any chance this would be implemented anytime soon, i'm currently using a custom php web application pull months of data for up to 1000 devices even if it not the most comfortable solution for users using 2 sites.

Send me an email to discuss it.


Refactor postgresql scaler config

Checklist

[x] I have verified that my change is according to the deprecations & breaking changes policy
[x] Tests have been added
[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)

Fixes #

Relates to https://github.com/kedacore/keda/issues/5797

/run-e2e postgresql


⚠ ClamAV has degraded performance

In 63584a4, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 274 ms

Resolved: ClamAV performance has improved in d40b2d2 after 2 hours, 54 minutes.


(Bug) Can not start new crowdsale if  previous one hasn't been finished

Steps:

Start creating new crowdsale: minted, 1 tier, any valid parameters
Proceed till Publish page
Close the page(don't close browser)
Open TW's Home page
Click button 'New crowdsale'

Expected result :

user should be able to start new crowdsale

Actual result:

button 'New crowdsale'  unresponsive
user can't start new crowdsale unless finish previous one or clean browser's cookies

If you are reporting a problem with Token Wizard, please include the following information:
Which network did you use? (Mainnet, Kovan, Rinkeby, etc.)
localhost
If you were able to create it, what is the URL of your crowdsale?
n/a
Do you have screenshots showing the problem?
https://www.useloom.com/share/d23582930d3f4ce7a704b0d9bf771453r
Do you see errors in the dev console? If yes, please include a screenshot
No

@dennis00010011b that's right. But, for instance, if you go directly to StepOne screen (http://localhost:3000/1) you'll be able to see the cancel/continue screen.
Note: that sceen wasn't redesigned yet. I don't know if it's part of another task or if there's an issue for it. @gabitoesmiapodo can you confirm?

@fernandomg
There's no issue or design that I remember for that Resume / Cancel section.
We could reuse and expand some designs for that. For example the one at #1178

@fernandomg @gabitoesmiapodo
cancel/continue screen in 'Choose crowdsale' section  now

I think user should be able to start new crowdsale from 'Home page' in any case
Or dialog cancel/continue should be displayed on Home page in attempt to start new crowdsale if previous one is unfinished

@dennis00010011b
It seems the user can't do anything until he / her finishes or cancels a pending crowdsale creation.
I think you should at least be able to access the "Choose Crowdsale" section?
The option for a dialog on the home page when clicking the "New Crowdsale" button seems good to me, but we should ask @mariano-aguero or @fernandomg if that's possible.

I think you should at least be able to access the "Choose Crowdsale" section?

Yes, I am able to cancel pending deployment through "Choose Crowdsale" section

@dennis00010011b
No, sorry, I mean: In my opinion the user should be able to get to that section ("Choose crowdsale"), even if he / she has an unfinished deployment.
Maybe even have it included in the crowdsales' list, marked as unfinished, or something like that.


DisabledByDefault doesn't appear to merge properly

given a config file:
inherit_gem:
  rubocop: config/default.yml

AllCops:
  DisabledByDefault: true

I'd expect all cops to be disabled, however the default set of cops is applied:
11:00 ~/code/rubocop % be bin/rubocop -c /Users/thom/work/chefstyle/config/chefstyle.yml /Users/thom/work/chefstyle -f simple
[...]
6 files inspected, 51 offenses detected

Removing the inherit_gem section correctly results in no cops being applied:
1:01 ~/code/rubocop % be bin/rubocop -c /Users/thom/work/chefstyle/config/chefstyle.yml /Users/thom/work/chefstyle -f simple
6 files inspected, no offenses detected

Rubocop from current git master:
11:08 ~/code/rubocop % be bin/rubocop -V                               [master]
0.35.1 (using Parser <IP_ADDRESS>, running on ruby 2.2.3 x86_64-darwin15)

This is what happens. You load configuration from the rubocop gem where AllCops:DisabledByDefault is false. This value is then overridden by your local setting DisabledByDefault: true. The default configuration is then merged with your user configuration, and since DisabledByDefault if true, the default configuration is disabled and your user configuration is enabled.
The thing you might have missed is that user configuration is everything in your .rubocop.yml, including configuration that you excplicitly inherit from, in this case from the rubocop gem. The default configuration is defined by config/default.yml in the rubocop you're running, which may or may not be the same as the gem. Either way, it's two configurations.
I think it better if we make rubocop fail when inherit_gem uses the rubocop gem, because it makes no sense to inherit that way. It only causes confusion.

OK, just pushed a commit which implements @jonas054's suggestion. Let's see what @bbatsov says about it.


Spring for GraphQL support/ sample

At re:Invent 2023 someone asked if we are supporting Spring for GraphQL https://docs.spring.io/spring-graphql/reference/. Goal of this issue is to check that and ideally add a sample for it.

Thanks for raising this. I will check if it's already supported.

Hi,
I can confirm that GraphQL works.
I've used the code here to test it :
https://spring.io/guides/gs/graphql-server/ and it just worked (I added a StreamLambdaHandle as documented here https://github.com/aws/serverless-java-container/wiki/Quick-start---Spring-Boot3).
However, I had issues when integrating with JPA. It was necessary to add the config below:
spring:
  jpa:
    open-in-view: false

If it was not added, the handler was going in an infinite loop (waiting for a latch). This was not necessary for REST API (in any case, it is good practice to disable this for all spring applications)


How do I use steemconnect2 in react Native ?

How do I use steemconnect2 in react Native ?
Is it possible? Please let me know if you have any suggestions.

Hello,
You can see how it was used in busy.org
https://github.com/busyorg/busy
Look at this file
https://github.com/busyorg/busy/blob/012930e493d3a602651fca3a5a6c19caa6881d20/src/client/steemConnectAPI.js
Or any occurrences to it:
https://github.com/busyorg/busy/search?utf8=✓&q=steemConnectAPI&type=

Yes it's possible we ever tried, it work the same as doing it on React.js as @gregory-latinier explained. The only difference is that you will need to setup a redirect url for your app with specific url scheme like yourapp://callback?access_token=12345. Feel free to reopen the issue is you are not able to make it work.


Fix center point calculation & Update deps

Here's a solution to #7 - Trigger center point calculation when panning starts, as onLayout seems to fire too early in newer react-native versions resulting in an incorrect px. I've updated the react-native-svg dependency so that the example should compile as well.

Accidentally made PR from master, closed and resubmitted


Bad URL: /incidents/{ID}/log_entries/count

For tracking purposes.
The v2 REST API no longer officially supports the /count path. Although empirical evidence would suggest it still exists for /incidents/count, there is no documentation supporting this, and plenty of support conversations suggesting otherwise. This is especially true for sub-container elements such as Incident.log_entries
To be v2 compliant, all count() calls should be changed to use the documented total=true parameter on a single paginated request. The use of limit=1 should theoretically allow for the smallest possible request, though some testing on older incidents seems to suggest that this must be limit=2 or higher to avoid HTTP errors.

Fixed in PR #79 (fyi)

PR #83 (fyi)


discussion: how to clear the gpu memory usage done

In this snippet where we initialise a whisperplus pipeline, how to clear out this memory usage once its used.
pipeline = ASRDiarizationPipeline.from_pretrained(
        asr_model="openai/whisper-large-v3",
        diarizer_model="pyannote/speaker-diarization",
        chunk_length_s=30,
        device=DEVICE,
        use_auth_token=<auth_token>
    )

Would appreciate some help on this. I tried del pipeline but it doesn't seem to work

In this snippet where we initialise a whisperplus pipeline, how to clear out this memory usage once its used.
pipeline = ASRDiarizationPipeline.from_pretrained(
        asr_model="openai/whisper-large-v3",
        diarizer_model="pyannote/speaker-diarization",
        chunk_length_s=30,
        device=DEVICE,
        use_auth_token=<auth_token>
    )

Would appreciate some help on this. I tried del pipeline but it doesn't seem to work

Can you try this code?
def release_resources(self):
"""
Releases resources and clears GPU memory cache. This method should be called after processing is complete,
especially when processing multiple files in a loop, to ensure that GPU memory is freed.
"""
if self.device == "cuda":
torch.cuda.empty_cache()
self.asr_pipeline = None
self.diarization_pipeline = None

Thanks for this!


Testing Super on Jamf Connect but cannot get defferals to change

Hello. I'm having an issue with the deferrals not changing on the dialog prompt. I've tried the changes to the script that have been suggested but its still showing the default no deadline date and unlimited deferrals. I've used the script and assigned it to a policy in Jamf.
I tried just running the script manually and its exhibiting the same behaviour.
I've probably missed something really obvious but any suggestions would be appreciated!
Thanks

I'm also unable to authorise the updates on apple silicon with the admin local account. I've put this in the policy parameters as instructed. Any help with these two issues would be greatly appreciated.
thanks

As you are using Jamf Pro... have you consulted with the documentation? https://github.com/Macjutsu/super/wiki/Jamf-Pro-Deployment#jamf-pro-policy

Hi Kevin.
Yes I did have a look at the documentation.
However I am now using the integrated patch management in Jamf Pro which works well out of the box and seems to be quite reliable so far.
Thanks for the reply though its much appreciated.
Kind Regards
Fraser Purdie
IT Support Officer| Information Technology | Glasgow School of Art | 6 Rose Street, Glasgow, G3 6RB | email<EMAIL_ADDRESS>@.***
From: Kevin M. White @.>
Sent: 17 May 2024 20:11
To: Macjutsu/super @.>
Cc: Purdie, Fraser @.>; Author @.>
Subject: Re: [Macjutsu/super] Testing Super on Jamf Connect but cannot get defferals to change (Issue #197)
As you are using Jamf Pro... have you consulted with the documentation? https://github.com/Macjutsu/super/wiki/Jamf-Pro-Deployment#jamf-pro-policy

Reply to this email directly, view it on GitHubhttps://github.com/Macjutsu/super/issues/197#issuecomment-2118225614, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BGGOPYK4LRL6JD2A2XDRA6LZCZI5BAVCNFSM6AAAAABDL2R7MCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJYGIZDKNRRGQ.
You are receiving this because you authored the thread.Message ID: @.***>


remap_restarts.py needs -constraint option

In order to run on Milan nodes at NCCS from command line we need to include a -constraint option. So the scripts can include --constraint=mil
We may want to check the logic of -partition as well, I used this on command line -partition scutest but the yaml still includes compute. And I get an error:
cd /gpfsm/dnb03/projects/p38/Ops12KM_R/GMAO_PROPOSAL_BENCHMARK_SETUPS/restarts_x0048_e20211130_21z_c360_L91
use Config yaml file: /discover/nobackup/projects/gmao/osse2/Ops12KM_R/GMAO_PROPOSAL_BENCHMARK_SETUPS/restarts_x0048_e20211130_21z_c360_L91/remap_params.yaml
-partition: Command not found.
Also, I often struggle with having to provide a QOS, debug is restrictive of time, and allnccs doesn't seem to work for me all the time, not sure why.

@wmputman Note: I believe @weiyuan-jiang is looking now to make remap_restarts.py aware of the Milans. But that means we have to do the same "only allow Milan when built on SLES15" business we do elsewhere.
But this should also be done when we fix that up.

OK, I just made my own local modification to get it to work in my scripts


Error in walkthrough

I'm submitting a ...
[X ] bug report
[ ] feature request
[ ] question about the decisions made in the repository

Error in walkthrough.
I just tried to make a simple example and I get an error on this line:
export class AppComponent {
  constructor(overlay: Overlay, vcRef: ViewContainerRef, public modal: Modal) {
    overlay.defaultViewContainer = vcRef;
  }
...
}

property 'defaultViewContainer' does not exist on type Overlay.
I am using it in ES6 with Angular 4.
It is possible the Overlay has changed since the NG4 update and walkthrough isn't up-to-date?
Thanks.

Now getting some serious bugs in Ionic at compile time... Not sure what it is linked to though...

09:40:20]  ionic-app-script task: "build"
[09:40:20]  Error: ./src/app/app.module.ngfactory.js Module not found: Error: Can't resolve
            '../../angular2-modal/plugins/bootstrap' in '/Users/xxxxx/Documents/www/XXXX/mzk_app/src/app' resolve
            '../../angular2-modal/plugins/bootstrap' in '/Users/xxxxx/Documents/www/XXXX/mzk_app/src/app' using
            description file: /Users/xxxxx/Documents/www/XXXXX/mzk_app/package.json (relative path:

Walkthrough haw been removed, the quick start is now in the README.
As for the other error, please open a new issue.


Allow multiple users to import the same scenario

also renames should_import? to import_confirmed? for readability

Related issue: #968

Is this done?

Yes, ready for review.

Looks great, thanks @TildeWill!


Link to install CLI does not take you to CLI installation page

Is your feature request related to a problem? Please describe.
The Dockstore web site's link to install the CLI takes you to a page that doesn't tell you how to install the CLI.
In the screenshot, clicking on the "Dockstore CLI" link takes you to a documentation page, which doesn't tell you how to install the CLI.
The second link, "configuration file", takes you to the Quickstart which does have installation instructions.
Describe the solution you'd like
There should be one link in that sentence, and it should take you to Quickstart. The sentence should probably be reworded, given the previous sentence suggestion.
Additional context
Slack discussion here

┆Issue is synchronized with this Jira Story
┆fixVersions: Dockstore 1.11.X
┆friendlyId: DOCK-1924
┆sprint: SEAB 79- Gary (the snail)
┆taskType: Story

Renamed to avoid confusion with https://github.com/dockstore/dockstore/issues/4486

Confirmed on staging that there is now only one link, and it takes you to the quick start page.
Webservice - 1.11.12
UI - 2.8.5
Compose Setup - 1.11.1
Deploy - <IP_ADDRESS>


Needs changes - Added functionality for rendering the list of recent directories in the recent directories panel

Recent directories are stored in a tree data structure to allow search.
From the recent directories panel, a user can set a dir as root and add / toggle a bookmark.
Dbl click on a directory focuses it in the file explorer.
Handling of recent directories after rendering is implemented.
If a directory does not have a bookmark set, the star outline only appears on mouse hover (this will also be implemented in the file tree).

I've changed the use of .unshift() to .push() and then .reverse() after all the elements have been added so that they have the appropriate order.
I did not find any article stating the exact complexity of .push() in JavaScript but I would assume it is amortized O(1) similar to what other languages have (e.g. Java's resizable ArrayList) and this would give O(n) overall cost. One advantage in our case is that n is fixed.
Because we decided to keep the event emitters stateless, this cost will also be incurred every time a new item is inserted but I would think that is fine because the size of the list is static and most likely relatively small (~20 or ~30).


Test Fails in FireFox (39.0): constructor (1, 1, 0)

Visited this url: http://webreflection.github.io/document-register-element/test/
Results (line "contructor (1, 1, 0)" is in red):
1 Tests Failed
main (2, 0, 0)
as XDirect constructor (3, 0, 0)
as XIndirect constructor (4, 0, 0)
as  innerHTML (4, 0, 0)
as  innerHTML (5, 0, 0)
as createElement(x-direct) (4, 0, 0)
as createElement(div, x-indirect) (5, 0, 0)
attributes (5, 0, 0)
offline (5, 0, 0)
nested (2, 0, 0)
className (5, 0, 0)
registered after (5, 0, 0)
constructor (1, 1, 0)
unknown

simulating a table element (2, 0, 0)
if registered one way, cannot be registered another way (2, 0, 0)
is="type" is a setup for known extends only (2, 0, 0)
innerHTML helper (1, 0, 0)
innerHTML invoke createdCallback via type (1, 0, 0)
innerHTML invoke createdCallback via extends (1, 0, 0)
innerHTML already registered elements still work (4, 0, 0)
innerHTML with nested elements (2, 0, 0)
innerHTML attributes present on createdCallback (1, 0, 0)
innerHTML attributeChangedCallback (1, 0, 0)

Mozilla/5.0 (X11; Linux x86_64; rv:39.0) Gecko/20100101 Firefox/39.0 here and everything is green ...

I'm on Windows 7.

what I am saying is that Firefox in Linux works, Chrome and  Chromium  works, Opera work, even IE on windows work ... I am not sure I want to fix this here, maybe it's a Firefox for Windows bug?

If there is any more information I can provide you, please let me know.

anyway, it's probably here:
https://github.com/WebReflection/document-register-element/blob/master/test/document-register-element.js#L375-L380
if you could tell me what this returns in your console maybe I can understand what's the issue
var XW = document.registerElement(
  'x-whatever',
  {
    prototype: Object.create(
      HTMLElement.prototype
    )
  }
);

console.log(Object.getPrototypeOf(new XW));

thanks

plus
new XW instanceof XW // should be true

and

new XW instanceof HTMLElement // should be true

thanks

P.S. you need to test in the test page ;-)

it's OK, you cannot register twice the same element in the same realm / page / window / tab
so , second error is expected
the first one though, is not clear to me
can you please run this exact code after refreshing?
var XW = document.registerElement(
  'x-whatever',
  {
    prototype: Object.create(
      HTMLElement.prototype
    )
  }
);

console.log(
  Object.getPrototypeOf(new XW),
  new XW instanceof XW,
  new XW instanceof HTMLElement
);

Thank you

I'm afraid we need another test ... bear with me ...
var
  runtime,
  xEl = document.body.appendChild(
    document.createElement('x-el-created')
  ),
  XEL = document.registerElement(
    'x-el-created',
    {
      prototype: Object.create(
        HTMLElement.prototype, {
        createdCallback: {value: function() {
          runtime = this.constructor;
        }}
      })
    }
  )
;

console.log(
  'sync',
  xEl.constructor === runtime,
  xEl instanceof XEL
);

setTimeout(function () {
  console.log(
    'async',
    xEl.constructor === runtime,
    xEl instanceof XEL
  );
}, 1000);

Thank you (still try after refreshing)

I've edited there was a typo ...

OK and what the hack is Firefox using as constructor ?
I hope that's not happening because the callback is never invoked
please update the previus test with this log instead,  thank you (should be last one I ask you)
console.log(
  'sync',
  xEl.constructor,
  runtime
);

Don't worry about imposing on me, I'm happy to help.  However, after 9:00 a.m. PDT, I have to answer to a higher authority until 5:00 p.m.

you are drunk Firefox, go home!!!
I have honestly a) no idea how that's even possible b) how to test it and c) zero time right now for this, all I can say is that you are not facing a problematic bug, for what I can tell, rather a Firefox on Windows only glitch.
Please remember that is just a test that makes little sense, as it is, and it was meant to simply check that runtime was assigned when the x-whatever custom element was registered but a node with the same name was already created / /present in the DOM.
Accordingly to these circumstances, the test passes without problem: the callback is invoked, and runtime is indeed not undefined.
I will leave this open  to better investigate what's going on there, if you can tell me all details about your platform ( like your UA ) I might try to find a similar setup and either fix the gotcha or change the test.
Thanks for your patience and your understanding.

http://www.3site.eu/ua
tells me:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Also, I closed Firefox and started it again, this time only visiting your test page and got the same result.  I've been working on custom HTML element project in the same session of Friefox and wanted to make sure my code had not interfered.
This test failure has no meaning to me, I just wanted to bring it to your attention so it doesn't bit you later on or it's a flag that something is amiss.

how is this bug doing on FF side? any change?

Firefox 40.0.3
visiting http://webreflection.github.io/document-register-element/test/
results in
1 Tests Failed
...
constructor (1, 1, 0)
...

how are we doing with latest Firefox? Mine are still all green!

Firefox 41.0
visiting http://webreflection.github.io/document-register-element/test/
results in
1 Tests Failed
...
constructor (1, 1, 0)
...

I've pushed the version  0.5.0 which has a fix for IE10 but I've sneaked in also a change that might actually solve that test issue in your Firefox.
Mind checking? Please tell me it's green now ... please!

This was on real windows machine

hey @jlpoolen any update after last push?
http://webreflection.github.io/document-register-element/test/

Still fails at same spot.

Everything is green for me. Maybe it's worth disabling all the extensions/addons before the test? Knowing how  Firefox extensions works, there is a good chance that one of them is a causer of this issue.

I went into "Tools->Add-ons" and disabled all of my extensions.  I restarted Firefox, confirmed all extensions were disabled.  Then went to your test.  Same result, alas.  I do have plug-ins such as Google Talk Plugin, but have not set them to "Never Activate".  I do have a Firebug, is there something I could do to debug or provide debugging output?

can you drop Firebug and let me know how that goes? I wouldn't be surprised ...
Otherwise every machine, native or VM, I could possibly try, 32 or 64 bit, Windows any version, plus any other person  I could ask .. won't have this problem, meaning I might just close this until I am able to reproduce it.

what do you mean by "drop"?  I had and have Firebug disengaged:

so everything is disabled and only you on this planet have this problem. Can you find any other computer around you that shows the same issue?

I tried it from another Windows 7 and got a 100% pass.

I'm going to close this until I'm able to reproduce or you are able to reproduce in another machine.
Hope this won't cause any trouble to you when using real-world services based on this  poly.


Feature: Request for an Option to Toggle Ejecting Removable Drives in the Sidebar

What feature or improvement do you think would benefit Files?
I'd like to propose the addition of a feature that allows users to enable or disable the ejection of removable drives in the sidebar through the settings. This feature would help to declutter the sidebar, especially when dealing with numerous drives on a compact interface such as a laptop.
Requirements
Integrating a toggle button in the settings for ejecting removable drives.
Files Version
<IP_ADDRESS>
Windows Version
22H2 22621.1992
Comments
No response

Thank you for your feedback. We don't have plans to implement this option now, but we're open to reconsidering this in the future.


Add Dockerfile

Hey there! Thanks for the fun MCP server! This PR adds a Dockerfile to allow the project to be built and distributed as a container image (following after modelcontextprotocol/servers#368).
A blog post and more is to come soon about containerized MCP servers, so stay tuned! 😄

I don't think this container will work properly right now because the user won't have their kubernetes config inside of the docker container. Right now it's using the default kubeconfig: https://github.com/Flux159/mcp-server-kubernetes/blob/main/src/index.ts#L30 (generally at $HOME/.kube directory) - not having that inside of the container or binding that directory to a volume inside of the container will most likely not work properly.

Great comment! I did test it by mounting my config directory into the container and it worked as I expected. But yeah... we might want to add an example on what the container config looks like.
And to loop back... the blog post about Docker and Anthropic working together to support containerized MCP servers can be found here - https://www.docker.com/blog/the-model-context-protocol-simplifying-building-ai-apps-with-anthropic-claude-desktop-and-docker/

I did test it by mounting my config directory into the container and it worked as I expected. But yeah... we might want to add an example on what the container config looks like.

Ah makes sense - yeah adding that to the README would be great. It can be a separate commit / PR though & this can just add the Dockerfile. LGTM.

Just a followup here, I published flux159/mcp-server-kubernetes to dockerhub.
I haven't had the chance to test it out, but I assume that it would be loaded into Claude desktop with something like this, specifically you would need to mount your kube credentials into the docker container by mounting your $HOME/.kube directory:
{
  "mcpServers": {
    "kubernetes": {
      "command": "docker",
      "args": ["run", "flux159/mcp-server-kubernetes", "-v", "~/.kube:/.kube"]
    }
  }
}

Will update readme after I get the chance to test it out (may take a bit since I'm working on other things) or if someone else can validate & update the README in a PR.


A whole bunch of direct urls present at the top of azure.github.io landing page

In https://azure.github.io/azure-sdk-for-java/, you can see a whole set of links right under the header of the page

The same can be seen in other azure.github.io pages for JS, Python and .Net repos

Currently, cpp reset the branch protection which blocks us to update the gh-pages. I have contacted @ahsonkhan to help unblock this.

cc @RickWinter who might know more about any recent changes to the branch protection.

C++ has removed the branch protection. Thanks! @ahsonkhan @RickWinter
Closed the issue as we addressed the issue for all lang repo.


Deeper dissection of Quorum packets and Reconfig packets

Hello,
The patch set enables deeper dissection of quorum packets(ProposalQP, CommitQP, and so on).
The patch set also includes dissector for Reconfig request/response and several optional features for debugging.
I made these patches for earthquake, our model checker for real implementation of distributed systems(Zookeeper and so on).
Earthquakes permutes function calls, packets, and injected fault events in various orders to find bugs of the distributed system.
Zktraffic is used to make digests of packets so as to reduce the state exploration space.
https://github.com/osrg/earthquake/tree/master/example/zk.ether

Thanks for the pull request @AkihiroSuda ! It looks good, I added a few comments, let me know if you have any questions!

@rgs1 Than your for response!
I will fix it later.

@AkihiroSuda : let me know if you want more time to get to the review, otherwise I am happy to merge it as is and follow-up with the style fixes in future commits. Thanks!

@rgs1
Thank you for the offer for merging!
I'd appreciate if you could merge the latest commits (3d57165 is an important, but the others are just style fixes).

Merged, thanks @AkihiroSuda !


Sublime Text syntax highlight

Are there plans to support Sublime Text syntax highlight?
maybe ride on the babel plugin like styled-components did?

@maticrivo that would be cool. Would you like to give it a stab?

Sure @giuseppeg. I'll give it a try

@maticrivo What were your experiences?

SublimeBabel is hard.. i couldn't make it to work, I'm currently working without syntax highlighting :(
I haven't closed this so if anyone wants to give it a go he is more then welcome

This would be awesome. Mostly because styled-jsx is silent when an error occurs.
For the moment, as all of my styles are in separate files and they are named the same, I'm using ApplySyntax with this configuration:
{
  "syntax": "CSS/CSS",
  "rules": [
    {
      "file_path": ".*(\\\\|/)style(s).js$"
    }
  ]
}

It's not great as it breaks when you have a variable inside a the template literal, but it's something.

closing for inactivity

Hard to believe there is still not a package available.

This may do the trick: https://github.com/bathos/Ecmascript-Sublime


Add necessary packeges needed for project

Add alsa and gstreamer to yocto build
DoD: Should be able to access alsa and gstreamer commands on raspberry pi once image is loaded on hw
Blockers: None

https://github.com/cu-ecen-aeld/final-project-velascorboulder/blob/main/meta-aesdproj/recipes-core/images/aesdproj-image.bb


Puzzled with custom nginx format

Hi, I am totally puzzled why I always get "no valid hits found"
62.XXX.XXX.XXX - nginxCookie_www=VMgzClZLGttaiR6FAw2BAg==; nginxCookie_session=5deaf50a604c4eb3a651989508a295767d6e5f4a - 05/Oct/2016:06:53:12 +0200 - 200 - "POST /api/FOO HTTP/1.1" - "-" - "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" - "-"

and as format:
 | Log Format - [c] to add/edit format
 | %h - %^ - %d:%t - %s - %r - %^ - \"%u\" - %^
 | Date Format - [d] to add/edit format
 | %d/%b/%Y
 | Time Format - [t] to add/edit format
 | %H:%M:%S %z

I checked and retried and tried and rechecked a lot of variantions on the format strings. Any advice greatly appreciated!

Can I ask you which field is the size of the response (bytes)? or if you can post your web server format would be great. Thanks

I am afraid I don't have this field. Is it essential for goaccess to analyze the logs? I didn't see it in the documentation as required. (No doubt it would be a "nice" bit of information...)

It's not required, but handy :) This should work (feel free to replace "%R" with %^ if it's not the referrer):
%h %^ %^ %^ %^ %d:%t %^ %^ %s %^ "%r" %^ "%R" %^ "%u"
%d/%b/%Y
%H:%M:%S

ah great, this works!
So I'll take dashes has to be treated as "fields" from that.
Thanks!

Glad that worked — That's right, you could consider dashes as fields. However, it is possible to do some skipping like moving to the next char such as:
%h %^; %^ %^ %d:%t %^ %^ %s %^ "%r" %^ "%R" %^ "%u"

That assumes your log format has always a ; at that position.


swift-inspect: add some documentation

This adds some documentation about swift-inspect and how to build it on
Windows, which requires additional flags to locate the SwiftRemoteMirror
library from the toolchain.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please smoke test


Define the formulation for the heat markers

set threshold to 7 default for all locations

7 is derived from 2 big org x 3 + 1 for small org.

if new org comes we need to update the threshold

Below is the main formula for necessity calculation over 10 - change 10 to 5 to get the rate over 5

heatRank = roundUp((1 - ((confirmed volunteers in location.id) / (threshold x (ballot_boxes count in location.id)))) * 10)

To include the OvO data we can use the weighted average method and the total calculation is below:

ovoAverage = volunteer_counts.priority (for ovo) in location_id / count(buildings in volunteer_counts)
finalRank = roundUp((3/7 * ovoAverage) + (4/7 * heatRank))

updated


This does not work on Node.js 4.2.0? What gives?

it's a shame you're acting like this.  regardless, i wish you well.

Yes, I agree, it is a shame you are acting like this. I really hope you feel better soon.
Let me know ASAP when you get Node.js 4.2.0 support added here. I won't try figuring out why it doesn't work or offer up a pull request, only feel entitled that you should serve my needs, even though other users who couldn't use 4.2.0 were perfectly willing to upgrade Node.js and the issue was open for months. Please do get right on this issue, you owe me.

Actually, there is something you can do. If you discover that many of your users are suffering from this problem, you could find a workaround (perhaps use a different timeout mechanism, or some such.) This is common in software development; I'm surprised you're unaware of it, @qarl. You're clearly an awful software developer, not knowing about this. Shame on you for not making this work on Node.js 4.2.0. SHAME.

I think it's a shame my first interaction with you was that you come into a repository I oversee, and acted completely entitled to get what you wanted done, without adding any value what-so-ever. Even your argument that all those people had issues and I ignored them is bullshit, in my opinion. I don't see a single person in that thread saying they had to get it fixed and working on 4.2.0, only that they were having the issue and then confirming that they upgraded their Node.js and everything was working. Because people continue to find themselves on Node.js 4.2.0 and posted in there over and over, we look the issue so people can find it on the Internet, read the thread, and understand the resolution is to upgrade the version of Node.js

But I thought it was important to speak-up and say "this problem still exists."

You thought wrong.

But since the comments are locked on that issue, I was forced to create a new issue.

That is correct. Here's the thing: comments on an old, closed issue is usually never seen by anyone looking at the repository. One of the reasons we lock issue is to force people to open new issues so they are actually seen, and ideally, not spam all the old users in that thread and hopefully encourage people to help bring up information to move the issue forward. GitHub  has heard complaints from repository owners that "me too" issues and comments are absolutely useless and unhelpful and so added the "emotions" pattern now instead, so users can "me too" in silence by thumbs-uping an issue, not making comments that do not move anything forward.

And I'm somewhat curious as to why you'd lock the comments on an unsolved problem. (Never mind closing it. Presumably you have a different definition of "closed" than I do.)

This comment right here is what sent me off.  This comment is where our interaction went south on my end, I'm sorry to tell you.
Please never ever step into any module I have touched ever again. If I have already turned you off to that anyway, that's A-OK since I do not want to see your name in anything. I have blocked your account on GitHub, whatever that does.

Perhaps if you hadn't locked the comments on the other issue, someone would have told you about this before now. Again, I remain curious about that decision.

 That issue was unlocked for 3 months and was not the only issue about this topic, but obviously you already know all this, because you're better than me.

I am but a child

Yes, you have provided ample evidence.  Take care.

Yes, you have provided ample evidence. Take care.

Whew, I was really worried you would not see it, but I'm really glad you have come to this realization. The world will be a much better place now.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

Oops, didn't mean to comment here.

I'm not sure why Chrome just freaked out, and that wasn't even supposed to be for this window, it was for a IRC room.


Four integration tests are failing on 1.0

Not sure why this is started. But if I clone a clean and fresh version of the driver, compile it from VS and run the unittests and integration tests. I have not changed anything on my system. Is using a VM only for Neo4j driver development and nothing else. So really not sure why thing has started to happen. Then 2 tests fails with the following:
Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldEstablishConnectionWhenAuthEnabled [FAIL]
      System.IO.DirectoryNotFoundException : Could not find a part of the path 'C:\Source\neo4j\temp\neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver.IntegrationTests\bin\target\neo4j\neo4j-community-3.0.0-RC1\data\dbms\auth'.
      Stack Trace:
           at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
           at System.IO.File.InternalDelete(String path, Boolean checkHost)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver.IntegrationTests\ConnectionIT.cs(108,0): at Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldEstablishConnectionWhenAuthEnabled()

Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldDoHandShake [FAIL]
      Neo4j.Driver.Exceptions.ClientException : Authentication token must contain: 'scheme : basic' (ID:3F430025A6B8848B03FBF94CBF4355A29D7EC42E0AC454665A746D84DBBBA868)
      Stack Trace:
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Connector\SocketConnection.cs(76,0): at Neo4j.Driver.Internal.Connector.SocketConnection.Sync()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Session.cs(79,0): at Neo4j.Driver.Internal.Session.<>c__DisplayClass7_0.<Run>b__0()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\LoggerBase.cs(54,0): at Neo4j.Driver.Internal.LoggerBase.TryExecute[T](Func`1 func)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Session.cs(73,0): at Neo4j.Driver.Internal.Session.Run(String statement, IDictionary`2 statementParameters)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver.IntegrationTests\ConnectionIT.cs(57,0): at Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldDoHandShake()

Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldBeAbleToRunMultiStatementsInOneTransaction [FAIL]
      Neo4j.Driver.Exceptions.ClientException : Authentication token must contain: 'scheme : basic' (ID:3F430025A6B8848B03FBF94CBF4355A29D7EC42E0AC454665A746D84DBBBA868)
      Stack Trace:
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Connector\SocketConnection.cs(76,0): at Neo4j.Driver.Internal.Connector.SocketConnection.Sync()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Transaction.cs(119,0): at Neo4j.Driver.Internal.Transaction.<>c__DisplayClass10_0.<Run>b__0()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\LoggerBase.cs(54,0): at Neo4j.Driver.Internal.LoggerBase.TryExecute[T](Func`1 func)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Transaction.cs(104,0): at Neo4j.Driver.Internal.Transaction.Run(String statement, IDictionary`2 parameters)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver.IntegrationTests\ConnectionIT.cs(136,0): at Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldBeAbleToRunMultiStatementsInOneTransaction()

Neo4j.Driver.IntegrationTests.ConnectionIT.BuffersResultsOfOneQuerySoTheyCanBeReadAfterAnotherSubsequentQueryHasBeenParsed [FAIL]
      Neo4j.Driver.Exceptions.ClientException : Authentication token must contain: 'scheme : basic' (ID:3F430025A6B8848B03FBF94CBF4355A29D7EC42E0AC454665A746D84DBBBA868)
      Stack Trace:
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Connector\SocketConnection.cs(76,0): at Neo4j.Driver.Internal.Connector.SocketConnection.Sync()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Session.cs(79,0): at Neo4j.Driver.Internal.Session.<>c__DisplayClass7_0.<Run>b__0()
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\LoggerBase.cs(54,0): at Neo4j.Driver.Internal.LoggerBase.TryExecute[T](Func`1 func)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver\Internal\Session.cs(73,0): at Neo4j.Driver.Internal.Session.Run(String statement, IDictionary`2 statementParameters)
        neo4j-dotnet-driver\Neo4j.Driver\Neo4j.Driver.IntegrationTests\ConnectionIT.cs(155,0): at Neo4j.Driver.IntegrationTests.ConnectionIT.BuffersResultsOfOneQuerySoTheyCanBeReadAfterAnotherSubsequentQueryHasBeenParsed()

If I try to fix the first failing test (System.IO.DirectoryNotFoundException) by ckecking that the file exist before trying to delete it, then all but 1 test is working. Here is the exception:
Neo4j.Driver.IntegrationTests.ConnectionIT.ShouldEstablishConnectionWhenAuthEnabled [FAIL]
      FluentAssertions.Execution.AssertionFailedException : Expected string to start with
      "The credentials you provided were valid", but
      "The client is unauthorized due to authentication failure. (ID:4E78524151A93F700683E0A3681E0A623F19EF1A2DB2D9F8B9532BFF10BB4B50)" differs near "lie" (index 5).

I tried to reintroduce my WindowsProcessBasedNeo4jInstaller just to see if that would fix the issue. But it fails with the same test failings.
WindowsProcessBasedNeo4jInstaller: https://github.com/IngvarKofoed/neo4j-dotnet-driver/blob/making-the-intergration-test-fixture-os-independed/Neo4j.Driver/Neo4j.Driver.IntegrationTests/Internals/WindowsProcessBasedNeo4jInstaller.cs
Help :)

It seems that the commit (see below) fixes all my issues :)
https://github.com/neo4j/neo4j-dotnet-driver/commit/a6694dd7c0a919d4572b848d1c4209fde248a77b

I have apparently failed to notice that the integration tests uses a nightly build of the Neo4j server and this explains why it could stop work on my VM without any changes :)

So glad you figured it out.
As you said, there are some changes in the server where they breaks the auth file location. But that is a bug and need to be fixed on server. The driver is affected but nothing should be fixed for the driver.
The reason we use snapshots/nightly build is because both the server and driver are still under construction. The link in driver's 1.0 branch will be changed once we got a stabilized server.

My fix is a temp hack. please wait for this PR https://github.com/neo4j/neo4j/pull/6829 get merged.

Close this issue thread as the PR  neo4j/neo4j#6829 get merged and the tests of this driver are back to green. Though we might re-encounter this problem again but then it would probably be another different error. So close this now and be free to re-open new ones when you have problem to run tests.


Delete errant .packages

Looks like it got in a few years ago, but .packages aren't used by the Dart tool anymore so it can be safely removed.


NES Multitap random button Presses on NES Frontloader

BlueRetro firmware version
1.9.2
BlueRetro firmware specification
HW1
BlueRetro firmware variant
Universal
BlueRetro hardware type
External adapter with detachable cord
Manufacturer
Self made 2 player dongle
System used
Nintendo Famicom NES
Bluetooth controller brand & name
Switch, 8BitDo, Xbox series controller
What is problem? (only list ONE problem per report)
Recently built my own 2 port Dongle for the NES. I've tested the Multitap feature. And found the following behavior. Once the 3rd controller is connected to BlueRetro. I've observed random button presses on Player 2.
https://github.com/darthcloud/BlueRetro/assets/52976332/aec6bfb7-6cee-4ddf-a61e-ba4063c97c50
What did you expect to happen?
I expect to get the Multitap feature working.
Attach files like logs or Bluetooth traces here
No response

Please provide schematic and BOM for me to review

I just tested this with NES Hub V2.1 (same one you have @darthcloud.
Same behaviour, 2 controller without four-score activated in the web-config work fine.
With four-score activated I experience the same inputs on controller 2. Both with only 2 controllers connected and also with 4 controllers connected.

On my AVFC I only get a few random press on P2 A button that's all using v24.04.
I actually just realized I got no way to run ROM on a NES. I don't have a FC to NES adapter (and none of the games that include one).
I might try to get a Gyromite cartridge, until then I can't really easily test.


Write your own automerge action

Something like - https://github.com/peter-evans/enable-pull-request-automerge/blob/main/src/github-helper.ts

The idea is to check if it's dependabot - set it on automerge automatically


Istanbul: Coverage ignore doesn't work for default in switch

Describe the bug
If switch...case is used and default statement is not covered by tests and /* istanbul ignore next -- @preserve */ used for ignoring the branch, it still shows up as uncovered.
I tried different combinations with double slash comment and wrapping default into a block, which produced the same result.
Reproduction
https://stackblitz.com/edit/github-rzcfqv
System Info
System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 18.20.3 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 10.2.3 - /usr/local/bin/npm
    pnpm: 8.15.6 - /usr/local/bin/pnpm
  npmPackages:
    @vitest/coverage-istanbul: ^2.0.3 => 2.0.3
    vitest: ^2.0.3 => 2.0.3

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Looks like esbuild doesn't respect comments inside switch:
https://esbuild.egoist.dev/#W1siaW5kZXgudH...:
switch (option) {
  ...
  /* This is removed -- @preserve */
  /* istanbul ignore next -- @preserve */
  default: {
    /* This is preserved -- @preserve */
    /* istanbul ignore next -- @preserve */
    return 'Not a foo, not a bar';
   }
}

Becomes:
switch (option) {
  ...
  default: {
    /* This is preserved -- @preserve */
    /* istanbul ignore next -- @preserve */
    return "Not a foo, not a bar";
  }
}

I don't think there are any work-arounds for this unfortunately.

@AriPerkkio thanks for looking into it! I'll file an issue to esbuild. Should we close this one or leave it for tracking purposes?

We can leave this as open as it's now marked as upstream issue. It's good for others who run into same issue. And maybe in future once Vite moves from esbuild to Rolldown this issue could get fixed.

I haven't use vitest's coverage tool before so maybe I'm wrong. Does vitest support sourcemaps in coverage report? At least I know c8 supports it which is working perfectly on my tiny projects (like this one).

@hyrious sure it does support. Without source maps code coverage in Vitest would be useless as most users are using code transforms.
@vitest/coverage-v8 works just fine with the reproduction as it does exclusion when comparing to the source code. Note that the issue title mentions Istanbul coverage.

Istanbul's instrumentation is done to the transpiled code, not the source codes.
https://github.com/vitest-dev/vitest/blob/073a50c9740f75ba25ec1fabba73b6dae73e66f4/packages/coverage-istanbul/src/provider.ts#L167-L171

Same situation with /* istanbul ignore else */


[D3D9] Glide Demo running through nGlide crashes after intro

Glide demo running using nGlide 2.10 with DXVK (current master) seems to work fine during introduction, but when it tries to render 3D stuff, it crashes. This does not happen with WineD3D.
For reference, here's a video of the demo: https://youtu.be/yXjkdMXjQPU
With DXVK, it crashes at around 1:01 (video timestamp).
System information

GPU: GTX 1070
Driver: 450.66
Wine version: lutris-5.7-8
DXVK version: 9433d0cb

Apitrace file(s)
The issue is not reproducible through Apitrace, but the demo is public and free (http://xona.com/labs/demos/tobecontinued/).
Here it is with nGlide dlls included:
tbc.zip
Log files

d3d9.log: tbc_d3d9.log

This got fixed already.


fix the createCatalog in CatalogMgr.java

Proposed changes
The process of createCatalog will be changed now:

First, check if catalogName exists;
If it exists, directly throw a prompt error message;
If it does not exist, proceed with the process of creating the catalog.

Previous process:

First, the catalog is directly created;
Then, catalogName is checked for existence.

Problem: This logic will result in multiple catalogs being created when the create catalog statement is executed multiple times, and it will not prompt an error message indicating that the catalog has already been created.
Outcome: The createFromStmt method will instantiate a new object, which may lead to a memory leak.

run buildall

run buildall


Confirmed Success for 2021?

I've been trying to get this to run for a few days, but I am unable to get any errors or commands to report back.
I've been over the code several times but can't find where it's being stopped.
Running: .\Get-BrowserData -Browser All -Datatype History -UserName *****
Only to get a blank readout

Yes this still works.
These are just functions within the PS script, so when you run the script you have declared functions sitting in memory waiting to run.
You can either:

Execute the function (within the script itself) by placing Get-BrowserData -Browser All -Datatype History -UserName user1 -Search 'github'  on the last line of the script...or
Execute the script once (with no output as you have seen), then execute the function with  Get-BrowserData -Browser All -Datatype History -UserName user1 -Search 'github'


Last-minute docs updates, and test on more QIIME 2 versions

I have a sneaking suspicion that the QIIME 2 2022.2 build will fail due to the click version being pinned to at least 8 -- if so, we can address this here. Wanna double-check this before release.

Codecov Report

Merging #325 (9e10850) into master (6e4f502) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #325   +/-   ##
=======================================
  Coverage   96.36%   96.36%
=======================================
  Files           3        3
  Lines         771      771
  Branches      139      139
=======================================
  Hits          743      743
  Misses         28       28

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Service ingress cannot be set

At the moment the module does not allow for the ingress settings to be configured to restrict access to the Cloud Run service.
https://cloud.google.com/run/docs/securing/ingress
I've opened PR #2 to replace the local.service_ingress value for a variable that can be configured.

Hey @andrewmackett. My apologies, I forgot to close this issue, but I pushed changes resolving the PR in commit e366e17c015ff9e023cedc2851513c20f3b928ad.


libvips / node-gyp rebuild error

npm install --verbose sharp is failing on my Centos 6 environment. I'll add a full log below. Please help.
error.txt

I've run the manual installation script for libvips as well, to no avail...

The salient part of the error is ERROR: glibc version 2.12 requires manual installation - please see http://sharp.dimens.io/en/stable/install/
As the referenced URL says, you'll need to manually install libvips on Centos 6.
My strong recommendation here would be to use Centos 7 if you're able.
I'm unable to provide support for Centos 6, so will have to close this and wish you good luck!


chore(sdk): swap out sharedpreferences

Introduces the EventPipeline, in which events are collected and persisted asynchronously (with the main thread), and batched for upload
Closes: https://topsort.atlassian.net/browse/API-797

Note: this is still flagged as draft; should we review for land?


[Discussion] Probability update in imm_ukf_pdaf node

Dear the autoware team, in the updateEachMotion function in ukf.cpp:
lambda_cv =
(1 - gate_probability * detection_probability) / pow(Vk, num_meas) +
detection_probability * pow(Vk, 1 - num_meas) * e_cv_sum / (num_meas * sqrt(2 * M_PI * s_cv_.determinant()));
Where does it come from?
In the referenced paper, the likelihood should be only e_cv_sum / sqrt(2 * M_PI * s_cv_.determinant())
I also read the original IMM paper,
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=640267,
the computation of likelihood part doesn't look like the formula shown in the code.
Thanks !

Dear corpue49, thanks for the reply !


How to control the distance between country flag and code?

                CountryCodePicker(
                          onChanged: (code) {
                            setState(() {
                              selectedCountry = code;
                            });
                          },
                          initialSelection: 'EG',
                          favorite: const ['+20', 'EG'],
                          padding: EdgeInsets.zero,

                          showCountryOnly: false,
                          showFlag: true,
                        ),

You cannot, although you can use its builder to build custom UI with desired padding and stuff.
builder sample with flag and dropdown icon:
builder: (code){
                                return SizedBox(
                                  width: 90,
                                  child: Row(
                                    mainAxisAlignment: MainAxisAlignment.center,
                                    children: [
                                      Container(
                                        width: 35,
                                        height: 35,
                                        decoration: BoxDecoration(
                                          //color: Colors.yellowAccent,
                                          image: DecorationImage(
                                            image:
                                            AssetImage(code!.flagUri!, package: 'country_code_picker'),
                                          ),
                                        ),
                                      ),
                                      const Gap(6),
                                      const Icon(Icons.arrow_drop_down_outlined)
                                    ],
                                  ),
                                );
                              }


Inventory on string metrics

(Got all integration tests green on my machine, now checking with travis...)

... need to set org.hawkular.metrics.string-size to -1 in metrics config db...

Putting a hold on any changes/PR merges to the agent until we decide what to do about this major refactoring effort going on right now (see PR #302 ). I've got over 200 files changed (many are wholesale moving of large chunks of files) and any thing going in now it going to potentially involve major conflicts. To avoid any git pain, going to wait until that major refactor is complete. Should be soon.

Ok, anyway, this change must also be coordinated with the MIQ side and other parts (hServices...) so it's not ready to be merged so fast

The agent refactor is complete and merged into master. As expected, this PR is affected. Major conflict resolution required.

@jmazzitelli can you have a look at the last commit? ( https://github.com/hawkular/hawkular-agent/pull/303/commits/6000ce76bb66376445513b63f8fc43b166fd5adc )
Following our discussion yesterday, I made some changes to avoid unnecessary updates. Had to refactor some code.

@metlos took this PR and built upon it and that is now PR #320 which supercedes this PR. This PR will be closed.

PR #325 is the one we are going to use - close this one


Add copy to clipboard button to shell blocks.

Fixes https://github.com/GoogleContainerTools/kpt/issues/1867
Adds a copy to clipboard button when hovering over shell blocks.

Demo at https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app

Looking at what the precedent is - it could be better to have a button that just has a "copy"

Looking at what the precedent is - it could be better to have a button that just has a "copy"

Updated as below

@etefera can the clipboard button be on the right, where you originally put the text?

@etefera can the clipboard button be on the right, where you originally put the copy to clipboard text?

Should we keep the shell text? If so, do we keep the icon on the left or right of it?

@etefera how does it look if you put it below shell?

Thanks for the quick turn around. Comments:

Agree that it should be on the right, example from GCP docs:
https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/03-packages/06-creating-a-package
Match the opacity of other icons.
Doesn't handle blocks with multiple commands e.g. https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/03-packages/06-creating-a-package
Doesn't handle multi-line commands e.g. last block on https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/04-using-functions/02-imperative-function-execution

@etefera how does it look if you put it below shell?

Updated to look like this

Updated to look like this

Never mind, I think it will look better either to the left or right of shell.

Thanks for the quick turn around. Comments:

Agree that it should be on the right, example from GCP docs:
https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/03-packages/06-creating-a-package
Match the opacity of other icons.
Doesn't handle blocks with multiple commands e.g. https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/03-packages/06-creating-a-package Each line that has a $ should have a copy button (alternatively, need to limited one command per block somehow).
Doesn't handle multi-line commands e.g. last block on https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/04-using-functions/02-imperative-function-execution

Updated with below

Done, moved next to language indicator.
Done.
I couldn't repro this across multiple browsers. Seemed like it was copying every line with a $ leading the block, which is expected behavior to me. If we prefer having a copy button for every line, I recommend adding "One command per code block" to the style guide but it wouldn't make sense to disallow copying multiple lines in a block here.
Done.

As for the unrelated changes, I believe adding those two points to the style guide is sufficient for them to be tracked when we add linting across the site.

https://github.com/GoogleContainerTools/kpt/pull/2192/files

Minor hiccup is HEREDOC:
https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/04-using-functions/02-imperative-function-execution?id=fn-config-flag

I would just shrink the button by 35% it's increasing the height of the text box for no good reason and the 'shell' text look small next to it.  Beyond that looks much better.

Minor hiccup is HEREDOC:
https://kpt-dev-ee2a9--copy-button-iuaxzgwx.web.app/book/04-using-functions/02-imperative-function-execution?id=fn-config-flag

I'm thinking we should probably avoid using HEREDOC and instead specify the file in its own yaml block in this case. My vote is for banning it in the style guide in favor of explicit blocks.

I would just shrink the button by 35% it's increasing the height of the text box for no good reason and the 'shell' text look small next to it. Beyond that looks much better.

Shrunk the icon


docs: Remove quotes from domain in Google Oauth

The documentation example that uses quotes around the domain in Google Oauth authentication currently doesn't work.
Using domain with quotes around domains results in "You don't seem to have access. Please contact your administrator" when logging in.
Removing the quotes results in the ability to login with the domain.
Also mentioned in this Stackoverflow: https://stackoverflow.com/a/52528091/10638329

Codecov Report

Merging #4226 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #4226   +/-   ##
=======================================
  Coverage   77.81%   77.81%
=======================================
  Files         201      201
  Lines       16348    16348
=======================================
  Hits        12721    12721
  Misses       3627     3627

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0f545d7...f0f79d3. Read the comment docs.

Good one, thanks @noqcks


Write a C# program to convert pound to kilogram

Description
Write a C# program to convert pound to kilogram
1 pound = 0.453592 kg
Input  : 1
Output : 0.453592

Contributed by - @Aranarora

How to contribute

Save the solution in ConvertPoundToKilogram.cs file
Add ConvertPoundToKilogram.cs file in program/convert-pound-to-kilogram folder

!assign

Hey @roberanegussie, this issue is already assigned to @anandfresh !!!
Please choose another issue.
Thanks for your interest in contributing to this project.


Build shards in parallel

Leverages some changes made to RandomIO, so that the parallelization is done at a lower level. This is partially the result of the discussion following #112
See Storj/RandomIO#10

I'm focusing on python3 right now, and travis fails the tests because my updated version of RandomIO is not taken into account (In particular because of the new class BatchRandomIO).
What is the proper way to fix this ?

My pull request for multi-threaded RandomIO now passes tests. How do I make this PR pass tests since it requires Storj/RandomIO#10 ?

I tested it locally on my machine and all tests passed (I installed your branch of RandomIO by building and install a wheel locally).

We will be merging the solution from @littleskunk, while it is just a functional he supplied additional tests and documentation for it.


"Sign in" window displays temporily while loading XCreds

With OIDC and AD configured, at login when xcreds loads it temporarily pops up the sign in window "Your local account password needs to be changed to match you online password.  Please authenticate now. This dissapears after a few seconds and "Credentials Status:" shows "Valid Tokens.
xCreds 4.1 (6346)

timo
9:49 PM
new build is up! PreBeta-XCreds_Build-6357_Version-4.1.pkg

Fix looks good in my testing today!


larch server appears to be broken

This happens with the current head of xraylarch on my machine:
bruce@titanium [xraylarch](master) > larch_server start
bruce@titanium [xraylarch](master) > Traceback (most recent call last):
  File "/usr/local/bin/larch", line 95, in <module>
    s.initialize_larch()
  File "/usr/local/lib/python2.7/dist-packages/larch/xmlrpc_server.py", line 128, in initialize_larch
    self.wx_evtloop = inputhook.EventLoopRunner(parent=self.wxapp)
TypeError: __init__() got an unexpected keyword argument 'parent'

I'm afraid the traceback points at a bit of code I don't understand, so I don't have a fix to suggest.
B

Yikes.   I made some changes around there.  Will investigate.
On Sep 17, 2015 2:40 PM, "Bruce Ravel"<EMAIL_ADDRESS>wrote:

This happens with the current head of xraylarch on my machine:
bruce@titanium xraylarch > larch_server start
bruce@titanium xraylarch > Traceback (most recent call last):
File "/usr/local/bin/larch", line 95, in
s.initialize_larch()
File "/usr/local/lib/python2.7/dist-packages/larch/xmlrpc_server.py", line 128, in initialize_larch
self.wx_evtloop = inputhook.EventLoopRunner(parent=self.wxapp)
TypeError: init() got an unexpected keyword argument 'parent'
I'm afraid the traceback points at a bit of code I don't understand, so I
don't have a fix to suggest.
B
—
Reply to this email directly or view it on GitHub
https://github.com/xraypy/xraylarch/issues/123.

should be fixed with 47f9228743712cb537f8bcf2fc9ebe2eefe8f42c

Works!  Thanks!

Whew!


Treat nonresponsive maccommands as errors

This PR:

Reinstates the max_mac_command_error_count from Chirpstack v3, so that the maximum MAC command error count can be adjusted to fit the deployment environment.
Changes Chirpstack's behaviour to treat a lack of responses by the device, as a MAC command error. This commit also changes the max_mac_command_error_count from 1 to 5, as frame losses can affect the error count. This commit is the core purpose of this PR.

I propose these changes to handle non-compliant devices that do not respond to some or even all MAC commands. Such non-compliant devices will result in a waste of downlink bandwidth as Chirpstack will try to command them, for all eternity. Although the ideal outcome is to have the device(s) fixed, sometimes it is not known or even inevitable because of the usecase (e.g. for the LoRaWAN operator position, whereby your tenant brought onboard bad devices). For some LoRa gateways, sending excessive downlinks is a very bad thing as they are only capable of half-duplex.
I have not tested the code yet. I provide this draft PR, so that it may be peer-reviewed. Once again, I apologize if the code quality is not up to standard, as I major in C and Java.

This PR now also adds max_adr_error_count, as the behaviour of ADR may cause the device to drop out of contact if the datarate somehow goes too high/transmission power too low. And if it does, the device is expected to start fixing this after ADR_ACK_LIMIT uplinks by setting the ADRACKReq bit. After every additional ADR_ACK_DELAY uplinks from that point, it can switch to a lower datarate.
I set max_adr_error_count to 160 because ADR_ACK_LIMIT = 64 and ADR_ACK_DELAY = 32. If we gave it 3x attempts (decrease DR by up to 3x), then we have 64 + (3*32) = 160.
Of all MAC commands that are, I think incorrectly disabling ADR is a bad thing. So having a different value for this operation would allow us to grant greater tolerance for this specific MAC command.

After thinking about it, I removed max_adr_error_count. This implementation works differently from the LNS I used to maintain, whereby the error counters are updated when uplinks are received. So if uplinks cannot be received from the device, the counter won't be advanced at all.

I added a 3rd commit to introduce a "MAC Command" LogEvent category. The purpose is to log whenever Chirpstack gives up on a MAC Command. The usecase is for identifying possibly non-compliant devices. Presently, the only way to do this is to study the messages exchanged in the LoRaWAN frames logger.
I don't know why there are so many files updated in this commit, after I attempted to update the Protobuf definitions with "make all" from chirpstack-api. Since it looks like syntax changes, perhaps it's caused by me not using Nix.

The many changes may have come from:

googleapis version that is checked out via git for the many integration libraries, is master.
protobuf-compiler being updated to the newest. Since the compiled integration libraries seem to have different code generated, it looks like the compiler version I have is different from what was last used.

So there would be changes, depending on when chirpstack-api is built. My actual change was to add 1 event, which I understand to be just a 1 line change to api/proto/integration/integration.proto. But because of the differences derived through compilation, it resulted in 62 files getting changed instead. Will this prevent the PR from getting accepted, if the patches work well in trials?

I attempted to solve the problem of excessive changes being made by the protobuf getting changed, by modifying the Makefiles to check out the exact dependency versions that were last used. There were still some changes that I couldn't trace, mainly linked to the Google API. So I excluded those changes as they were unrelated to what I am trying to change. File changes only containing whitespace changes, were also dropped. Now the PR looks much cleaner.

The code seems to be working as expected. I have a LoRa node that doesn't respond to LinkADRReq for some reason and that triggers the code to stop sending LinkADRReq.
However, I want to refactor this PR because I realize that Chirpstack's error counter works differently from expected. I now think that there should be a separate error counter for "no responses". Or perhaps we shouldn't even use an error counter for NACKs, but the command/channel should be disabled immediately upon receiving a NACK in response. After all, if the device NACK'ed the request, the result probably wouldn't change with another try? It's like what Brocaar once wrote, that he didn't think this error counter's limit needed to be configurable (from the value of 1).
Chirpstack also seems unable to skip unsupported channels with NewChannelReq. What seems to happen instead, is that the NewChannelReq MAC command is disabled if there are channels that cannot be set. So if the channels couldn't be all set within 2 attempts from encountering the first unsupported channel, there may be channels left unset. Since I changed the behaviour of the error counter and also increased its limit, this code makes more unnecessary attempts to set unsupported channels, which I felt is undesirable.
I'll think about how to consolidate the strategies for handling these two modes of failures (NACK vs no response), and update the PR again. Thanks.

Hi again. I have refactored the commit, so that MAC commands not responded to, will be tracked separately.
This PR also fixes the problem where the error counters don't get cleared if the device is reset. For example: your device last received a MAC command but had not sent a response before it gets reset. Upon re-joining the network, it will send an uplink, but the error counter values are carried over from the previous session. I'm not sure whether this happens for OTAA, but it seems to be a problem for ABP mode (where we can only reactivate the device).

Hi. I've refactored the PR's shape. The pending MAC commands are now saved into a hash set instead of individual strings, thus allowing me to get a set of pending MAC commands. In theory, anyway. I cannot test it now as compiling will take too long and I need to call it a night.
I am also now assuming that if the MAC command was marked as pending, a response was expected. Thus eliminating the fixed list of MAC commands to check. I think I was reluctant to make this assumption, which was why I didn't use it sooner.

Hi again,
I have attempted to revise the design of the PR. Now, it involves a change to the structure of pending MAC commands, changing them from strings to a hash set. Thus solving two problems in the original proposal:

Too many unnecessary operations. Instead of executing many individual operations with the existing storage/mac_command.rs methods, this will use HKEYS to get a set of MAC commands that were never responded to. To clear the list, it will DEL the hash set. This means that virtually no additional operations are added for the bookeeping of each MAC command.
Hardcoded MAC commands list. Now that a set of pending MAC commands can be obtained from Redis with HKEYS, there is no longer a need to maintain a list of MAC commands to check against.

I hope that the new design would be more agreeable with. I know that many files have been changed, but the part that matters is only  maccommand::check_nonresponsive_mac_commands().

@brocaar  since I made these PRs and also created a thread on the forums about bits of it while you were away, I'm not sure if you have heard of my motivation behind these PRs.
I have a usecase, whereby the LNS may be used by a service provider of sorts. The tenants may bring their own devices. A professional service provider should have a usage policy and a screening procedure, to prevent bad devices from being brough onboard. However, this does not always happen. So if a bad device is brought about, the existing design of Chirpstack results in:

Infinite downlink bandwidth wastage, as it will never give up if the LNS does not respond.
If the gateway is a half-duplex gateway, then uplink bandwidth is reduced.
If NewChannelReq failed, then channels may be left partially configured (so far, it still appears to end up working, but I suspect it will fail if you have more than 8 channels and at least one of the earlier ones don't get accepted).
If LinkADRReq encounters an unsupported channel, then ADR fails and the device stays on the lowest datarate, thus wasting bandwidth.
Operator not knowing about the events unfolding, as there was no way to know. Unless you spent time studying the messages exchanged and the charts on every device page. I feel that it should be handled automatically and/or an event raised about it.

For these reasons, I believe that it is necessary to introduce mechanisms to enable Chirpstack to somewhat work amicably with all devices. To avoid wasting precious bandwidth just because of one/a few devices that refused channels, ADR channel mask or even failed to respond to some MAC commands.
I see any form of unexpected behaviour, even NACKs, as errors. We should not leave the LNS in a deadended state, for it to be a good product. I also believe that this will help people who don't have a good understanding of LoRaWAN, as it will generally work better with more devices on its own.
Once again, thank you for your time.

After looking at this one more time, I realized there is one more issue. Setting a mac-command as pending is not a guarantee that it was actually sent by ChirpStack to the device.
ChirpStack will generate a list of mac-commands (and sets these as pending) that must be sent to the device. Potentially:

These are conflicting
These will exceed the max payload size

Later in the process, ChirpStack will:

Filter this list of mac-commands to filter out the conflicting mac-commands
Determine the max payload size for RX1 and / or RX2
Try to include as many mac-commands into the PHYPayload as possible (which can be less than the filtered mac-commands) for the RX1 and RX2 PHYPayload (ChirpStack will generate two different PHYPayloads as the max. payload size of RX2 is likely to be less than RX1)
Only after the gateway has ACKed the downlink, we know which mac-commands has actually been sent to the device

If there is a way to solve the issue of devices never responding to mac-commands, then I'm open to include a solution for this, but lets first discuss the design.

Hi @brocaar I see what you mean. It wasn't clear whether this specific sequence of events does happen, but you have clarified that it does. In my LNS, I did iterate through the included MAC commands (after the filtering and cutoff due to the payload size restriction), so perhaps I need to do something like that here too. I'll get back to you with a new version.

As for checking whether the downlink was issued: I assumed that the downlink would always be successfully sent, in order to avoid coupling the LNS with the gateway's behaviour. For this part, I believed that making the maximum number of attempts high enough would be a simple design which is sufficient to compensate for:

losses due to RF causes.
Gateway limitations.

Are you agreeable with this approach or do you prefer coupling it with the gateway TX acknowledgement logic?

I added an additional step to remove the pending MAC commands which aren't included in any downlink payload, in the cycle. This was implemented in downlink/data.rs. Instead of making multiple calls to Redis, it computes a set of MAC command CIDs, of MAC commands to be cleared.
I'm leaving the draft status on because I haven't tested it. I'm hoping that this will help to narrow the time lost due to the great timezone differences.


[release] Update release.json and Go modules for 6/7.43.2-rc.1

cherry-picked fix for failed kitchen_test_security_agent_amazonlinux_x64 tests

Unilaterally merging with green pipeline.


[[FEAT]] Add support for ES2019 opt. catch param

@jugglinmike I only quickly looked at the failures and noted that they are definitely coming from the tests themselves

@rwaldron Right you are. I've pushed up a correction

Coverage remained the same at 100.0% when pulling 5364f51d9a9e4b49356a71dec10e0f9cea36ffa6 on jugglinmike:es2019-optional-catch into 1295f3e8dcc20859cf0623c82ef29ee119f1e362 on jshint:v2.11.0.

Rebased fixup!
Merged into v2.11.0: https://github.com/jshint/jshint/commit/ec71bc06e8c5b0db168958423e0cf30aa01726c4


Added put method

This PR adds a put method, that is similar to the stor method, but instead of using a reader accepts a closure with a BufWriter argument. This allows the user of this crate to write data directly.
Possible improvements:

rename "stor" to "put_file" to differentiate between the two?
change the implementation of stor to basically: put(filename, |writer| copy(read, writer));
change the return type of the closure to Result<()> rather than ()

@matt2xu Can you fix the merge conflicts? It also looks like you didn't use your regular email from this change?

Hi @mattnenterprise, I see that this PR is still open! I could rebase it so you could merge it. Let's perhaps find a different name to mean "put a file whose contents are generated by a closure". Since this crate is now post-1.0, if we rename "put" to "put_file" this is a breaking change requiring a change in major version, so it would be best to find a new name instead. What about "put_stream"?


Release v0.23.19-RC3

Yes, another RC 😅 this one is just for us, no CE / FS2 bumps.
Our hands are tied with the RC, but arguably this makes sense anyway for the changes in https://github.com/http4s/http4s/pull/6980 and https://github.com/http4s/http4s/pull/7008.
Also, we are overdue for a merge into main I think ...

🤦🏻 sorry for putting the cart before the horse by opening #7025

@danicheg it wasn't a problem at all, I appreciated it! There's a few more commits on series/0.23 now that can be added I think :)

yeah, I'm in process already


Fix build and compile shared project for netcore

I’m trying to compile the project with netcore. I’ve managed to do it for the Shared project but I’m having problems with FSharp.Data.GraphQL.Client, mainly because of the type provider starter pack. I’m trying to modify it to make it compilable with netcore but I’m not sure yet if it’s worth the effort or not.

This PR can already be merged. It doesn't fulfil its original purpose (compiling all projects for netcore) but it lays the foundation for that so we can try again when the Hopac dependency is removed from the project and when we get an answer about type providers with netcore here.
Besides that, this PR fixes build in Travis (and delays doc generation in AppVeyor until we fix it) by adding FSharp.Core to the projects as a Nuget package as recommended in this SO question.


Gh 20 add pr template

Added a PR template which covers the basic requirements of a pr

Thanks @joerygrolleman !


Create inference.py

a simple inference script for single audio, heavily base on demo.py and traintest.py

Thanks Jeff,
I think it is a great contribution. As I said in the issue, I suggest using audioset_pretrain=True to use the pretrained model rather than manually load_state_dict. But I can understand you want to offer flexibility on which model to load and it should be fine if your task's input length is also 1024.
-Yuan


Load PDOs on begin, even if no newPDO flag

This way if the device is reset (such as after programming) it can still see the available power profiles.
(You'll want to update the relevant "important note" section of the readme for the PicoPD too once this is merged in).

@Patronics  Thank you for looking into this!


Error writing files: failed to resolve mod on missing semicolon

Describe the bug
rustfmt returns
Error writing files: failed to resolve mod `error`: cannot parse <project dir>/src/error.rs

To Reproduce
src/main.rs:
mod error;

fn main() {}

src/error.rs:
pub struct S // missing semicolon

Meta

rustfmt version: rustfmt 1.4.21-nightly (01f2eadc 2020-09-04)
From where did you install rustfmt?: rustup
How do you run rustfmt: cargo fmt

Could you elaborate on what exactly you think the bug is here? The absence of the ^ expected where, {, (, or ; after struct name error details or something else?
pub struct S is invalid syntax, so an unrecoverable error encountered by the rustc parser is expected.

Oh sorry then. Yeah, I expected a message cargo build returns, I didn't know that's how it's supposed to work.

No worries, thanks for clarifying. I'll double checking our parsing/rustc parser code later on, it's entirely possible we're intercepting an error that we need to emit ourselves, but aren't.